Guest User

Untitled

a guest
May 25th, 2018
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. class MessagesController < ApplicationController
  2.  
  3. require 'twiliolib'
  4. require 'rexml/document'
  5. include REXML
  6.  
  7. # Twilio REST API version
  8. API_VERSION = '2008-08-01'
  9.  
  10. # Twilio AccountSid and AuthToken
  11. ACCOUNT_SID = 'ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  12. ACCOUNT_TOKEN = 'xxxxxxxxxxxxxxxxxxxxxxxxxx'
  13.  
  14. def create
  15. @message = Message.new(params[:message])
  16.  
  17. # Create a Twilio REST account object using your Twilio account ID and token
  18. account = Twilio::RestAccount.new(ACCOUNT_SID, ACCOUNT_TOKEN)
  19.  
  20. d = { 'From' => @message.From, 'To' => @message.To, 'Body' => @message.Body }
  21.  
  22. resp = account.request("/#{API_VERSION}/Accounts/#{ACCOUNT_SID}/SMS/Messages", 'POST', d)
  23. resp.error! unless resp.kind_of? Net::HTTPSuccess
  24.  
  25. h = Document.new resp.body
  26.  
  27. s = XPath.first(h, "//Sid")
  28.  
  29. sid = s.text
  30.  
  31. @message.SmsMessageSid = sid
  32.  
  33. respond_to do |format|
  34. if @message.save
  35. flash[:notice] = 'Message was successfully created.'
  36. format.html { redirect_to(@message) }
  37. format.xml { render :xml => @message, :status => :created, :location => @message }
  38. else
  39. format.html { render :action => "new" }
  40. format.xml { render :xml => @message.errors, :status => :unprocessable_entity }
  41. end
  42. end
  43. end
Add Comment
Please, Sign In to add comment