1

アプリケーションを作成していますが、機能の 1 つが Twilio と統合されています。

Asp.Net Mvc 3 ですべての IVR フローを完了しましたが、これまでのところすべてが正しく機能しています。ただし、機能の 1 つは、ユーザーが電話番号を入力し、Twilio がその番号に電話をかけ、他のユーザーが応答すると何かを再生することです。

Twilio REST API を使用して呼び出しを行っていますが、呼び出しが行われておらず、アプリケーションまたは Twilio にエラーはありません。

私がやっていることはこれです:私はtwilioからデータを受け取るアクションを持っています


public ActionResult Dial(Call request, int opt)
{

    var twilio = new TwilioRestClient(Configuration.TwilioAccKey, Configuration.TwilioAuthKey);
    twilio.InitiateOutboundCall(Configuration.TwilioPhoneNumber, 
                                "+" + request.Digits,
                                string.Format("{0}/Calls/Endorsement/Play?opt={1}", Configuration.BaseUrl, opt));

    var response = new TwilioResponse();
    response.Redirect("/Calls/Endorsement/Play?opt=" + opt, "GET");
    return TwiML(response);
}

REST 呼び出しが実行され、アウトバウンド呼び出しがエラーをスローしない後の応答。私は何を間違っていますか?

ありがとう!

4

2 に答える 2

1

アウトバウンド コールを開始するコードは正しいようです。

REST API から例外が返されている可能性があります。InitiateOutboundCall メソッドのコールバック パラメータを使用して RestException プロパティが null でないかどうかを確認するようにコードを変更しました。

var twilio = new TwilioRestClient(Configuration.TwilioAccKey,
                                  Configuration.TwilioAuthKey);
twilio.InitiateOutboundCall(Configuration.TwilioPhoneNumber,
                        "+" + request.Digits,
                        string.Format("{0}/Calls/Endorsement/Play?opt={1}", Configuration.BaseUrl, opt),
                        call =>
                        {
                            if (call.RestException != null)
                            {
                                //handle the rest error
                            }
                        }
                    );

RestException が null で、Twilio デバッガー ログに何も記録されていない場合は、Fiddler を分割して、API への実際の要求中に何が起こっているかを確認するのが最善の方法かもしれません。

于 2012-03-02T18:37:33.920 に答える
0

同様の問題があり、他の誰かが私のようにこの問題を見つけた場合に備えて、ここに投稿したいと思います。(現時点では、これは「InitiateOutboundCall」の検索で表示される唯一のものです。)

私の場合、アプリでも Twilio でも例外はスローされませんでした。InitiateOutboundCall への呼び出しは、単に何もしていませんでした。

ドキュメントは、URL が絶対でなければならないことを明確にしており、「http://」を省略しました。これを追加した後、すべてが期待どおりに機能しました。

于 2012-10-08T13:09:21.720 に答える