メニュー

Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

Twilio Connect .Netクイックスタート

概要

Twilio Connect は、開発者が Twilio アカウントの所有者に代わって電話をかける、テキスト メッセージを送信する、電話番号を購入する、アクセス ログを閲覧する、その他の API 機能を実行する際に、許可を得るための簡単な方法です。

例として、自分のウェブ アプリケーションの利用者の Twilio アカウントにアクセスして利用状況を解析し、結果を利用者に提供したい場合があります。 このクイックスタートでは、最初の Twilio ConnectApp の作成を通して、このような課題を解決します。ウェブ サイトには「Connect」ボタンを配置し、利用者が Twilio アカウントのデータにアクセスされることを許可できるようにして、利用者のアカウントに対して API リクエストを発行します。

最初の Twilio ConnectApp を作成する

早速、最初の ConnectApp を作成してみましょう。 自分の Twilio アカウント ダッシュボードにログインして「Apps」を選択し、「Create ConnectApp」ボタンをクリックします。 上部のセクションにアプリケーション名と会社情報を入力します。

次に、Connect アプリケーションに Authorize URL を割り当てます。 Authorize URL は、利用者が Twilio アカウントにアクセスされることを許可した後、Twilio が利用者をリダイレクトする URL です。 Authorize URL の使用方法については、このクイックスタートの後半で説明します。

最後に、利用者のアカウントで ConnectApp に必要とされるアクセス権を選択します。 この例では、解析のために通話ログにアクセスするだけですので、「Read all account data」を選択します。

サンプル ConnectApp は次のようになります。

Rossum Twilio Connect App

「Save Changes」をクリックすれば完了です!

ウェブ サイトに Connect ボタンを配置する

Twilio Connect

利用者は Connect ボタンから Twilio アカウントへの ConnectApp のアクセスを許可するプロセスを開始します。 ウェブ サイトにこのボタンを配置するのに必要なコードは、Twilio Connect ボタン HTML ジェネレーターで簡単に作成できるようになっています。

アプリケーションを保存すると、ポップアップに HTML コードが表示されます。 この生成されたコードをコピーし、自分のウェブサイトの HTML の、ボタンを表示したい場所にペーストします。 この HTML を再度生成したい場合は、ConnectApp 詳細ページの下部までスクロールし、「Generate Connect Button HTML」をクリックします。

許可フローをテストする

ウェブ サイトに Twilio Connect ボタンを設置したら、HTML を挿入したページをブラウズし、Connect ボタンをクリックしてみます。 許可画面に表示される情報が正しいことを確認してください。

アプリケーションの許可プロセスを完了したら、ConnectApp 作成時に指定した Authorized URL へリダイレクトされます。 この URL には AccountSid URL パラメーターが追加されています。値は次のようになります。

http://www.example.com/twilio/authorize?AccountSid=AC12345
   Your Connect App's Authorize URL       Customer's SID

アプリケーションは URL から AccountSid の値を取り出し、アプリケーション内で利用者のアカウントと関連付けます。 AccountSid を取り出した後は、AccountSid を持ち回らないよう、利用者をアプリケーション内の別のページにリダイレクトすることを推奨します。 たとえば、AccountSid の値にアクセスして別の場所へリダイレクトするために必要なコードは、次のようになります。

authorize-callback.cshtml
@{
    string accountSid = Request["AccountSid"];
    // store accountSid value in database 
    // associated with a user in your application
    // redirect back to my app when done
    Response.Redirect("http://www.example.com/myapp", true);
}

許可されたリクエストを発行する

利用者の AccountSid を入手したら、Twilio REST API を使ってこれらのアカウントのデータをリクエストします。 利用者のアカウントからデータを取得するためのリクエストは、自分のアカウントに発行するリクエストとほぼ同じですが、主な違いが 1 つあります。 認証は自分の AccountSid と AuthToken の代わりに、許可プロセスで取得した AccountSid を使って行い、AuthToken は自分のアカウントのトークンを使います。

次のコードは、Twilio Helper ライブラリを使って通話ログを取得するシンプルなリクエストです。 4 行目で自分の AccountSid ではなく、利用者の AccountSid を指定していることに注意してください。

authorized-request.cshtml
@Twilio;
@{
    string sid = "ACXXXXXX"; // The customer's AccountSid
    string token = "YYYYYY"; // Your account's AuthToken

    // create a new instance of the Twilio REST client
    var client = new TwilioRestClient(sid, token);

    // Get Recent Calls
    var calls = client.ListCalls();

    // Check for errors
    if (calls.RestException != null) 
    {
        Response.Write(string.Format("Error: {0}", calls.RestException.Message));
        Response.End();
    }    
}
<h1>Call Log</h1>
@foreach (var call in calls.Calls) {
    <p>Call from @call.From to @call.To at @call.StartTime of length @call.Duration</p>
}

完成です! 次に何をしますか?

利用者の代わりに通話ログを取得することは、Twilio Connect で実現できることの最初の一歩です。 Connect のその他の機能をアプリケーションに統合する方法について、詳しくは Connect のドキュメントベスト プラクティスを参照してください。

Rate this page:

ヘルプが必要ですか?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd browsing the Twilio tag on Stack Overflow.