Class: Mock::Twilio::Webhooks::Messages
- Defined in:
- lib/mock/twilio/webhooks/messages.rb
Constant Summary
Constants inherited from Base
Class Method Summary collapse
Methods inherited from Base
auth_twilio, build_signature_for_request, headers, twilio_client, webhook_client
Class Method Details
.trigger(sid, callback_url) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/mock/twilio/webhooks/messages.rb', line 7 def self.trigger(sid, callback_url) # Wait simulation from twilio sleep DELAY.sample if callback_url request_url = callback_url url = callback_url.split(Mock::Twilio.host).last elsif Mock::Twilio. request_url = Mock::Twilio. url = Mock::Twilio..split(Mock::Twilio.host).last else raise "There is not webhook_message_status_url or status_callback" end data = { :MessageSid=>sid, :MessageStatus=>"delivered" } signature = build_signature_for_request(request_url, data) response = webhook_client.request(Mock::Twilio.host, Mock::Twilio.port, 'POST', url, nil, data, headers.merge!({ 'X-Twilio-Signature': signature }), auth_twilio, nil) case response.status when 200..204 response when 400..600 raise Webhooks::RestError, Mock::Twilio::ErrorHandler.new(response).raise end end |