1

twilioとrailsを学習するための通話追跡アプリを作成しようとしています。今、私は電話番号を購入する機能を追加しています。

createアクションでif/elseステートメントを実行したいのですが、電話番号がデータベースに保存されていて、twilio番号が実際に購入された場合は、これを実行します。それ以外の場合は実行します。

ただし、twilio番号はtrueまたはfalseを返しません。これが彼らのドキュメントで彼らが言っていることです:

HTTPPOST

アカウントの新しい電話番号を購入します。リクエストの電話番号が見つかった場合、Twilioはそれをアカウントに追加し、電話番号の最初の月の費用を請求します。Twilioがリクエストに一致する電話番号を見つけられない場合、Twilioエラーコード21452のHTTP400を受け取ります。

したがって、私がやりたいのは、ifステートメントを作成することです。ここで、戻り値がHTTP 400の場合、xを実行します。

これが私が現在持っているコードです

  #This saves the Twilio number to the database, and buys it. 
  def create
    @user = current_user
    @phone = @user.phones.build(params[:phone])
    client = Twilio::REST::Client.new(@user.twilio_account_sid, @user.twilio_auth_token)
    number = client.account.incoming_phone_numbers.create({:phone_number => @phone.twilio_number, :voice_url => VOICE_URL, :voice_method => "POST"})
   if @phone.save && number.true
      flash[:success] = "Phone Number Created!"
      redirect_to user_path
    else
      render new_phone_path
      flash[:error] = "It looks like there were errors with the submission"
    end
  end

HTTP 400エラーを参照するには、&& number.trueを何で変更する必要がありますか?

これが可能かどうかはわかりません-ですから、アイデアがあれば、私はすべての耳です:)。

4

1 に答える 1

0

それから 3 年が経ちましたが、Rails で完全な機能を備えた Call Tracking チュートリアルを公開したことをお伝えしたいと思います。

https://www.twilio.com/docs/tutorials/walkthrough/call-tracking/ruby/rails

アプリケーションには、次の 3 つの主な機能があります。

  • Twilio から電話番号を購入して、さまざまなマーケティング キャンペーン (ビルボードやバスの広告など) で使用します。
  • これらの電話番号への着信を営業担当者に転送します
  • 電話番号と受信した通話に関するデータを示すグラフが表示されます

また、作業を開始する前に、 Ruby ヘルパー ライブラリを確実に取得する必要があります。

于 2016-08-09T20:46:00.207 に答える