LoginSignup
7
2

More than 3 years have passed since last update.

Twilio Programmable Wireless を使ってみた。

Last updated at Posted at 2019-12-10

Twilio Programmable Wireless とは

2018年のTwilio SIGNALで発表されたTwilio Programmable Wirelessは、いわゆるSIMのサービスになります。IoT向けでもあるのですが、SIMフリーのスマートフォンにいれて使うことも可能です。
発表当時の動画はこちらこちら

サービスの特徴について

  • いわゆる「縛り」である、最低利用期間は存在しません。
  • Twilio アカウントがあれば、誰でも使えます。
  • データ通信、音声通話(米国)、SMS(米国)の利用が可能です。
  • T-Mobileのネットワークを利用しており、米国内だけでなく世界各国のネットワークを用いたローミング利用できます。 image_2019_11_11.png

Twilio Programmable Wirelessを使ってみる

以下に使うための流れを記載します。

Twilio Programmable Wirelessの入手する

使用するためには、SIMを発注する必要があります。SIMカードはTwilioのコンソールページから注文することができます。今回はSIMが3枚入っているStarterKitを購入します。
image_2019_11_12.png
※今回はスマートフォンに入れて利用することが目的であるので、「Narrowband SIM Starter Pack」ではなく、「SIM Starter Pack」を購入しました。

発注後、数日には、国際便で手元に届きました。2019-11-16_08-55-22_884.jpg中を開けると、こんなかんじでした。2019-11-16_09-16-44_668.jpg箱の中身は、3枚のSIMとブランドブック的な本。2019-11-16_09-17-20_960.jpgTwilio大好きな私としては、このブランドブックは非常に嬉しいですね。2019-11-16_09-18-25_247.jpg

Twilio Programmable Wirelessを設定する

届いたSIMカードは自身のTwilioアカウントでアクティベートをします。
アクティベートするためには、まず料金プラン(RatePlan)を作成する必要があります。

料金プラン(RatePlan)を作成する

左メニューからProgrammableWirelessを選択し、そこから料金プラン(RatePlan)を選択します。
このRatePlanでは、

  • SIMが利用する用途(2G/3G/LTEなのか、NARROWBANDなのか)
  • SIMが利用するサービス(データ、音声、SMS)
  • 米国内ローミングと国際ローミングを利用するか
  • Quotaの設定
  • データ上限の設定 が設定できます。 image_2019_11_21.png 今回、私はスマートフォンにSIMカードを挿入して使う予定なので、以下の設定としました。
項目 設定値
1. What type of SIM are you making a Rate Plan for? 2G/3G/LTE
2. Which services would you like to enable? Dataのみにチェック※
3. Set roaming preferences INTERNATIONAL ROAMINGをENABLED※
4. Set Data Metering plan $10 QUOTA※
5. Set Data Limits INTERNATIONAL ROAMING DATA LIMIT 250MB /Month

※利用するサービスについては、VoiceとMessagingは基本的に米国 onlyなので、Dataだけにしました。
※このSIMは米国のSIMなので、日本で使う場合は国際ローミングとなる。
※ウィザードも用意してありますし、詳しくは料金を参照するとよいです。

SIMカードを登録する

左メニューからProgrammableWirelessを選択し、そこからSiMを選択します。左上のプラスマークをクリックし、「Register a SIM」を選択します。以下のような画面がでてきますので、SIMカードに記載されている10桁のREGISTRATION CODEを入力します。
image_2019_11_21 (1).png
その他、SIMのユニーク名や先程作成したデータプランを選択します。
「Register SIM Cord」をクリックすると、数分でアクティベートが完了します。

スマートフォンにSIMを挿入。

今回はiPhoneを利用しました。SIMを挿入します。
2019-11-21_22-30-06_052.jpg
設定→モバイル通信を選択します。

項目 設定値
モバイルデータ通信 ON
通信のオプション ローミングオン
モバイルデータ通信ネットワーク APNを「wireless.twilio.com」

2019-12-09_11-01-44_000.png

2019-11-21_05-45-39_000.png

