Rails - 如何使用nexmo api通过短信发送确认码

时间:2014-06-15 02:50:31

标签: ruby-on-rails nexmo

我们正在创建一个用于实现Nexmo API的Rails应用程序。在注册过程中,我们需要使用Nexmo API从服务器端通过SMS向用户发送确认代码。 但我们对此并不了解。我们只想为印度实现此功能。

我使用了https://github.com/dotpromo/nexmos gem,我的代码是:

# Gemfile
gem 'nexmos'


#sms_controller.rb:

class SmsController < ApplicationController
  def new
    @sms = Sms.new
  end
  def createclient = ::Nexmos::Message.new('#', '#')
    res = client.send_text(from: '+910000000000', to: '+910000000000', text: 'Hello world!') 
    if res.success?
      puts "ok"
    else
      puts "fail"
    end
  end 
end

我已将“密码”和“秘密”的凭据用于“#”,并替换为我的电话号码。但它不起作用。即使没有将SMS发送到其他号码,也正在执行成功块。

有人可以指导我们实施吗?

1 个答案:

答案 0 :(得分:0)

好吧,您似乎想要使用Ruby library built for Nexmo.

基本上你要做的就是这个示例代码:

nexmo = Nexmo::Client.new('...API KEY...', '...API SECRET...')

response = nexmo.send_message({
  from: 'RUBY',
  to: '...NUMBER...',
  text: 'Hello world'
})

if response.success?
  puts "Sent message: #{response.message_id}"
elsif response.failure?
  raise response.error
end

..在你的控制器中的一个动作内。让我们说它是您的TextsController,并将其置于创建操作之下。所以在你的config/routes.rb中,输入类似的内容:

match "/sendtext" => "texts#create"

然后,您只需点击mydomain.com/sendtext即可触发命令。

通过varatis