Class: Signalwire::Relay::Messaging::Instance
- Inherits:
-
Object
- Object
- Signalwire::Relay::Messaging::Instance
- Extended by:
- Forwardable
- Defined in:
- lib/signalwire/relay/messaging.rb
Instance Method Summary collapse
-
#initialize(client) ⇒ Instance
constructor
A new instance of Instance.
- #object_send ⇒ Object
- #send(from:, to:, context:, body: nil, media: nil, tags: nil, region: nil) ⇒ Object
- #setup_events ⇒ Object
Methods included from Logger
Constructor Details
#initialize(client) ⇒ Instance
Returns a new instance of Instance.
17 18 19 20 |
# File 'lib/signalwire/relay/messaging.rb', line 17 def initialize(client) @client = client setup_events end |
Instance Method Details
#object_send ⇒ Object
13 |
# File 'lib/signalwire/relay/messaging.rb', line 13 alias_method :object_send, :send |
#send(from:, to:, context:, body: nil, media: nil, tags: nil, region: nil) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/signalwire/relay/messaging.rb', line 22 def send(from:, to:, context:, body: nil, media: nil, tags: nil, region: nil) params = { from_number: from, to_number: to, context: context } params[:body] = body if body params[:media] = media if media params[:tags] = if params[:region] = region if region messaging_send = { protocol: protocol, method: 'messaging.send', params: params } response = nil relay_execute messaging_send do |event| response = Signalwire::Relay::Messaging::SendResult.new(event) end response end |
#setup_events ⇒ Object
47 48 49 50 51 52 53 54 55 |
# File 'lib/signalwire/relay/messaging.rb', line 47 def setup_events @client.on :event, event_type: 'messaging.receive' do |event| broadcast :message_received, Signalwire::Relay::Messaging::Message.new(event.payload) end @client.on :event, event_type: 'messaging.state' do |event| broadcast :message_state_change, Signalwire::Relay::Messaging::Message.new(event.payload) end end |