Azure Web PubSub Service は、開発者がリアルタイム機能と発行/サブスクライブ パターンを使用して Web アプリケーションを簡単に構築するのに役立つ Azure マネージド サービスです。 サーバーとクライアント間、またはクライアント間でリアルタイムの発行/サブスクライブ メッセージングを必要とするシナリオでは、Azure Web PubSub サービスを使用できます。 サーバーからのポーリングや HTTP 要求の送信が必要な従来のリアルタイム機能でも、Azure Web PubSub サービスを使用できます。
次の図に示すように、アプリ サーバー側でこのライブラリを使用して WebSocket クライアント接続を管理できます。
このライブラリを使用して、次の操作を行います。
- ハブとグループにメッセージを送信します。
- 特定のユーザーや接続にメッセージを送信します。
- ユーザーと接続をグループにまとめる。
- 接続を閉じる
- 既存の接続のアクセス許可を付与、取り消し、確認する
ソース コード | パッケージ | API リファレンス ドキュメント | 製品ドキュメント | サンプル
作業の開始
パッケージをインストールする
NuGet からクライアント ライブラリをインストールします。
dotnet add package Azure.Messaging.WebPubSub
前提条件
- Azure サブスクリプション。
- 既存の Azure Web PubSub サービス インスタンス。
WebPubSubServiceClient を作成して認証する
サービスと対話するには、 WebPubSubServiceClient クラスのインスタンスを作成する必要があります。 これを可能にするには、Azure portal でアクセスできる接続文字列またはキーが必要です。
var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));
例示
すべてのクライアントにテキスト メッセージをブロードキャストする
var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));
serviceClient.SendToAll("Hello World!");
すべてのクライアントに JSON メッセージをブロードキャストする
var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));
serviceClient.SendToAll(RequestContent.Create(
new
{
Foo = "Hello World!",
Bar = 42
}),
ContentType.ApplicationJson);
すべてのクライアントにバイナリ メッセージをブロードキャストする
var serviceClient = new WebPubSubServiceClient(new Uri(endpoint), "some_hub", new AzureKeyCredential(key));
Stream stream = BinaryData.FromString("Hello World!").ToStream();
serviceClient.SendToAll(RequestContent.Create(stream), ContentType.ApplicationOctetStream);
トラブルシューティング
コンソール ログの設定
サービスに対して行っている要求をさらに詳しく調べる場合は、 コンソールログを有効 にすることもできます。
次のステップ
これらのリソースを使用して、独自のアプリケーションの構築を開始します。