メニュー

Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

Twilio クライアント iOS SDK

The Twilio Client SDKs for Android & iOS have been deprecated and replaced by Twilio's new Programmable Voice SDK.

The Programmable Voice SDK offers many improvements over the Twilio Client SDK, including greater stability, improved backgrounding, and built-in support for push notifications for incoming calls.

Get started with the new Programmable Voice SDK by checking out one of the links below:
* Programmable Voice SDK for Android Quickstart
* Programmable Voice SDK for iOS: Objective-C Quickstart
* Programmable Voice SDK for iOS: Swift Quickstart

If you're just getting started with a Twilio mobile application for voice calling, we recommend you use the Programmable Voice SDK. If you're already using the Twilio Client SDK, you should plan to upgrade to the Programmable Voice SDK as soon as you're able.

概要

iPad、iPhone、iPod アプリで電話をかけたり受けたりしてみませんか? 自分の iOS ゲームでプレーヤー同士が会話できるように、ボイス チャット機能を追加するのはどうでしょう? そのための SDK があります!

Twilio クライアント iOS は、固定電話や、ウェブ ブラザ、他のモバイル機器を始めとする Twilio クライアント デバイスとの音声通信を実現する iOS 用の Objective-C ライブラリです。

iOS SDK のダウンロード

簡単にTwilioSDKを組み込む方法はCocoaPodsを使うことです。Podfileに下記の行を加えるだけです。

source 'https://github.com/CocoaPods/Specs'
source 'https://github.com/twilio/cocoapod-specs'

target 'MyTwilioApp' do
    pod 'TwilioClient', '~>1.2'
end

または、tar.bz2 ファイル(80MB)をダウンロードしてもかまいません。

アーキテクチャ

Twilio クライアント アプリには、3 つの主要な構成要素があります。

  1. libTwilioClient.a ライブラリを使用する iOS アプリ
  2. クライアント アプリにケイパビリティを許可し、TwiML を提供し、Twilio REST API 通話を行うサーバー
  3. テレフォニーを扱い、TwiML と Twilio REST API 通話を処理する Twilio のクラウド サービス

Twilio Client iOS SDK Architecture

クライアント サイドのクラス

Twilioサービスに接続するプライマリーのクラスはTCDeviceです。このクラスはTwilioと認証を行い、着信接続、発信接続の確立を司ります。このクライスのインスタンスは次のセクションに記述される”ケイパビリティトークン”を作成します。

Twilio との着信または発信の接続は、 TCConnectionクラスのインスタンスで表現されます。

また、デリゲート プロトコルである TCDeviceDelegateTCConnectionDelegateを実装したオブジェクトには、ステータス コールバックを使用できます。

サーバー サイドのセキュリティ: ケイパビリティ トークン

Twilio クライアント SDK は、iOS アプリから Twilio への通信を許可する際に ケイパビリティ トークン を使用します。 これらのトークンはユーザーのサーバーで生成され、着信の接続が受けられるか、発信の接続を行えるかどうかなど、アプリが使用できるケイパビリティを指定 することができます。 トークンは必ず一定時間で失効します。つまり、不正な利用を防止するため、すべてのトークンには有効期限があります。 トークンを更新する頻度は、ユーザーが決めることができます。

Twilio のケイパビリティ トークンは、JSON Web Token (JWT) 標準に基づいています。 トークンは Twilio の Helper ライブラリ で生成できます。さまざまな言語の Helper ライブラリが用意されています。

Twilio アカウントのセキュリティ保護のため、App Store に登録するアプリには、ケイパビリティ トークンまたは Twilio の AuthToken を文字列で埋め込むことはお勧めしません。

ヘルプが必要ですか?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd browsing the Twilio tag on Stack Overflow.