Python 用 Azure Communication Network Traversal Package クライアント ライブラリ - バージョン 1.0.0
Azure Communication Network Traversal では、Azure Communication Servicesの TURN 資格情報を管理しています。
ユーザーに TURN 資格情報が提供されます。
免責事項
Python 2.7 の Azure SDK Python パッケージのサポートは、2022 年 1 月 1 日に終了しました。 詳細と質問については、https://github.com/Azure/azure-sdk-for-python/issues/20691 を参照してください
作業の開始
前提条件
- このパッケージを使用するには、Python 3.6 以降が必要です。
- Azure サブスクリプションが必要です
- デプロイ済みの Communication Services リソース。 Azure Portal またはAzure PowerShellを使用して設定できます。
パッケージをインストールする
pip を使用して Python 用 Azure Communication Identity クライアント ライブラリをインストールする: pip を使用して Python 用 Azure Communication Relay クライアント ライブラリをインストールします。
pip install azure-communication-identity
pip install azure-communication-networktraversal
主要な概念
例
Relay クライアントの初期化
次のセクションでは、次のような最も一般的な Azure Communication Network Traversal タスクの一部をカバーするコード スニペットを示します。
# You can find your endpoint and access token from your resource in the Azure Portal
import os
from azure.communication.networktraversal import CommunicationRelayClient
from azure.identity import DefaultAzureCredential
from azure.communication.identity import CommunicationIdentityClient
connection_str = "endpoint=ENDPOINT;accessKey=KEY"
endpoint = "https://<RESOURCE_NAME>.communication.azure.com"
# To use Azure Active Directory Authentication (DefaultAzureCredential) make sure to have
# AZURE_TENANT_ID, AZURE_CLIENT_ID and AZURE_CLIENT_SECRET as env variables.
# We also need Identity client to get a User Identifier
identity_client = CommunicationIdentityClient(endpoint, DefaultAzureCredential())
relay_client = CommunicationRelayClient(endpoint, DefaultAzureCredential())
#Youは接続文字列を使用して認証することもできます
identity_client = CommunicationIdentityClient.from_connection_string(self.connection_string)
relay_client = CommunicationRelayClient.from_connection_string(self.connection_string)
ユーザーを提供するリレー構成の取得
# We need a user from Identity
user = identity_client.create_user()
relay_configuration = relay_client.get_relay_configuration(user=user)
for iceServer in config.ice_servers:
assert iceServer.username is not None
print('Username: ' + iceServer.username)
assert iceServer.credential is not None
print('Credential: ' + iceServer.credential)
assert iceServer.urls is not None
for url in iceServer.urls:
print('Url:' + url)
ユーザーを指定せずにリレー構成を取得する
relay_configuration = relay_client.get_relay_configuration()
for iceServer in config.ice_servers:
assert iceServer.username is not None
print('Username: ' + iceServer.username)
assert iceServer.credential is not None
print('Credential: ' + iceServer.credential)
assert iceServer.urls is not None
for url in iceServer.urls:
print('Url:' + url)
RouteType を指定せずにリレー構成を取得する
# We need a user from Identity
user = identity_client.create_user()
relay_configuration = relay_client.get_relay_configuration(user=user, route_type=RouteType.NEAREST)
for iceServer in config.ice_servers:
assert iceServer.username is not None
print('Username: ' + iceServer.username)
assert iceServer.credential is not None
print('Credential: ' + iceServer.credential)
assert iceServer.urls is not None
for url in iceServer.urls:
print('Url:' + url)
トラブルシューティング
Azure Communication Relay クライアントは、 Azure Core で定義されている例外を発生させます。
次のステップ
その他のサンプル コード
フィードバックの提供
バグが発生した場合、または提案がある場合は、プロジェクトの [問題 ] セクションに問題を報告してください
共同作成
このプロジェクトでは、共同作成と提案を歓迎しています。 ほとんどの共同作成では、共同作成者使用許諾契約書 (CLA) にご同意いただき、ご自身の共同作成内容を使用する権利を Microsoft に供与する権利をお持ちであり、かつ実際に供与することを宣言していただく必要があります。 詳細については、 https://cla.microsoft.com を参照してください。
pull request を送信すると、CLA を提供して PR (ラベル、コメントなど) を適宜装飾する必要があるかどうかを CLA ボットが自動的に決定します。 ボットによって提供される手順にそのまま従ってください。 この操作は、Microsoft の CLA を使用するすべてのリポジトリについて、1 回だけ行う必要があります。
このプロジェクトでは、Microsoft オープン ソースの倫理規定を採用しています。 詳しくは、「Code of Conduct FAQ (倫理規定についてよくある質問)」を参照するか、opencode@microsoft.com 宛てに質問またはコメントをお送りください。
Azure SDK for Python