本日は Azure と HoloLens2 の技術調査枠です。
Azure の SignalRService を使ってサーバから HoloLens2 にデータを送信する方法を試したので作業記録を記事にします。
前回記事の続きです。
bluebirdofoz.hatenablog.com
クライアントアプリの作成
Azure Function のAPIを実行し、SignalR からの通知を受信するサンプルのクライアントアプリを作成します。
初めに参照の記事と同様に WPF アプリケーションのプロジェクトを作成します
プロジェクトの作成
VisualStudio2019 を起動し、[新しいプロジェクトの作成]から[WPF アプリケーション(C#)]を選択します。
プロジェクト名と作成ディレクトリを指定します。
[ターゲットフレームワーク]には[.NET Core 3.1]を選択し、[作成]をクリックします。
WPF アプリケーションのテンプレートプロジェクトが作成されます。
参照の記事に合わせて MainWindow.xaml ファイルを編集します。
MainWindow.xaml.cs ファイルも同様に編集して実行関数を追加します。
ただしデフォルトでは Microsoft.AspNetCore.SignalR.Client の参照がないため、エラーが表示されます。
ライブラリ参照の追加
Microsoft.AspNetCore.SignalR.Client の参照を追加します。
メニューから[プロジェクト -> NuGetパッケージの管理]を選択します。
[参照]タブを開き、[パッケージソース]に[nuget.org]を指定します。
[Microsoft.AspNetCore.SignalR.Client]を検索し、[インストール]を実行します。
変更のプレビューダイアログとライセンスへの同意ダイアログが表示されるので確認して進めます。
これで Microsoft.AspNetCore.SignalR.Client の参照が追加できました。
アプリケーションのビルド
MainWindow.xaml.cs ファイルに Azure Function へのアクセスURLを設定します。
メニューから[ビルド -> ソリューションのビルド]を実行してビルドします。
作成した exe ファイルを起動します。
通知と受信の確認をするため、アプリを2つ起動して[Connect]ボタンをクリックします。
SignalR Service への接続が成功すると[Connected!]の文字列が表示されます。
片方のアプリで[Broadcast]ボタンをクリックしてみます。
SignalR Service に時刻情報が通知され、両方のアプリに受信した文字列が表示されます。
長くなったので分けます。
次は Authorization level を Function にした場合の設定方法です。
bluebirdofoz.hatenablog.com