SDK と REST API
Azure Communication Services 機能は、機能領域に基づいて、概念的に個別の領域に分類されています。 ほとんどの領域には、インターネット経由で直接使用できる、公開された REST API に対してプログラミングされた、完全にオープンソースである SDK があります。 Calling SDK は独自のネットワーク インターフェイスを使用しており、クローズ ドソースです。
下の表では、これらの領域と、REST API と SDK ライブラリの可用性についてまとめています。 また、API と SDK がエンドユーザー クライアント向けか、信頼できるサービス環境向けかについても記載しています。 SMS などの API には、信頼度の低い環境にあるエンドユーザーのデバイスから直接アクセスしないようにしてください。
通話およびチャット アプリケーションの開発は、Azure Communication Services UI ライブラリによって迅速化できます。 このカスタマイズ可能な UI ライブラリは、Web アプリとモバイル アプリ用のオープンソース UI コンポーネントと、Microsoft Teams のテーマを提供しています。
SDK
アセンブリ | プロトコル | Environment | 機能 |
---|---|---|---|
Azure Resource Manager | REST | サービス | Communication Services のリソースをプロビジョニングおよび管理します |
共通 | 該当なし | クライアントとサービス | 他の SDK の基本型を指定します |
ID | REST | サービス | ユーザーを管理し、トークンにアクセスします |
電話番号 | REST | サービス | 電話番号を取得して管理します |
SMS | REST | サービス | SMS メッセージを送信および受信します |
REST | サービス | メール メッセージの送信と状態の取得 | |
チャット | 独自の通知を含む REST | クライアントとサービス | リアルタイムのテキスト チャットをアプリケーションに追加します |
呼び出し | 独自の転送 | クライアント | 音声、ビデオ、画面共有、および他のリアルタイム通信 |
呼び出し自動化 | REST | サービス | PSTN および VoIP 通話用にカスタマイズされた通話ワークフローを構築する |
ネットワーク トラバーサル | REST | サービス | TURN サーバーへのアクセスによる低レベルのデータ転送 |
UI ライブラリ | 該当なし | クライアント | チャットおよび通話アプリ用の運用環境対応 UI コンポーネント |
言語と公開場所
以下では、個々の SDK パッケージの公開場所について説明します。
領域 | JavaScript | .NET | Python | Java SE | iOS | Android | その他 |
---|---|---|---|---|---|---|---|
Azure Resource Manager | npm | NuGet | PyPi | Maven | - | - | GitHub 経由の Go |
共通 | npm | NuGet | 該当なし | Maven | GitHub | Maven | - |
ID | npm | NuGet | PyPi | Maven | - | - | - |
電話番号 | npm | NuGet | PyPi | Maven | - | - | - |
チャット | npm | NuGet | PyPi | Maven | GitHub | Maven | - |
SMS | npm | NuGet | PyPi | Maven | - | - | - |
npm | NuGet | PyPi | Maven | - | - | - | |
呼び出し | npm | NuGet | - | - | GitHub | Maven | - |
呼び出し自動化 | NuGet | Maven | |||||
ネットワーク トラバーサル | npm | NuGet | PyPi | Maven | - | - | - |
UI ライブラリ | npm | - | - | - | GitHub | GitHub | GitHub、Storybook |
リファレンス ドキュメント | docs | docs | - | docs | docs | docs | - |
SDK プラットフォーム サポートの詳細
iOS と Android
- Communication Services iOS SDK は、iOS バージョン 13 以降と Xcode 11 以降を対象としています。
- Android Java SDK は、Android API レベル 21 以降と Android Studio 4.0 以降を対象としています
.NET
Calling を除き、Communication Services パッケージは、下に示すプラットフォームがサポートされる .NET Standard 2.0 を対象としています。
.NET Framework 4.6.1 を介したサポート
- Windows 10、8.1、8、7
- Windows Server 2012 R2、2012、2008 R2 SP1
.NET Core 2.0 を介したサポート:
- Windows 10 (1607 以降)、7 SP1+、8.1
- Windows Server 2008 R2 SP1+
- Max OS X 10.12 以降
- Linux の複数のバージョン/ディストリビューション
- UWP 10.0.16299 (RS3) 2017 年 9 月
- Unity 2018.1
- Mono 5.4
- Xamarin iOS 10.14
- Xamarin Mac 3.8
通話パッケージでは、以下で .NET Native または C++/WinRT を使用してビルドされた UWP アプリがサポートされています。
- Windows 10 10.0.17763
- Windows Server 2019 10.0.17763
REST API
Communication Services API は、他の Azure REST API と共に説明されています。 このドキュメントでは、HTTP メッセージを構成する方法と、Postman を使用するためのガイダンスが提供されます。 REST インターフェイス ドキュメントは GitHub で Swagger 形式でも公開されています。 個々の API のスロットル制限は、サービスの制限に関するページで確認できます。
API の安定性に関する想定
重要
このセクションでは、安定とマークされている REST API および SDK に関するガイダンスを提供します。 プレリリース、プレビュー、またはベータとマークされている API は、予告なしに変更されたり非推奨になったりする場合があります。
将来的に、Communication Services SDK のバージョンが廃止される可能性があります。また、REST API とリリースされた SDK に対して破壊的変更が加えられる可能性があります。 Azure Communication Services は、サービス バージョンの廃止に関して、"通常は" 次の 2 つのサポート ポリシーに従います。
- Communication Services インターフェイスの変更に起因するコードの変更を求められる場合、お客様は少なくとも 3 年前に通知されます。 通常、ドキュメントに記載されているすべての REST API と SDK API では、インターフェイスが使用停止になる前に少なくとも 3 年間警告が発生します。
- お客様は、SDK アセンブリを最新のマイナー バージョンに更新する必要が生じる少なくとも 1 年前に通知されます。 これらの必須の更新は、同じメジャー バージョンに含まれているため、コードを変更する必要はありません。 最新の SDK を使用することは、セキュリティとパフォーマンスに関する更新を頻繁に必要とするリアルタイム コンポーネントである Calling および Chat ライブラリにとって特に重要です。 すべての Communication Services SDK を最新の状態に保つことを強くお勧めします。
API と SDK の廃止の例
v24 バージョンの SMS REST API をアプリケーションに統合しました。 Azure Communication では v25 がリリースされています。
これらの API の機能が停止し、v25 に強制的に更新される前に、3 年間警告が表示されます。 この更新ではコードの変更が必要になる場合があります。
v2.02 バージョンの Calling SDK をアプリケーションに統合しました。 Azure Communication では v2.05 がリリースされています。
v2.05 バージョンの Calling SDK への更新を、v2.05 のリリースから 12 か月以内に求められる場合があります。 これはコードを変更せず、成果物を単に置き換えるだけで済みます。v2.05 は v2 メジャー バージョンに含まれ、破壊的変更はないためです。
次の手順
詳細については、次の SDK の概要を参照してください。
Azure Communication Services の使用を開始するには: