自定义插件
此功能仅在企业版中提供。
ProtoPie Connect内置的插件有:IFTTT、罗技G29方向盘、Arduino,以及blokdots。除此之外,订阅了企业版的用户还可以上传自己的自定义插件,从而将其原型与任何支持Socket.IO的硬件、API或应用程序通过ProtoPie Connect进行连接。
创建自定义插件
在ProtoPie Connect中,自定义集成可以通过自定义插件或者Bridge App来实现。然而,相对来说我们更推荐使用自定义插件方式而不是Bridge App方式。自定义插件文件是可移植的,因此使用这种方式更容易在团队成员之间实现共享。
以下即为创建自定义插件的步骤:
- 编写自己的插件代码或使用已有的Bridge App。
- 通过pkg Index.js命令将Bridge App编译为可独立执行的二进制文件,根据目标运行环境不同,可以通过参数指定多个编译目标(点击此处了解更具体的内容)。
pkg -t node16-macos-arm64 index.js
适用于Mac系统ARM处理器的情形pkg -t node16-macos-x64 index.js
适用于Mac系统Intel处理器的情形pkg -t node16-win-x64 index.js
适用于Windows系统
3. 将可执行文件复制到一个空的文件夹中,并命名为plugin
。创建一个名为metadata.json的文件,并在文件内容中按照{ "name": "name of the plugin" }
的形式添加上插件名称。
4. 压缩整个文件夹为一个.zip文件。至此,自定义插件已经就绪并可以使用。
5. 将自定义插件导入到ProtoPie Connect中,并在终端里执行这一插件。
点击此处可查看到一些自定义组件的范例。
什么是Bridge App?
Bridge App使ProtoPie Connect可以与任何支持Socket.IO的硬件、API或应用程序进行通信,同时Bridge App可以捕获事件、从服务器上接收数据,甚至可以作为一个独立的应用程序来完成一些工作。
为方便用户,这些在GitHub上的Bridge App可以直接下载使用或进行自定义修改。
通过Bridge App连接硬件
Bridge App的主要作用是将来自于硬件的信号转换为Socket.IO消息,反之亦然。这是因为Socket.IO消息可以被ProtoPie解读。
- 将Bridge App连接到ProtoPie Connect上。
- Bridge App将硬件信号转换为Socket.IO消息以供ProtoPie解读。通常传来的消息呈现类似这样的格式:
- {messageId: "HwEventName", value: "ValueAssociatedWithEvent"}
3. 原型通过ProtoPie Connect接收这些消息并作出相应的反应。有些硬件支持双向通
信,所以原型可以向硬件发送消息。但这只有在Bridge App能够将Socket.IO消息转
换为硬件可读的信号时才能实现。
通过Bridge App连接API
当通过Bridge App连接到API时,Bridge App将API响应(如JSON)转换为单个的Socket.IO消息。
例如,一个原型需要从API中动态获取天气数据,则Bridge App将执行以下操作:
- 将JSON转换为Socket.IO消息
- 例如 {"weather": "sunny", "temperature-celsius": 30.5}
2. 将单个Socket.IO消息发送给ProtoPie Connect,然后ProtoPie Connect会将
消息转发给各个原型。
- {messageId: "weather", value: "sunny"},
- {messageId: "temperature", value: 30.5}
在原型中,需要设置接收触发来接收“weather”消息和“temperature”消息。了解更多关于接收触发动作的知识。
在同一台机器上运行Bridge App
大多数Bridge App使用http://localhost:9981作为默认的IP地址,即假定Bridge App和ProtoPie Connect运行在同一台机器上。
在不同的机器上运行Bridge App
如果Bridge App和ProtoPie Connect在不同的机器上运行,则需要修改IP地址设置以匹配ProtoPie Connect服务器的IP地址。
- ProtoPie Connect安装型:服务器IP地址显示于界面左下方
- ProtoPie Connect嵌入型:在终端中启动后即可查看到服务器IP地址