替换 Internet of Things Platform 服务
部署游戏应用程序后,需要一种方式来将加速计数据传输到云。要将该数据传输到云,可以使用 Node-RED,这是一个开源的图形流编辑器。使用 Node-RED 订阅 MQTT 数据,这些数据从智能手机传入并存储在云中的数据库内。但在使用 Node-RED 之前,我们需要将默认的平台服务替换为我包含在刚部署的应用程序中的服务。
2a
删除默认的 IoT Platform 服务
Internet of Things Platform Starter 样板包含一个 Node-RED 引擎,您将使用它来处理 IoT 消息。首先,需要从该 Starter 样板删除默认的 Watson IoT 服务。
- 您应该已登录到您的 IBM Cloud 帐户。如果没有,请。
- 转到 IBM Cloud 目录中的 。(也可以选择 Catalog > Boilerplates > Internet of Things Platform Starter 导航到这个 Starter 样板。)
- 在 App name 字段中,为应用程序输入一个唯一的名称,比如 myharlemshake,然后单击 Create。
- 等待状态从 Starting 更改为 Running。 点击查看大图
- 从左侧菜单中,单击 Connections。
- 对于默认的 Internet of Things Platform 服务,单击右上角的菜单,然后单击 Unbind service。
- 在显示的弹出消息中,选择 Delete this service instance,然后单击 OK。
- 提示重新暂存您的应用程序时,单击 Cancel。
2b
连接到已部署的游戏应用程序的 IoT 服务
现在您已删除默认的 iotf-service-free 服务,接下来需要创建一个连接,以连接所部署的游戏应用程序的 IoT 服务,并设置正确的安全级别。
- 单击 Connect existing 按钮。
- 选择 discover-iot-try-service,然后单击 Connect。
- 提示重新暂存您的应用程序时,单击 Restage。
- 等待状态变为 Running。
- 单击 discover-iot-try-service,然后单击 Launch。这会在 IBM Cloud 中启动 IBM Watson IoT Platform。
- 将鼠标悬停在左侧的图标列上。从左侧菜单中选择 Security。
- 编辑 Connection Security。
- 在 Default Rule 部分中的 Security Level 下,选择 TLS Optional,然后单击 Refresh compliance。
- 在窗口的右上角,单击 Save。
3
确保 MQTT 消息代理能接收数据
现在我们已成功连接到我在游戏应用程序中提供的 IoT 服务,下面需要使用 Node-RED 将传感器(加速计)数据存储在云中。
3a
保护 Node-RED 流编辑器
在打开 Node-RED 之前,必须配置一个用户名和密码才能访问应用程序中的 Node-RED 流。
- 您需要返回到游戏应用程序的 Cloud Foundry Apps 页面。在浏览器中,找到 Service Details 选项卡。从中选择 Cloud Foundry Apps。
- 从该表中,选择您的游戏应用程序的名称。
- 从左侧菜单中选择 Connections。
- 在状态的右侧,单击 Visit App URL。该 URL 应是您的应用程序名称,后跟 mybluemix.net(例如 https://myharlemshake.mybluemix.net)。备注:记下这个 URL,因为能使用它打开您的 Node-RED 实例。
- 要保护 Node-RED 实例,可以单击 Next。
- 选择用户名和密码。记下该信息。单击 Next。
- 单击 Finish。
- 单击 Go to your Node-RED flow editor。
- 输入您的用户名和密码,登录 Node-RED。
现在已准备好捕获并存储该数据了。您已部署了游戏应用程序,而且已在游戏应用程序与消息代理之间建立了连接。通信渠道工作正常,但需要一个位置来存储要发送的数据。 |