カテゴリー内の他の記事

Twilioで連絡先に一斉発信(電話/SMS)

フォローする

著者:有限会社マミー 沖 安隆(kintone エバンジェリスト)

はじめに

はじめまして!kintone エバンジェリスト 兼 TwilioJP-UG の沖です。

kintone × Twilio 連携としては Twilio 連携プラグインがありますが、プラグインでは1クリック1箇所のみの発信でした。
今回は、「緊急電話連絡網」を作成して、一斉発信を試します。
具体的には、アプリ内の1レコードに複数の連絡先を登録して、登録先に同じ文面(タグ差し込み可)を発信する仕組みです。

 

完成イメージ

 

 

手順

おおまかな手順は次の通りです。

  1. Twilio 設定確認
  2. kintone でアプリ作成
  3. JavaScriptカスタマイズ
  4. 動作確認

 

1. Twilio 設定確認

Twilio のアカウントがない方はこちらから取得してください。

 

ACOUNT SID / AUTH TOKEN 確認

Twilio の管理画面にログインし、「アカウントセッティング」でAPIクレデンシャルを確認します。そこに表示されている、ACCOUNT SID/AUTH TOKENをコピーします。

 

電話番号確認

「アクティブな電話番号」で発信に使う電話番号をコピーします。(+81から始まる文字列全てをコピー)

 

SMS用電話番号確認

SMSを送信するにはUSの番号が必要なので、Twilio 管理画面「アクティブな電話番号」にて、SMSのアイコンが表示されている番号を利用します。

 

 

SMS用電話番号取得

番号がない場合は、「Buy a Number」からの購入が必要です。その際は、国を変更して+1から始まる番号を検索します。

 

Twilio 無料アカウント利用時の注意事項

  • 電話番号を1つだけ使用できます。
  • 検証用に利用した電話番号のみに電話発信/SMS送信できます。
  • 無料通話可能な時間は上限が設定されているみたいですが、過去の経験上ではデモで試すくらいなら大丈夫です。
  • サービス開発や何かの運用を始めるときは上限を超えると思いますので、アップグレードをお願いします。

 

2. kintoneでアプリ作成

下記の表の通りにアプリを作成します。フォーム図も参考にしてください。

フィールド名 フィールドタイプ フィールドコード
グループ名 文字列(1行) 指定なし
発信元電話番号 文字列(1行) from_number
発信元SMS電話番号 文字列(1行) from_sms
送信メッセージ 文字列(複数行) message
テーブル - Table
発信先電話番号 文字列(1行) to_number
氏名 文字列(1行) to_name

 

 

データ登録

各フィールドに情報を入力します。 Twilio 設定の手順で保存した発信元の電話番号とSMS番号をペーストします。
それ以外の項目は自由に入力してください。
ただし、Twilio の無料アカウントを使っている場合は、発信先電話番号は Twilio 検証用に利用した番号のみが有効となります。

 

3. JavaScriptカスタマイズ

SIDとTOKENをソースにコピー&ペースト

保存した「twilio-kintone-dial.js」を開き、Twilio コンソールからコピーしたSIDとTOKENを、下記の位置にペーストして保存します。

 // Twilio API クレデンシャル(https://jp.twilio.com/console/account/settings)
 var ACCOUNT_SID = '{ACCOUNT SID}';
 var AUTH_TOKEN = '{AUTH TOKEN}';
 var timeout_seconds = 6;

kintone へアップロード

「twilio-kintone-dial.js」を kintone へアップロードして保存します。

ボタンの見た目を新デザインに揃える場合はこちらの「51-modern-default.css」もアップロードします。

32.png

 

JavaScript解説

JavaScriptのそれぞれの処理について解説します。

ボタン追加

ボタンの要素を作成し、idや名前などを設定した後で、メニュー横に追加します。

 

レコードのフィールドとテーブルから値を取得

レコードの値は、record.フィールドコード.value で取得できます。
テーブルの場合はテーブル全ての内容が入っていますので、更に各行ごとに抜き出すような処理になります。

 

TwiML作成して呼び出し

発信用のTwiMLを作成します。TwiMLはURLでしか指定出来ないので、文字列をそのまま返してくれるtwimletsのサービスを利用します。

 

(おまけ)テーブル内タグ変換

テーブル内の入力値を差し込むタグ機能も用意しています。
例えば、氏名のところに 山田 と入力しておいて、メッセージ部分に [to_name]さん と入力すると、 山田さん と変換して発信します。
テーブル内のフィールドは自動判定で変換しますので、部署名などを追加して変換するという事も可能です。

 

全体のソース

 

4. 動作確認

ここまで出来たら、動作確認でボタンを押すと電話を呼び出せるはずです。 電話がかかってきましたか?

 

最後に

今回は、kintoneから発信のカスタマイズでした。
逆に、着信してkintoneへ着歴保存をするには、別途サーバーを用意する必要があります。そのため、簡単には試すことが出来ません。
でも、「出来ません」だと面白くないので、受信お試し版として「電話ラジオ」アプリをご用意しております。
詳細は電話情報配信サービス「電話ラジオ」をご覧ください。

記事に関するフィードバック

直接的に記事と関連がないご質問はcybozu developer コミュニティをご活用ください。

ログインしてコメントを残してください。
Powered by Zendesk