通信できるようになると、NTT DocomoかSoftbankのローミングとなります。ただし、日本では、データ通信のみとなります。
例えば、SIPレジストを使って、Twilio環境だけでSIPソフトフォンを使ってみたを使えば、実質電話もできるような状態となります。
ちなみに、このSIPレジストは、データ通信ができていれば、どこでも利用できるので、海外に行ったときも利用可能です。私が1週間米国に滞在したときは、ケータイ電話にかかってきた電話はSIPレジストしたTwilio番号に転送するようにしていました。いわゆるキャリアの国際ローミングよりも非常に安価です。

Twilio Programmable Wirelessを米国に持っていってみた。

さて、このTwilio Programmable Wirelessは、日本で使うときは国際ローミングをONにする必要がありました。これはSIMが米国のものだからです。(日本で使うのにローミングONというのは、ちょっとややこしいのですが)
このSIM、米国に持ち込んで使えるかどうか、確認してきました。
2019/12/02〜06に開催された、AWS re:Inventへ、Twilio Programmable Wireless SIMを導入したスマートフォンを持っていきました。
作業としては、料金プランの変更と、Voice・Messagingの設定追加が必要となります。

料金プランを作成する

日本では、VoiceやSMSは対応しないプランとしましたが、米国ではそれも利用可能となるため、別途米国用のプランを作成しました。

項目 設定値
1. What type of SIM are you making a Rate Plan for? 2G/3G/LTE
2. Which services would you like to enable? Data、Voice、Messagingにチェック
3. Set roaming preferences 両方ともDISABLED※
4. Set Data Metering plan $10 QUOTA
5. Set Data Limits INTERNATIONAL ROAMING DATA LIMIT 250MB /Month

※米国なのでroamingはOFFとする。

音声発信の設定

SIMから音声が発信できるように設定をします。

左メニューからProgrammable Wireless→SIMを選択し、Programmable Voice & SMSタブを開きます。Programmable Voice欄のプラスマークをクリックし、TwiML Binを作成します。
内容は以下のとおりです。※デフォルトでこの内容が入っています。

Route_as_dialed
<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Dial callerId="自分のTwilio番号を記載する">
    <Number>{{To}}</Number>
  </Dial>
</Response>

image_2019_12_10.png

メッセージ送信の設定

上記の音声発信設定画面の下部にProgrammable SMS があります。
プラスマークをクリックし、TwiML Bin作成します。
内容は以下のとおりです。※デフォルトでこの内容が入っています。

Deliver_message_as_intended_by_device
<?xml version="1.0" encoding="UTF-8"?>
<Response>
  <Message from="自分のTwilio番号を記載する" to="{{To}}">{{Body}}</Message>
</Response>

image_2019_12_10 (1).png

音声着信の設定

Programmable Voiceの着信設定で、SIMに転送する設定を行います。
まずTwiML Binsで以下の内容を作成します。

incomingToVoice
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Dial>
    <Sim>自分のSIMのSIDを記載する</Sim>
    </Dial>
</Response>

これを、該当の電話番号のA CALL COMES INに設定しておきます。

メッセージ受信の設定

まずTwiML Binsで以下の内容を作成します。

incomingToSMS
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Message to="sim:自分のSIMのSIDを記載する" from="{{From}}">
         {{Body}}
    </Message>
</Response>

これを、該当の電話番号のA MESSAGE COMES INに設定しておきます。

iPhone側の設定

国際ローミングではなくなるので、ローミングをOFFにします。以下のような感じになります。
2019-12-07_04-39-39_000.png
ネットワーク選択や画面左上のキャリア表示が、「Twilio」になるのが感慨深いですね。

検証してみた。

米国番号で電話をかけたり、受けたりすることができるか、実験しました。
米国TwilioSIM → 日本Twilio番号 (動画)
日本Twilio番号 → 米国TwilioSIM (動画)
SMSの受信も確認できました。※Uberを登録する際のSMS認証で確認しました。

これにより、米国の番号が必要なサービス(例えばUberやlyftなど)への登録や、現地でなにか電話が必要な場合でも、気軽に使うことができます。Twilio Programmable Wireless SIMを持っておくと安心ですね。

おまけ

AWS re:InventにてTwilio社がEXPOブースに出店されていたので、訪問してきました。2019-12-05_15-47-02_844 (1).jpeg

いきなり拙い英語で話しかけてきた日本人に、優しくご対応いただき、感謝しています。
来年のTwilio SIGNALは参加しますよ!

7
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
2