ブログ

Twilio&sakura.io 体験ハンズオンに参加したメモ

2017年11月2日にさくらインターネットさんで開催された【KDDIウェブコミュニケーションズ共催】Twilio&sakura.io 体験ハンズオン@東京に参加しました。

https://sakura-kanto.doorkeeper.jp/events/64652

今回のハンズオンでは温度センサーから取得した温度情報をlTEモジュールを使ってsakura.ioに送信。温度が30℃を超えるとTwilioのAPIを叩いて、自分の携帯に連絡。音声メッセージで温度が上昇したことを伝え、空調のスイッチをいれる場合は1を押すようにうながされます。1を押すとTwilioからsakura.ioにデータがおくられ、ブレッドボードに取り付けられたLEDが点灯するというものでした。

結果としては動画の用になります。

今回、Twilio側の設定について自分で復習できるようにメモをしました。

Twilioで電話番号を購入する

Twilioで電話番号を購入します。月々108円とのことです。

Twilioクラウドコミュニケーション 音声通話とSMSアプリケーション構築用のWebサービスAPI Twilio Console Phone Numbers Search Buy Results Twilio Console Phone Numbers Search Buy Results Twilio Console Phone Numbers Incoming

値の設定

今回のハンズオンで用意されたプログラムで使用する値は、Twilioの中のconfigrationで設定できますので、そこに入力します。

Twilio Console Phone Numbers Incoming Twilio Console Runtime 概要 Twilio Console Runtime Functions 構成

FROM_NUMBER

FROM_NUMBERは、かかってくる電話番号。先程、Twilioで購入した電話番号を入力します。

入力は+81から一番最初の0を抜いた番号です。

Twilio Console Runtime Functions 構成

MODULE_ID

MODULE_IDはsakura.ioのモジュールのIDです。

これは、sakura.ioの管理画面から確認できます。

Sakura io ホーム

SAKURA_URL

SAKURA_URLもsakura.ioの管理画面から確認。

Sakura io サービス連携の編集 Incoming Webhook

TO_NUMBER

TO_NUMBERは、Twilioから電話をかける相手の電話番号です。

Twilio Console Runtime Functions 構成

以上を入力したらsaveします。

Twilio Console Runtime Functions 構成

Twilio側でコードを書きます。

メニューからFunctionsから「Manage」を選び「Create function」のボタンをおします。

Twilio Console Runtime Functions 構成 Twilio Console Runtime Functions 管理

New Functionのメニューが表示されるので、そこから「+Blank」をえらび、「Create」

Twilio Console Runtime Functions 管理

PropertiesからPATHを入力。

Twilio Console Runtime Functions 管理 Twilio Console Runtime Functions 管理

outboundcallのコードについては

https://github.com/sakuraio/handson-sample/blob/master/twilio/outboundcall.js

これをコピー

Twilio Console Runtime Functions 管理

そして、セーブ

IVR

IVRのファンクションを作成します。

Twilio Console Runtime Functions 管理 Twilio Console Runtime Functions 管理 Twilio Console Runtime Functions 管理

https://github.com/sakuraio/handson-sample/blob/master/twilio/ivr.js

Twilio Console Runtime Functions 管理

Turnを作成

Twilio Console Runtime Functions 管理 Twilio Console Runtime Functions 管理 Twilio Console Runtime Functions 管理

コードはこちら

Twilio Console Runtime Functions 管理

さくら側

さくらとTwilioをつなげる設定。

Sakura io ホーム Sakura io 追加サービスの選択 Sakura io サービス連携の作成 Outgoing Webhook Twilio Console Runtime Functions 管理 Twilio Console Runtime Functions 管理

まとめ

sakura.ioはArduinoのシールドと組み合わせセンサーで取得したデータをLTE回線からsakura.ioに送ることができるので、距離の離れたところにある機器の情報を取得するのにとても便利なプラットフォームです。

また、Twilioは直接、電話という手段を使い音声で連絡をとれるだけでなく、その場で対応をボタンを押すことで、Twilioを通してsakura.ioにも送ることができるので、誰でもわかりやすく、また操作もシンプルにすることができます。

今後はここら辺とDALIを連携させて、設備制御とsakura.io、Twilioをつなげた実験をしてみたいと思います。

ABOUT ME
中畑 隆拓
スマートライト㈱ 代表取締役。IoTソリューションの開発、スマートホーム&オフィスのコンサルティング、DALI,KNX,EnOceanなどのインテグレーションを行っています。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です