Send Messages with Twilio
Made by Twilio
指定された Cloud Firestore コレクションに書き込まれたドキュメントのコンテンツに基づいて、Twilio API を使用してメッセージを送信します。
この拡張機能の動作
この拡張機能を使用すると、指定の Cloud Firestore コレクションに追加されたドキュメントからの情報に基づいて、Twilio Programmable Messaging API を使用してメッセージ(SMS または WhatsApp)を送信できます。この拡張機能は、各メッセージの配信ステータスも記録します。
ドキュメントを追加すると、この拡張機能が呼び出され、ドキュメントのフィールドに基づいて作成されたメッセージが送信されます。ドキュメントのフィールドに基づいてメッセージの送信先とメッセージの本文が指定されます。必要に応じて、メッセージの送信元の番号を定義できます。
この拡張機能を呼び出すドキュメントの例を以下に示します。
admin.firestore().collection('messages').add({ to: '+15551234567', body: 'Hello from Firebase!' });
必須フィールド
フィールド | 説明 |
---|---|
to |
メッセージの送信先の電話番号または WhatsApp 番号。 電話番号は e.164 形式にする必要があります。 |
body |
メッセージの本文 |
省略可能なフィールド
フィールド | 説明 |
---|---|
from |
Twilio の電話番号またはメッセージの送信に使用する メッセージ サービス拡張機能設定で設定された送信元番号またはメッセージ サービスよりも優先されます。 |
追加の設定
この拡張機能をインストールする前に、次の点を確認してください。
- Firebase プロジェクトで Cloud Firestore データベースを設定していること
- Twilio アカウントを登録していること
SMS の送信
- SMS メッセージを送信できる Twilio の電話番号が必要になります
- トライアル アカウントを使用している場合は、Twilio で検証した番号にのみメッセージを送信できます
WhatsApp メッセージの送信
- Twilio Sandbox for WhatsApp で指定された番号を使用してテストできます
- 本番環境で WhatsApp メッセージを送信するには、Twilio の電話番号を WhatsApp ビジネス プロフィールに結び付ける必要があります
料金
拡張機能をインストールするには、プロジェクトを Blaze(従量課金制)プランに含める必要があります。
- この拡張機能に必要な Firebase リソースに対しては、使用しない場合でも、小額(通常は約 $0.01/月)が請求されます。
- この拡張機能は、次のような他の Firebase サービスや Google Cloud Platform サービスを使用するため、こうしたサービスの無料枠を超えた場合には関連する料金が発生します。
- Cloud Firestore
- Cloud Functions(Node.js 10 を超えるランタイム。FAQ を参照)
- Cloud Secret Manager
この拡張機能を使用するには、Twilio API を使用してメッセージを配信するために Twilio アカウント と認証情報も必要です。Twilio の利用に関連する費用については、すべてお客様の負担となります。
この拡張機能をインストールする方法
Firebase CLI の使用
拡張機能のインストールと管理は、Firebase CLI でも行えます。
ステップ 1: 以下の npm コマンドを実行して、CLI をインストールするか、最新バージョンの CLI に更新します。
npm install -g firebase-tools正常に機能しない場合は、Firebase CLI リファレンスを確認するか、npm のアクセス権を変更してください。
ステップ 2: 新しい Firebase プロジェクトのディレクトリを設定するか、既存のプロジェクト ディレクトリに移動します
ステップ 3: 次を実行して、この拡張機能を拡張機能のマニフェストに追加します
firebase ext:install twilio/send-message --local --project=projectId_or_alias
ステップ 4(任意): Firebase Emulator Suite を使用して、この拡張機能をローカルでテストします
firebase emulators:start
ステップ 5: マニフェストにある拡張機能をプロジェクトにデプロイします
firebase deploy --only extensions --project=projectId_or_alias