iOS SDK

Twilio Programmable Voice SDK for iOS allows you to add voice-over-IP (VoIP) calling into your native iOS applications.

For step-by-step instructions to get up and running with the iOS SDK for Programmable Voice, check out the quickstarts for making calls from your native iOS apps in Objective-C and Swift.

The Programmable Voice SDKs are released according to semantic versioning, so you should always note both the major and minor versions of the SDKs to maintain API compatibility with your code. For versions 1.0 and higher, minor versions will not break existing integrations, but during a beta period, minor version increments in the 0.x range represent breaking API changes. Patch level releases - 0.0.x - represent non-breaking changes during a beta.

認証と権限付与

In the Programmable Voice SDKs we use a new authentication/authorization mechanism for your application server to give your clients access to your voice applications. This is done by providing your app an Access Token, which governs the client application’s authentication session with your account in the Twilio cloud. Access Tokens are different from the Capability Tokens used in the previous versions of Twilio Client. Using a Capability Token in the Programmable Voice SDK will not work. Access Tokens, just like Capability Tokens before, are JWT tokens, but are using a new, more flexible format that is used across all the new Twilio SDKs.

管理コンソール

Developer tools and configuration options for Programmable Voice can be found in the Programmable Voice Dashboard. Use the console to create TwiML apps, update push credentials, view logs, and much more.

The Programmable Voice SDKs are released according to semantic versioning, so you should always note both the major and minor versions of the SDKs to maintain API compatibility with your code. For versions 1.0 and higher, minor versions will not break existing integrations, but during a beta period, minor version increments in the 0.x range represent breaking API changes. Patch level releases - 0.0.x - represent non-breaking changes during a beta.

システム要件

Twilio Programmable Voice SDKは、iOS 8.1以上でサポートされます。

以下のデバイスおよびデバイスファミリーをサポートしています。

  • iPhone 4s以降
  • iPod touch 第5世代以降
  • iPad 第4世代以降

クイックスタート・デモAppはXcode 8およびiOS 10用にビルドされており、Cocoapods 1.0以降が必要です。

インストール

iOS Voiceフレームワークはお好みに応じて、Carthage、Cocoapods、または手動でインストール可能です。

変更

Cartfileに下記の行を追加することで、Programmable Voice for iOSを追加できます:

github "twilio/twilio-voice-ios"

続いて、carthage bootstrap を実行します。 (SDKを更新している場合は carthage update)

アプリケーションターゲットの「General」タブ、「Linked Frameworks and Libraries」セクションで、ディスク上の Carthage/Build フォルダーから使用したいフレームワークをドラッグ&ドロップします。

アプリケーションターゲットの「Build Phases」設定タブで、「+」アイコンをクリックして「New Run Script Phase」を選択します。 シェル (/bin/sh など) を指定するRun Scriptを作成し、シェルの下部のスクリプトエリアに下記の内容を追加します:

/usr/local/bin/carthage copy-frameworks

「Input Files」の下側に使用したいフレームワークへのパスを追加します。 例:

$(SRCROOT)/Carthage/Build/iOS/TwilioVoice.framework

Cocoapods

依存関係をCocoapodsで管理している場合、Voiceフレームワークのインストールは簡単です。 Podfile に次の行を追加するだけです。

source 'https://github.com/cocoapods/specs'

target 'TARGET_NAME' do
  use_frameworks!

  pod 'TwilioVoice', '~> 2.0'
end

そして、pod install --verbose を実行してプロジェクトに依存関係をインストールします。

手動インストール

Voiceは既存のプロジェクトにドラッグ&ドロップ可能なダイナミックiOSフレームワークとして配布されています。

フレームワークをダウンロード、展開したら、XcodeプロジェクトのGeneral 設定ページに移動します。 Embedded Binariesセクションに、TwilioVoice.framework をドラッグ&ドロップします。 "Copy items if needed"にチェックが入っているかどうか確認し、Finishをクリックします。 これで、LibrariesセクションのEmbedded BinariesおよびLinked Frameworks双方に TwilioVoice.framework が追加されました。 -ObjC をAppのProject SettingsでOther Linker Flagsに追加することも必要です。

Appを App Storeで配信する前に、埋め込み済みフレームワークからシミュレーターのバイナリーを取り除くことが必要です。 (Xcodeプロジェクト)ターゲットのBuild Phases画面に移動し、新規の "Run Script Phase" を作成します。 下記コマンドを、スクリプトのテキスト・フィールドにペーストします。

/bin/bash "${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}/TwilioVoice.framework/remove_archs"

これらのコンポーネントの協調の仕方についてのイメージを掴むには、入門ガイドからスタートすることをお勧めします。 クイックスタートAppはCocoapodsで依存関係を管理するようセットアップされますが、上記で触れたように手動でフレームワークをインストールすることも可能です。

静的ライブラリー

Voiceも静的ライブラリーとして利用可能です。

静的ライブラリーをダウンロードしたら、 libTwilioVoice.ainclude フォルダーをXcodeプロジェクトにドラッグ&ドロップします。 これにより、Linked Frameworks and Librariesセクションに静的ライブラリーが追加されます。

Appでライブラリーをビルドできるようにするには、追加で下記のものが必要になります:

  • Other Linker Flags-ObjC を追加します
  • 下記のフレームワークをLinked Frameworks and Librariesセクションに追加します: SystemConfigurationAudioToolboxAVFoundationCoreTelephonyPushKit、および CallKit

お問い合わせ

We are anxious to hear your feedback and help you with any trouble you may encounter. For technical support, file a ticket with our support team or send an email to help@twilio.com.

ヘルプが必要ですか?

誰しもが一度は考える「コーディングって難しい」。そんな時は、お問い合わせフォームから質問してください。 または、Stack Overflow でTwilioタグのついた情報から欲しいものを探してみましょう。