Bridge Apps
Bridge App支持Socket.IO,使ProtoPie Connect与硬件、API、应用之间可以通信。Bridge App可以识别事件,接收来自服务器的数据,有时还可以作为一个单独的应用工作。通过Socket.IO消息,ProtoPie Connect可以识别事件和数据。
直接使用或参考我们的Bridge App示例,制作您自己的Bridge App(需要编程)。
在GitHub上获取我们的Bridge App示例。
通过Bridge App连接硬件
当通过Bridge App连接硬件和ProtoPie Connect时,其主要作用是将硬件的信号转换为Socket.IO消息发送给ProtoPie Connect,反之亦然。
- 将Bridge App直接连接到ProtoPie Connect Socket.IO服务器。该服务器用IP地址端口号为9981。
- Bridge App将硬件信号转换为Socket.IO消息,使ProtoPie可以理解。通常,消息会有以下格式。
◦ {messageId: "HwEventName", value: "ValueAssociatedWithEvent"} - ProtoPie Connect会将收到的所有Socket.IO消息,发送到原型中。
- 收到这些消息的原型将对其作出反应。有些硬件支持双向通信,所以原型可以向硬件发送消息。这只有在Bridge App能够将Socket.IO消息转换为硬件能够解释的信号时才能实现。
通过Bridge App连接API
当通过桥接应用连接到 API 时,Bridge App将API(如 JSON)转换为单个的Socket.IO消息。
例如,如果一个原型需要从API搜索天气数据,则Bridge App将执行以下操作。
- 将JSON转换为Socket.IO消息
◦ 例如:{"weather": "sunny", "temperature-celsius": 30.5} - 向ProtoPie Connect发送单个Socket.IO消息,ProtoPie Connect会将消息转发给任何原型。
◦ {messageId: "weather", value: "sunny"},
◦ {messageId: "temperature", value: 30.5}
在原型中,您应该使用接收触发来接收“weather”和“temperature”这两条消息。了解更多有关接收触发的知识。
在同一台机器上运行Bridge App
大多数示例假定Bridge App和ProtoPie Connect在同一台设备上运行,因此默认地址为http://localhost:9981。
只需将Bridge App连接到ProtoPie Connect的http://localhost:9981。
![[object Object]](https://cdn.sanity.io/images/vidqzkll/production/0a9c6e8432b7e48b5534718bcd1dd00c7cc170b1-886x298.png/running-bridge-app-same-machine.png)
在不同的机器上运行Bridge App
如果Bridge App和 ProtoPie Connect在不同的机器上运行,则需设置ProtoPie Connect Socket.IO服务器。该服务器使用端口号为9981的IP地址来表示,并且不同于http://localhost:9981。
- ProtoPie Connect 安装型:在“管理(Manage)”页面中查看服务器地址。
![[object Object]](https://cdn.sanity.io/images/vidqzkll/production/1dbcf3055ac2b42ae0ecdd26c5a09fc5bef8bc17-2082x390.png/server-address-manage-tab.png)
- ProtoPie Connect 嵌入型:在运行终端后即可查找服务器地址。
![[object Object]](https://cdn.sanity.io/images/vidqzkll/production/fdd3c353047ddbdb7aadabe8e8e15fe14f46c225-2232x366.png/ip-address-embedded-systems.png)