はじめに
先日、「TwilioJP-UG 札幌 第4回 – Twilioハンズオン!初級編 -」に参加してきました。
会場はシステムデザイン開発株式会社 様のセミナールームで開催されました。
TwilioJP-UG 札幌 さんは、WEB APIで電話やSMS・テレビ会議を実現させるクラウドのサービスである Twilio の学習を目的としたコミュニティです。
立ち上がったばかりのユーザーグループですので、運営メンバーも募集されています。
https://twiliojp-ug.doorkeeper.jp/
オープニング
ラジカルブリッジ 斎藤さん
[Session 1] 5分でだいたいわかるTwilio
株式会社エスプランニング 瀬戸田さん
[Session 2] ハンズオンその前に(準備や説明)
システムデザイン開発株式会社 池土さん
- Twilioアカウント登録
- 電話番号の取得
- Node.jsのインストール
Twilioの管理画面は最近、デザインの変更があったようで、過去にアカウント登録されている方と若干見た目が変わっていたようです。
TwiMLとは
TwiMLとは、XML形式で記述する独自マークアップ言語です。
電話 / SMSの受信時に、電話を転送 / 応答メッセージを返すなど、振る舞いを定義します。
Twimlを使った振る舞いは、事前に録音しておいた音声を流す / SMSを送信するなど、他にもありますので、公式ドキュメントでご確認ください。
[Session 3] ハンズオン(電話を受ける、鳴らす)
株式会社エスプランニング 瀬戸田さん
Twiloで取得した電話番号で受ける
- Twilioの管理コンソールにログイン
- TwiMLのURLを作成(GETメソッドで設定)
- TwiML Bins にてコードを記述
- 取得したTwilioの電話番号宛にコール(記述したメッセージが読み上げられたら成功)
設定した電話番号宛に掛ける(Mac環境の場合)
$ brew install node # nodejsのインストール $ mkdir twilio-sample # プロジェクトディレクトリ作成 $ cd twilio-sample # プロジェクトディレクトリへ移動 $ npm init # 対話形式でprojectの初期設定を行いますが、今回は基本的にエンターのみで可 $ npm install --save-dev twilio # twilioライブラリのインストール $ $ $ cat << EOF > index.js var accountSid = '__AccountSid__'; // Twilio管理画面にあるAccount SIDを記載 var authToken = '__AuthToken__'; // Twilio管理画面にあるAuth Tokenを記載 var client = require('twilio')(accountSid, authToken); var queryString =require('querystring'); var twiML = '<Response><Say language="ja-JP">わたし、Twilio ちょっとできた</Say></Response>'; console.log('call twilio'); client.makeCall({ to: '+8190-0000-1111', // コール先の電話番号 from: '+8150-9999-0000', // 取得したtwilioの電話番号 url: 'http://twimlets.com/echo?Twiml=' + queryString. escape(twiML) //twimlを返すURL }, function (err, responseData) { if(err) throw err; console.log(responseData.from); }); EOF $ $ $ node index.js // サンプルコードの実行。設定したコール先に call twilio // 電話がかかり、メッセージ再生されたら成功。 +815099990000
まとめ
とても内容の濃いイベントでした。
登壇者の皆さん、TwilioJP-UGの関係者の方々、会場提供のシステムデザイン開発株式会社 様、ありがとうございました!
次回 #5 は、7月15日に KDDIウェブコミュニケーションズ 小出 範幸 氏 に Twilio開発者カンファレンスである、SIGNAL 2016 の解説が行われるとの事ですので、次回も楽しみにしています。
[amazonjs asin=”B00RP13B62″ locale=”JP” title=”Twilio Best Practices”]
[amazonjs asin=”B00JAAW14E” locale=”JP” title=”Twilio Cookbook: Second Edition”]