TwilioとSlackを連携させてみた

TwilioとSlackを連携させてみた

ゲーソル・ギョーソル Advent Calendar 2024の15日目のブログとなります! TwilioとSlackを連携させてみました
Clock Icon2024.12.15

こんにちは、昴です。
本ブログはゲーソル・ギョーソル Advent Calendar 2024の12日目のブログとなります!
他のブログも合わせてご覧ください。
https://dev.classmethod.jp/referencecat/gamesol-businesssol-advent-calendar-2024/

今回はTwilioとSlackを連携させてみたいと思います。

はじめに

Twilioは電話やSMS、チャットなどのコミュニケーション機能を組み込むためのクラウドベースのAPIプラットフォームです。TwilioのAPIを利用することで通信ソリューションを自由にカスタマイズして構築することができます。
今回はTwilioの機能の中でもTwilio Studioに注目していきたいと思います。
TwilioとSlackを連携させて、受信したSMSの内容をSlackに通知していきます。

設定

それではTwilio Studioでフローを作成していきます。
まずはTwilioのコンソール画面でStudioに移動し、「create a flow」を選択していきます。

フロー作成①241215

「create a flow」を選択するとフローの名前を入力する画面が表示されますので名前を入力していきます。ここでは「Twilio_to_Slack」と名前を入力しました。

フローのタイトル1215

次に、フローを作成する上でのテンプレートを選択します。いくつかのテンプレートがあり、用途に合わせて選択していきます。今回は「Start from scratch」を選択していきます。これはテンプレートではなく始めから作成するものとなっています。
フローの作成画面に移行すると下記のような画面になります。今回はSMSなので、TriggerのIncoming Messageから下に続けていきます。

フロー作成初期画面

今回使用するWidgetはMake HTTP Request Widgetになります。ドラッグアンドドロップで移動しTriggerと接続します。Widgetの名前を入力し、Request methodはPOSTを選択していきます。

MakeHTTPRequest

ここでRequest URLが必要となるため、Slack Webhook URLを作成していきます。
SlackのIncoming Webhookのページへ移動し、TwilioのSMSの通知を送りたいチャンネルを選択して「Add Incoming WebHooks Integration」を選択します。(Incoming Webhookはこちらのページを参照)

Webhook作成するよ

作成ができると下記のようにURLを得ることができます。このURLは先ほどのWidgetで使用するためコピーしてどこかに保存しておきます。

Webhook作成できたよ

再びTwilio画面へ移動し、Widgetの設定にてURLを入力します。
URLを入力すると2つ項目が表示されるので、Content Typeで「Application/JSON」を選択、Request Bodyには {"text": "{{trigger.message.Body}}"} を入力します。

MakeHTTPRequest2

Widget内の設定にて入力が完了したらSaveをします。
これでフローの設定は完了なので画面上部の「Publish」で公開します。

次に電話番号に作成したフローを紐づけていきます。
コンソール画面のPhone Numbers > Manage > Active numbersへ移動し、接続したい電話番号を選択します。
電話番号を選択すると設定画面が開くため、下へスクロールしMessaging Configuration欄のA call comes inで「Studio Flow」を選択し、先ほど作成したフロー「Twilio_to_Slack」を選択していきます。

フローを電話番号に設定241215

最後に「Save configuration」を選択して設定を保存します。これで設定は完了となります。

確認

それでは実際の動作を確認します。
下記のようにTwilioの電話番号に対してSMSを送信してみます。

IMG_8232

するとSlack上でincoming-webhookから送信したSMS通りの通知が届きました。

SlackとTwilio連携できたね

まとめ

今回はTwilioとSlackを連携して、Twilioの番号に送られてきたSMSをSlackに通知してみました。
本ブログが少しでも参考になれば幸いです。

参考記事

Twilio Studio で Slack にメッセージを投稿する

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.