class BotMob::OutboundMessage
Strucutred data for all messages leaving your bot
Attributes
body[R]
inbound[R]
network[R]
Public Class Methods
new(**options)
click to toggle source
# File lib/bot_mob/outbound_message.rb, line 8 def initialize(**options) @network ||= options[:network] @inbound = options[:inbound] @body = options[:body] end
prepare(message, options = {})
click to toggle source
# File lib/bot_mob/outbound_message.rb, line 14 def self.prepare(message, options = {}) return message if message.is_a?(BotMob::OutboundMessage) target_network = options[:inbound].network message_delegate(target_network).new(options.merge(body: message)) end
Private Class Methods
message_delegate(network)
click to toggle source
# File lib/bot_mob/outbound_message.rb, line 24 def message_delegate(network) delegate = BotMob::Networks.const_get(network.to_s.camelize) delegate.const_get('OutboundMessage') rescue NameError raise BotMob::InvalidNetworkError end