ブリッジアプリ
ブリッジアプリは、Socket.IOをサポートするハードウェア、API、またはアプリとProtoPie Connect間の通信を可能にします。 ブリッジアプリは、イベントを感知して、サーバーからデータを受信、場合によっては単一のアプリケーションとして機能します。 Socket.IOからのメッセージを介して、ProtoPie Connectはイベントとデータを解釈します。
サンプルのブリッジアプリを使用、調整するか、または独自のブリッジアプリを作成しましょう(コーディングが必要です)。
GitHubからサンプルのブリッジアプリを見つけることもできます。
ブリッジアプリを介してハードウェアを接続する
ブリッジアプリを介してハードウェアをProtoPie Connectに接続する場合、ブリッジアプリは信号をハードウェアからSocket.IOメッセージに、またはその逆に変換します。
- ブリッジアプリをProtoPie ConnectのSocket.IOサーバーに直接接続します。 サーバーは、ポート番号9981のIPアドレスを使用します。
- ブリッジアプリは、ハードウェアからの信号をProtoPieが理解できるようにSocket.IOメッセージに変換します。 通常、メッセージの形式は次のとおりです。
◦ {messageId:"HwEventName"、value:"ValueAssociatedWithEvent"} - ProtoPie Connectは、送信されたすべてのSocket.IOメッセージをプロトタイプに中継します。
- 上記3で受信したすべてのメッセージに対してプロトタイプが応答します。 一部のハードウェアは双方向通信をサポートしているため、プロトタイプもハードウェアにメッセージを送信することができます。 ただし、ブリッジアプリがSocket.IOメッセージをハードウェアが解釈できる信号に変換できる場合にのみ可能です。
ブリッジアプリを通してAPIを接続する
ブリッジアプリを介してAPIに接続する場合、ブリッジアプリはAPI応答(JSONなど)を個々のSocket.IOメッセージに変換する必要があります。
たとえば、プロトタイプがAPIから気象データを取得する必要がある場合、ブリッジアプリは次のことを行います。
- JSON応答をSocket.IOメッセージに変換します。
◦ 例: {"weather": "sunny", "temperature-celsius": 30.5} - 個々のSocket.IOメッセージをProtoPie Connectに送信し、ProtoPie Connectがそれらを任意のプロトタイプに中継します。
◦ {messageId: "weather", value: "sunny"},
◦ {messageId: "temperature", value: 30.5}
プロトタイプでは、受信トリガーを使用して、「天気」と「温度」の両方のメッセージを受信する必要があります。 受信トリガーについての詳細はこちらをご参照ください。
同じマシンでブリッジアプリを作動させる
ProtoPie Connectとブリッジアプリは、同じコンピューターまたはマシンで実行される想定で、デフォルトでは、http://localhost:9981のアドレスが設定されています。
ブリッジアプリをProtoPie Connect に接続するにはhttp://localhost:9981に接続します。
![[object Object]](https://cdn.sanity.io/images/vidqzkll/production/0a9c6e8432b7e48b5534718bcd1dd00c7cc170b1-886x298.png/running-bridge-app-same-machine.png)
異なるマシンでブリッジアプリを作動させる
ブリッジアプリとProtoPieConnectを異なるマシンで実行する場合は、アドレスをProtoPie ConnectのSocket.IOサーバーに設定します。 このサーバーは、ポート番号9981のIPアドレスを使用します。http://localhost:9981とは異なりますのでご注意ください。
- ProtoPie Connect for Desktopの場合:管理タブ(Manage tab)でサーバーアドレスを確認してください。
![[object Object]](https://cdn.sanity.io/images/vidqzkll/production/1dbcf3055ac2b42ae0ecdd26c5a09fc5bef8bc17-2082x390.png/server-address-manage-tab.png)
- ProtoPie Connect for Embedded Systemsの場合: ターミナルを起動したあとすぐの画面にてアドレスを確認できます。
![[object Object]](https://cdn.sanity.io/images/vidqzkll/production/fdd3c353047ddbdb7aadabe8e8e15fe14f46c225-2232x366.png/ip-address-embedded-systems.png)