Class: Whatsapp::Messages::Template
- Defined in:
- lib/ruby/whatsapp/messages/template.rb,
lib/ruby/whatsapp/messages/template/language.rb,
lib/ruby/whatsapp/messages/template/component.rb,
lib/ruby/whatsapp/messages/template/parameter.rb
Overview
Template messages allow you to send marketing, utility, and authentication templates to WhatsApp users. Source: https://developers.facebook.com/documentation/business-messaging/whatsapp/messages/template-messages
Defined Under Namespace
Modules: Defaults Classes: Component, Language, Parameter
Instance Attribute Summary collapse
Attributes inherited from Base
Instance Method Summary collapse
-
#initialize(name:, language:, components: []) ⇒ Template
constructor
A new instance of Template.
-
#serialize ⇒ Hash
Serializes the template message to a hash format suitable for the WhatsApp API.
Constructor Details
#initialize(name:, language:, components: []) ⇒ Template
Returns a new instance of Template.
32 33 34 35 36 37 38 39 40 |
# File 'lib/ruby/whatsapp/messages/template.rb', line 32 def initialize(name:, language:, components: [], **) super(**) @name = name @language = language.is_a?(Language) ? language : Language.new(**language) @components = components.map { |comp| comp.is_a?(Component) ? comp : Component.new(**comp) } validate! end |
Instance Attribute Details
#components ⇒ Array<Component>
22 23 24 |
# File 'lib/ruby/whatsapp/messages/template.rb', line 22 def components @components end |
#language ⇒ Language
18 19 20 |
# File 'lib/ruby/whatsapp/messages/template.rb', line 18 def language @language end |
#name ⇒ String
14 15 16 |
# File 'lib/ruby/whatsapp/messages/template.rb', line 14 def name @name end |