如何在 Rails 中通过 Twilio 发送短信?



我正在尝试创建一个简单的rails应用程序,用户可以在其中通过Twilio向我发送短信。用户只需要在主页上填写他的姓名、电子邮件、一些文本的表格并提交即可。我需要创建一个函数,从参数中获取这 3 条信息,创建一条短信并将其发送到我的电话号码,但我不知道该怎么做。

这些是我试图为此创建的表单和路线:

视图: app/views/home/index.html.erb

<div>
<%= form_for @phone, url: 'home/send_text' do |f| %>
<%= f.label :name %>
<%= f.text_field :name %>
<%= f.label :email %>
<%= f.text_field :email %>
<%= f.label :message %>
<%= f.text_field :message %>
<%= f.submit 'Submit', class: "btn btn-primary" %>
<% end %>
</div>

路线:

Rails.application.routes.draw do
root 'home#index'
post 'home/send_text'
end

只需按照以下步骤操作:-

步骤 1:创建和配置 Twilio 帐户

第 2 步:要集成 Twilio on Rails,您必须将 twilio-ruby gem 添加到您的 Gemfile 中。

gem ‘twilio-ruby’

步骤3:捆绑安装后,您必须使用以下代码

config/initializers/twilio.rb

require 'rubygems' 
require 'twilio-ruby'
module TwilioSms
def self.send_text(phone, content) 
# phone :- phone number to which you want to send sms 
# content :- Message text which you want to send
twilio_sid = "*****" # paste twilio sid
twilio_token = "*****" # paste twilio token
twilio_phone_number = "+1******" # paste twilio number
begin
@twilio_client = Twilio::REST::Client.new twilio_sid, twilio_token
@twilio_client.api.account.messages.create(
:from => twilio_phone_number,
:to => phone, 
:body=> content
)
rescue Twilio::REST::TwilioError => e
return e.message
end
return "send"
end
end

第 4 步: 从要调用控制器或模型的位置调用此方法。

TwilioSms.send_text("+91*******", "Hello") 

就是这样... :)

最新更新