クイックスタート: CLI から Azure Web PubSub インスタンスに接続する
このクイックスタートでは、Azure CLI を使用して、Azure Web PubSub インスタンスに接続し、接続されているクライアントにメッセージを発行する方法について説明します。
Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。
前提条件
Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の Bash のクイックスタート」を参照してください。
CLI リファレンス コマンドをローカルで実行する場合、Azure CLI をインストールします。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。
ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、Azure CLI でのサインインに関するページを参照してください。
初回使用時にインストールを求められたら、Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、Azure CLI で拡張機能を使用する方法に関するページを参照してください。
az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。
- このクイックスタートには、Azure CLI のバージョン 2.22.0 以降が必要です。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。
リソース グループを作成する
リソース グループとは、Azure リソースのデプロイと管理に使用する論理コンテナーです。 az group create コマンドを使用して、myResourceGroup
という名前のリソース グループを eastus
の場所に作成します。
az group create --name myResourceGroup --location EastUS
Web PubSub インスタンスを作成する
az extension add を実行して、webpubsub 拡張機能をインストールするか、最新バージョンにアップグレードします。
az extension add --upgrade --name webpubsub
Azure CLI の az webpubsub create コマンドを使用して、作成したリソース グループに Web PubSub を作成します。 次のコマンドは、EastUS のリソース グループ myResourceGroup の下に "無料の" Web PubSub リソースを作成します。
重要
Web PubSub リソースには、それぞれ一意の名前を付ける必要があります。 次の例では、<your-unique-resource-name> をお使いの Web PubSub の名前に置き換えてください。
az webpubsub create --name "<your-unique-resource-name>" --resource-group "myResourceGroup" --location "EastUS" --sku Free_F1
このコマンドの出力では、新しく作成したリソースのプロパティが表示されます。 次の 2 つのプロパティをメモしておきます。
- Resource Name: 上記の
--name
パラメーターに指定した名前です。 - hostName: この例では、ホスト名は
<your-unique-resource-name>.webpubsub.azure.com/
です。
この時点で、お使いの Azure アカウントのみが、この新しいリソースで任意の操作を実行することを許可されています。
インスタンスを操作する
サービスに接続する
次の情報を指定した Azure CLI の az webpubsub client コマンドを使用して、前の手順で作成したサービスへの WebSocket クライアント接続を開始します。
- ハブ名: 1 から 127 文字の文字列。 これは、英文字
(a-z, A-Z)
から始まる必要があり、使用できる文字は英数字(0-9, a-z, A-Z)
とアンダースコア(_)
のみです。
ハブは、接続された WebSocket 接続の論理セットです。 この概念の詳細については、ハブ、グループ、接続の概要に関する記事を参照してください。
重要
<your-unique-resource-name> を、前の手順で作成した Web PubSub リソースの名前に置き換えてください。
- ハブ名: myHub1
- リソース グループ名: myResourceGroup
- ユーザー ID: user1
az webpubsub client start --name "<your-unique-resource-name>" --resource-group "myResourceGroup" --hub-name "myHub1" --user-id "user1"
このコマンドによって Web PubSub サービスへの WebSocket 接続が確立されたこと、および現在正常に接続され、一意の connectionId
が割り当てられていることを示す JSON メッセージが表示されていることが分かります。
{"type":"system","event":"connected","userId":"user1","connectionId":"<your_unique_connection_id>"}
試しに、joingroup <group-name>
を使用してグループに参加し、sendtogroup <group-name>
を使用してグループにメッセージを送信してみてください。
joingroup group1
sendtogroup group1 hello
メッセージを発行してクライアントを管理する
Azure CLI には、クライアント接続を管理するための az webpubsub service コマンドも用意されています。
別の CLI コマンドを開き、すべてのクライアントにメッセージをブロードキャストできます。
- ハブ名: myHub1
- リソース グループ名: myResourceGroup
az webpubsub service broadcast --name "<your-unique-resource-name>" --resource-group "myResourceGroup" --hub-name "myHub1" --payload "Hello World"
前の CLI コマンドに戻り、クライアントがメッセージを受信したことを確認できます。
{"type":"message","from":"server","dataType":"text","data":"Hello World"}
--help
オプションを使用して使用可能なすべてのコマンドを一覧表示し、表示されたコマンドを試してみることもできます。
az webpubsub service --help
次の手順
このクイックスタートでは、Web PubSub サービスに接続する方法と、接続されているクライアントにメッセージを発行する方法の基本概念について説明しています。
実際のアプリケーションでは、さまざまな言語の SDK を使用して独自のアプリケーションを構築できます。 また、サーバーレス アプリケーションを簡単に構築するための関数の拡張機能も用意しています。
これらのリソースを使用して、独自のアプリケーションの構築を開始します。