2023年5月1日を持ちまして、株式会社KDDIウェブコミュニケーションズのTwilioリセール事業が終了したため、本記事に記載されている内容は正確ではないことを予めご了承ください。
はじめに
みなさん、こんにちは。
KDDIウェブコミュニケーションズの Twilio事業部エバンジェリストの高橋です。
今回は、最近発表された Twilio Programmable Voice 系の以下のアップデートについて解説します。
- SIP インターフェースが東京リージョンでもつかえるようになりました。
- <Dial> 動詞内に、<Sip> 名詞が列挙できるようになりました。
- <Dial> 動詞で、
sequential
属性が正式サポートされました。
SIP インターフェースの Edge Locations 対応
Twilio の Programmable Voice には、SIP に対応するための機能として SIP Interface があります。この機能を使うことで、外部の SIP サーバーと Twilio の Programmable Voice を連携させたシステムを構築することができます。
また、SIP Interface には SIP Registration をいうオプションが用意されており、この機能によって SIP サーバーを用意しないで SIP に対応した電話機を利用することなどが可能になります。
SIPレジストを使って、Twilioで固定電話をつかってみる
ただし、この SIP Interface は今まで US1 リージョンにしか対応しておらず、日本で利用すると発信者番号が非通知になったり、通話の遅延が発生したりしました。
SIP Registrationで確実に発信者番号を通知させる
今回、この SIP Interface が Edge Locations に対応したことにより、東京リージョンでも利用できるようになりました。
これでますます SIP Registration が使いやすくなりますね。
<Dial> 動詞内の複数 <Sip> 対応
上記でも說明した SIP 連携ですが、今までは <Dial> 動詞には <Sip> 名詞が一つしかかけませんでした。そのため、同時に複数台の SIP 端末を呼び出したいときは、SIP 端末に同じ SIP ドメインを付与することで対応するしかありませんでした。
<Dial>
<Sip>sip:2001@example.sip.twilio.com</Sip>
</Dial>
しかし今回のアップデートで <Sip> 名詞を最大10件まで列挙することが可能になりました。
<Dial>
<Sip>sip:2001@example.sip.twilio.com</Sip>
<Sip>sip:2002@example.sip.twilio.com</Sip>
<Sip>sip:2003@example.sip.twilio.com</Sip>
</Dial>
このように指定することで、2001、2002、2003の端末が同時に鳴動します。いずれか先に取った方と通話が確立し、取らなかった端末の鳴動が停止します(一斉着信)。
<重要>
この <Sip> の列挙を許可するには、管理コンソール上の Programmable Voice の設定画面で Enhanced Programmable SIP Features を有効にする必要があります。
<Dial> 動詞の sequential
属性対応
上記のように、<Dial> 動詞内で <Sip> 名詞が列挙できるようになりましたが、この列挙機能は元々 <Number> 名詞や <Client> 名詞でも利用可能でした。
<Dial callerId="+815012345678">
<Number>+81311111111</Number>
<Number>+81322222222</Number>
<Number>+81333333333</Number>
</Dial>
ただ、いずれのケースもすべて一斉着信となります。
今回、<Dial> 動詞に sequential
属性が正式にサポートされることになり、順次着信が可能になりました。具体的には以下のように記述します。
<Dial callerId="+815012345678" timeout="15" sequential="true">
<Number>+81311111111</Number>
<Number>+81322222222</Number>
<Number>+81333333333</Number>
</Dial>
上記のように指定すると、まず最初に+81311111111
に電話がかかり、この端末が着信拒否、もしくは応答しないと+81322222222
に電話がかかります。このように、一斉ではなく順番に電話がかかるので、順次着信と呼ばれます。timeout
属性を付与することで、応答するまでの時間を指定することができます。
実はこの属性、今までも存在していたのですが、非公式属性になっていたものです。今回のアップデートによって、正式にサポートされることになりました。
この属性は、列挙が可能なすべて名詞で利用が可能ですので、<Number> だけでなく、 <Client> や <Sip> でも利用できます。
詳しいドキュメントはこちらをご覧ください。
まとめ
今回のアップデートによって、SIP 連携機能がだいぶ使いやすくなりました。
とくに SIP 固定電話や、SIP ソフトフォンとの連携の幅が広がるので、ぜひ皆さんも色々と試してみてください。
Twilio(トゥイリオ)とは
https://cloudapi.kddi-web.com
Twilio は音声通話、メッセージング(SMS /チャット)、ビデオなどの 様々なコミュニケーション手段をアプリケーションやビジネスへ容易に組み込むことのできるクラウド API サービスです。初期費用不要な従量課金制で、各種開発言語に対応しているため、多くのハッカソンイベントやスタートアップなどにも、ご利用いただいております。