银尔达物模型-HTTP通讯协议

 银尔达IOT物联网开发平台:iot.yinerda.com

更多资料访问:https://yinerda.yuque.com/yt1fh6/iot

功能支持4G设备的连接,管理;支持设备数据点定义,解析,处理,储存,统计;支持微信小程序/APP管理对接;通过电话、短信、微信、邮件等报警信息通知;支持服务与服务器对接;支持服务器边缘计算数据;支持私有化部署,log替换,特殊功能定制。


本文描述YED物模型协议的HTTPS通讯数据格式。HTTP协议用于低功耗,设备不常在线或者长期休眠场景。涉及到到服务器设置参数和设备上报状态2个命令。

注意HTTP协议之能做数据采集,监控使用,然后非实时控制设备。不能实时控制设备。如果需要实时控制设备,让设备及时响应,要用MQTT协议。

一、约定

HTTPS协议,编码是UTF-8,数据是JSON格式

服务器地址:https://iot.yinerda.com/device/dev_msg/http/产品ID

方法:POST

头部信息:Content_type=application/json

DevcieId=设备id

Body:银尔达物模型数据

二、设备管理说明

2.1、设备连接,

HTTPS 每个包的头部包含设备设备ID(产品ID_设备ID) 用于鉴权。

2.2、设备激活

只要设备授权了,并且与服务器有通讯,设备就算激活。

2.3、设备在线/离线

HTTP 协议设备是不经常连接服务器的。有2种情况。

一种是周期与服务器通讯的设备,如果超过1.5倍周期时间设备没有与服务器通讯,就说明设备离线了。比如通讯周期1个小时,超过1.5小时没通讯就离线了。

一种是长期不在线设备,这种无法检查设备是否直线,所以不提示设备是否在线。

这2种模式在创建产品的时候就要选择好,周期通讯时间也要提前设定,只是可以后期修改。永不在线,周期在线(单位分钟)。

2.4、服务器参数更新

当设备上报paramver后,服务器判断系统参数班,当服务器保存了设备的最新参数后,服务器需要返回当前最新的参数办号和参数。

当设备删除,解绑后,服务器不在返回新参数。

注意当设备删除,解绑后被重新绑定后需要强制返回新参数。

新设备的产生版本默认为0

2.5、消息ID

消息ID是设备上报数据的时候自带的,服务器在应答的时候需要返回一样的did给设备,表示是这个请求返回的数据。如果did和上一次相同,说明是重发的数据。

三、系统保留数据点

系统保留数据点,就是系统默认已经创建了一些必要的字段,用户不需要再重新创建,可以直接使用上传。如果这些字段的功能不满足你需求,可以重新创建其他名字的字段替代。

表示ID

显示名称

类型

读写

作用

imei

IMIE

字符串

只读

设备的IMEI编码,一般是4G模块有,唯一属性

支持IMEI编码的设备才上报,建议注册包上报一次

设备详情里面显示

mac

MAC

字符串

只读

设备的MAC地址

支持MAC地址的设备才上报,建议注册包上报一次

设备详情里面显示

iccid

ICCID

字符串

只读

SIM卡ICCID,可以用来管理SIM卡,查询SIM卡流量等,基本是必要的

建议注册包上报一次

设备详情里面显示

imsi

IMSI

字符串

只读

SIM卡IMSI,可以用来管理SIM卡,查询SIM卡的归属运营商等

建议注册包上报一次

设备详情里面显示

pver

硬件版本

字符串

只读

建议注册包上报一次

设备详情里面显示

fver

固件版本

字符串

只读

建议注册包上报一次

设备详情里面显示

rssi

信号强度

整形

只读

0-100% 用来指示设备信号强度,会显示在APP顶部状态栏中。

建议随着dup命令,周期心跳上报

控制顶部菜单信号强度显示

pele

电量

整形

只读

0-100% 用来指示设备电量,会显示在APP顶部状态栏中

只有能采集的才需要上报,建议随着dup命令,周期心跳上报

控制顶部菜单电量显示

paramver

参数版本

整形

只读

系统自动生成的,设备上传的比较实用

四、注册包命令-reg

设备连接服务器的时候发送,重新连接服务器的时候第一个发送的数据包。这些数据点是否系统默认给设备添加的,用户不需要去手动添加。服务器可以通过注册包判断设备重连。

功能

字段

类型

必须

值说明

功能字段

cmd

字符串

“dreg”,固定

消息ID

did

字符串

ICCID

iccid

字符串

SIM 卡ICCID,用来查询SIM卡信息

IMSI

imsi

字符串

SIM 卡IMSI,用来查询SIM卡信息

硬件版本

pver

字符串

固件版本

fver

字符串

信号强度

rssi

整形

时间戳

times

字符串

时间搓ms

参数版本

paramver

整形

当前参数版本

实例

{

“cmd”:“dreg”,

“did”:“1”,

“iccid”:“1234567891234567890000”,

“fver”:”DTU_1.1.1”

}

{

“cmd”:“dreg”,

“did”:“1”,

“iccid”:“1234567891234567890000”,

“fver”:”DTU_1.1.1”,

"paramver":0

}

服务器应答

功能

字段

类型

必须

值说明

功能字段

cmd

字符串

“dregbck”,固定

消息ID

did

字符串

与设备上报的消息ID相同

结果

rst

整形

0:表示成功

1:未授权

参数版本

paramver

整形

当前参数版本,

只有请求里面包含了paramver后,并且服务器有新参数后才需要返回

参数

param

JSON对象

当前参数

只有请求里面包含了paramver后,并且服务器有新参数后才需要返回

实例

{

“cmd”:“regbck”,

“did”:”1”,

“rst”:0

}

{

"cmd ": "regbck ",

"did ": "1 ",

"paramver":1,

"param": {

"sw1 ": 0,

"sw2 ": 1,

"alarmtemp1 ": [-100, 100],

"alarmtemp2 ": {

"HighTemp ": -100,

"LowTemp ": 100

}

}

}

五、设备主动上报数数据点命令-dup

设备主动上报状态,设备周期上报,设备状态变化后上报会用到。

功能

字段

类型

必须

值说明

功能字段

cmd

字符串

“dup”,固定

消息ID

did

字符串

时间戳

times

字符串

时间搓ms

参数版本

paramver

整形

当前参数版本

注意这个参数版本和下面的param没关系,只是服务器用来判断参数是否更新的

参数

param

数组

数组里面包含了实际设备需要的JSON数据点名称

实例

{

“cmd”:“dup”,

“did”:“12345678”,

“param”:

{

“sw1” :0,

“sw2”:1,

“alarmtemp1”:[-100,100],

}

}

服务器应答

功能

字段

类型

必须

值说明

功能字段

cmd

字符串

“dupbck”,固定

消息ID

did

字符串

与设备上报的消息ID相同

处理结果

rst

整形

0:成功

1:未授权

参数版本

paramver

整形

当前参数版本,

只有请求里面包含了paramver后,并且服务器有新参数后才需要返回

应答参数

param

数组

当前参数

只有请求里面包含了paramver后,并且服务器有新参数后才需要返回

成功实例

{

“cmd”:“dupbck”,

“did”:“12345678”,

“rst”:0

}

{

“cmd”:“dupbck”,

“did”:“12345678”,

“rst”:0,

"paramver":20,

"param": {

"sw1 ": 0,

"sw2 ": 1,

"alarmtemp1 ": [-100, 100],

"alarmtemp2 ": {

"HighTemp ": -100,

"LowTemp ": 100

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值