2016-12-06 8 views
1

レールに動作していない Twilio SMSは、私が指示に従ってきた4

https://www.twilio.com/blog/2016/04/receive-and-reply-to-sms-in-rails.html

は試してみて、レール4.0にSMSを送信します。もしmyAppName /設定/ secrets.ymlで

class MessagesController < ApplicationController 
    skip_before_filter :verify_authenticity_token 
    # skip_before_filter :authenticate_user!, :only => "reply" 

    def reply 
    message_body = params["Body"] 
    from_number = params["From"] 
    boot_twilio 
    sms = @client.messages.create(
     from: Rails.application.secrets.twilio_number, 
     to: from_number, 
     body: "Hello there, thanks for texting me. Your number is #{from_number}." 
    ) 
    end 

    private 

    def boot_twilio 
    account_sid = Rails.application.secrets.twilio_sid 
    auth_token = Rails.application.secrets.twilio_token 
    @client = Twilio::REST::Client.new account_sid, auth_token 
    end 
end 

を次のように簡単なRailsのコントローラと試用アカウントを持っている私は、私はSIDとトークンを定義しています。このチュートリアルでは、ngrokを使用してアプリケーションを世界に公開しています。 URLをngrokからTwilioのconfigurationに入力しました。 ngrokがブラウザのURLにコピーしたURLを確認しました。私がすると、ホームページで私のレールアプリを開きます。

問題は、TwilioがSMSを自分のレールアプリにルーティングしないということです。回答アクションでSMSに応答するのではなく、Twilioの試用アカウントから送信されました - こんにちはTwilioからのHello! "これは私が私のRailsアプリを書く前に私が得たTwilioの応答です。私は、ルーティングテーブルにここ

答えて

1

Twilioの開発者エバンジェリストを

reply_messages POST /messages/reply(.:format) messages#reply 

を持って、言及する必要があります。

問題は、Twilioコンソールでngrok URLを入力した場所です。フェイルオーバーURLのボックスに実際に入力しました。もう一度見てみると、メッセージが入ったときに、「SMS Getting Started TwiML」というTwiML Binが使用されていることがわかります。これはあなたのチュートリアルレスポンスをまだ受けている理由です。

"TwiML"から "Webhook"へのドロップダウンを変更し、表示される入力にURLを入力する必要があります。

REST APIを使用して着信メッセージに応答していますが、代わりにTwiMLを使用している可能性があります。あなたの行動を次のように更新してください:

def reply 
    from_number = params["From"] 

    resp = Twilio::TwiML::Response.new do |r| 
     r.Message "Hello there, thanks for texting me. Your number is #{from_number}." 
    end 

    render xml: resp.to_xml 
    end 

助けがあれば教えてください。

+0

問題が解決しました。これは、回答にも対処するより良い方法です。ありがとう。 – RamJet

+0

甘い!あなたはこの質問を見て他の人がそれも働いて見ることができるように答えを正しいとマークしてもよろしいですか?ありがとう! – philnash

関連する問題