使用nodejs作为用户端接入氦氪云平台-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3939|回复: 0

使用nodejs作为用户端接入氦氪云平台

[复制链接]
发表于 2017-8-15 11:25 | 显示全部楼层 |阅读模式
这次我们用实例来看看如何用nodejs作为用户端接入氦氪云。
https://github.com/LawrenceDon/nodejs-user-hekr可以获得最新的代码。

user.js功能:
在命令行窗口可以看到:
1.设备实时上报数据。
2.设备login通知。
3.设备logout通知。
4.任何其他的由云端发送给用户端的数据。

在命令行窗口可以执行以下指令:
1.eval:1+1
   eval:后面可以跟任何的javascript语句,我们可以查看当前脚本中的变量和执行其中的函数。
   示例:
   1.eval:cls()
      清屏。
   2.eval:sendDataToDevice("xxxxxx","yyyyyy",'"raw":"48070201010154"',app.mainTCPLink)
      向devTid为"xxxxxx",ctrlKey为"yyyyyy"的设备发送协议数据"raw":"48070201010154"
   3.eval:sendDataToDevice("xxxxxx","yyyyyy",'"cmdId":2,"power":1',app.mainTCPLink)
      向devTid为"xxxxxx",ctrlKey为"yyyyyy"的设备发送协议数据"cmdId":2,"power":1
2.{"msgId" : 1,"action" : "heartbeat"}
   这样直接输入的JSON字符串必须符合氦氪云联网功能组件规范。

user-example.js功能:
在命令行窗口可以执行以下指令:
1.eval:1+1
   eval:后面可以跟任何的javascript语句,我们可以查看当前脚本中的变量和执行其中的函数。
   示例:
   1.eval:cls()
      清屏。
   2.eval:sendDataToDevice("xxxxxx","yyyyyy",'"raw":"48070201010154"',app.mainTCPLink)
      向devTid为"xxxxxx",ctrlKey为"yyyyyy"的设备发送协议数据"raw":"48070201010154"  
       1.png
   3.eval:sendDataToDevice("xxxxxx","yyyyyy",'"cmdId":2,"power":1',app.mainTCPLink)
      向devTid为"xxxxxx",ctrlKey为"yyyyyy"的设备发送协议数据"cmdId":2,"power":1
       2.png
   4.eval:showStatus()
      显示 带小夜灯的温湿度计 和 SDK演示插座 这两个设备的状态。
       3.png
   5.eval:devices[0]
      查看本程序中 带小夜灯的温湿度计 这个设备的对象内容。
       4.png
   6.eval:devices[0].actions.on()
      打开 带小夜灯的温湿度计 设备的小夜灯。
       5.png
   7.eval:devices[0].actions.off()
      关闭 带小夜灯的温湿度计 设备的小夜灯。
       6.png
   8.eval:devices[0].actions.query()
      查询 带小夜灯的温湿度计 的当前状态。
       7.png
   9.eval:devices[1]
      查看本程序中 SDK演示插座 这个设备的对象内容。
       8.png
10.eval:devices[1].actions.on()
      打开 SDK演示插座 设备的开关。
       9.png
11.eval:devices[1].actions.off()
      关闭 SDK演示插座 设备的开关。
       10.png
12.eval:devices[1].actions.query()
      查询 SDK演示插座 的当前状态。
       11.png

2.{"msgId" : 1,"action" : "heartbeat"}
   这样直接输入的JSON字符串必须符合氦氪云联网功能组件规范。

当 带小夜灯的温湿度计 设备上报的当前状态中小夜灯为开时,桌面会跳出一个对话框。
12.png

当 SDK演示插座 设备上报的当前状态中开关为开时,桌面会跳出一个对话框。
13.png

在命令行窗口执行eval:logOn()之后,在命令行窗口可以看到:
1.设备实时上报数据。
2.设备login通知。
3.设备logout通知。
4.任何其他的由云端发送给用户端的数据。

备注:
1.在玩user-example.js之前,请先按照以下的教程建立产品,并在丛云APP添加设备。
   氦氪云入门教程03-使用氦氪透传协议的温湿度计
   氦氪云入门教程04-基于氦氪主控协议的作品-SDK演示插座

2.可以使用教程 氦氪云入门教程06-在PC端调试H5设备控制页面 中用到的设备列表页面获取某个设备的devTid和ctrlKey。

nodejs-user-hekr-master20170801.zip

9.2 KB, 下载次数: 1

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 01:42 , Processed in 0.186493 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表