Class: Whatsapp::Webhook::Error

Inherits:
Object
  • Object
show all
Defined in:
lib/ruby/whatsapp/webhook/error.rb

Overview

An error entry, present on message/status payloads that couldn't be fully processed (e.g. an unsupported message type, or a failed delivery).

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(code:, title:, message:, details: nil) ⇒ Error

Returns a new instance of Error.



24
25
26
27
28
29
# File 'lib/ruby/whatsapp/webhook/error.rb', line 24

def initialize(code:, title:, message:, details: nil)
  @code = code
  @title = title
  @message = message
  @details = details
end

Instance Attribute Details

#codeInteger?

Returns:

  • (Integer, nil)


10
11
12
# File 'lib/ruby/whatsapp/webhook/error.rb', line 10

def code
  @code
end

#detailsString?

Returns:

  • (String, nil)


22
23
24
# File 'lib/ruby/whatsapp/webhook/error.rb', line 22

def details
  @details
end

#messageString?

Returns:

  • (String, nil)


18
19
20
# File 'lib/ruby/whatsapp/webhook/error.rb', line 18

def message
  @message
end

#titleString?

Returns:

  • (String, nil)


14
15
16
# File 'lib/ruby/whatsapp/webhook/error.rb', line 14

def title
  @title
end

Class Method Details

.deserialize(data) ⇒ Error

Parameters:

  • data (Hash)

    A raw errors[] entry.

Returns:



34
35
36
37
38
39
40
41
42
43
# File 'lib/ruby/whatsapp/webhook/error.rb', line 34

def deserialize(data)
  data ||= {}

  new(
    code: data["code"],
    title: data["title"],
    message: data["message"],
    details: data.dig("error_data", "details")
  )
end