Twilio を介した SMS サービスと音声サービス

Twilio を使用すると、音声、VoIP、メッセージをアプリケーションに埋め込むことができます。Twilio プラットフォームは、Twilio マークアップ言語(TwiML)RESTful API、VoIP SDK(ウェブブラウザ、Android、iOS 用)で構成されています。ヘルパー ライブラリは複数の言語で利用可能です。

TwiML は、通話着信時または SMS 受信時に何をすべきかを Twilio に通知します。他者から自分のいずれかの Twilio 番号に着信があったり SMS が送信されてきたりすると、Twilio はその電話番号に関連付けられている URL を検索し、リクエストを行い、検出された URL の TwiML 指示を読み取って、通話の記録や SMS の送信など、行うべき処理を決定します。

Twilio REST API を使用して、自分のアカウント、電話番号、通話、テキスト メッセージ、レコーディングに関するメタデータをクエリできます。通話の発信やテキスト メッセージの送信もできます。

料金

詳細については、Twilio 料金をご覧ください。

始める前に

    Google Cloud Platform プロジェクトを選択または作成します。

    [リソースの管理] ページに移動

設定

この例を作成するには、標準の Google App Engine Python ランタイム環境を使用します。Google App Engine 用に最初に Python を作成する場合は、Python Hello World チュートリアルに従います。

「Hello, World!」アプリケーションの作業が完了したら、Twilio の Python ライブラリを追加する必要があります。このプロセスでは、パッケージ管理ツールと最新バージョンの Twilio Python モジュールをインストールし、ライブラリに対するシンボリック リンクとその依存関係を Google App Engine アプリケーションに作成します。

  1. アプリケーションが保存されているディレクトリに移動します。これは、チュートリアルに従って作成した helloworld ディレクトリです。

    cd helloworld
    
  2. setuptools をインストールします。

  3. setuptools を使用して pip をインストールします。

    sudo easy_install pip
    
  4. Twilio の Python ライブラリと依存関係をインストールします。

    pip install twilio
    
  5. site-packages ディレクトリを探します。このディレクトリは、pip が Twilio ヘルパー ライブラリをインストールした場所です。

    python -c "import site; print(site.getsitepackages()[0])"
    
  6. アプリケーション ディレクトリ内で Twilio Python モジュールに対するシンボリック リンクを作成します。{SITE_PACKAGES} を前のコマンドの値に置き換えます。

    ln -s {SITE_PACKAGES}/twilio .
    
  7. アプリケーション ディレクトリ内で Twilio Python モジュールの依存関係に対するシンボリック リンクを作成します。

    ln -s {SITE_PACKAGES}/httplib2 .
    ln -s {SITE_PACKAGES}/six.py .
    

これで、Google App Engine プロジェクトに Twilio ライブラリがインストールされました。

通話着信の受信

Twilio を使用するアプリケーションを初めて作成するには、以下の手順で行います。

次に「Hello Monkey」という最初のアプリケーションを作成してみましょう。

設定の手順を完了したら、helloworld.pyこのように変更します。

helloworld.py を更新したら、App Engine にプロジェクトをデプロイする手順に従います。

App Engine にプロジェクトをデプロイすると、HTTP POST リクエストを http://<your app>.appspot.com/twiml に送信できます。これにより、次のテキストが返されます。

<?xml version="1.0" encoding="UTF-8"?>
  <Response>
  <Say>Hello Monkey!</Say>
</Response>

次に http://<your app>.appspot.com/twiml URL をコピーして、Twilio アカウントの [Numbers] ページの [Voice] URL ボックスに貼り付けます。

自分の Twilio 番号を入力して発信します。応答で「Hello Monkey!」という音声が聞こえます。発信すると、Twilio があなたの URL をフェッチして、上記の XML 指示を行い、指示がなくなったら通話を切断します。

SMS の送信

twilio-python ヘルパー ライブラリでは、Twilio を使用して SMS を簡単に送信できます。

Twilio を使用して SMS メッセージを送信するには、次のようにします。

  1. helloworld.py ファイルを変更し、「アカウント SID」と「認証トークン」()を入力します。これらの値は Twilio アカウントから取得できます。

  2. from_ パラメータと to パラメータを実際の電話番号を使用するように変更します。from_ 番号は、アカウントで有効な Twilio 電話番号である必要があります。この例では、上記の例で呼び出した電話番号を使用します。to の番号は携帯電話番号などの任意の発信番号にできます。

  3. 更新したコードをデプロイし、アプリ用の次のリクエストパスを読み込んで SMS メッセージをトリガーします。

    http://<your app>.appspot.com/send_sms
    

次のステップ

いくつかの基本事項を学習しました。セキュアでスケーラブルなアプリケーションを構築するためのその他の大切な点やおすすめの方法をさらに学習してください。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Python 2 の App Engine スタンダード環境