泰基Web/app 与硬件网关通信协议

协议简述

1、MQTT协议
2、上报与下发采用Json文本格式描述各类设备属性
3、每个网关监听topi是唯一的,与net_code相关联
4、服务器监听的topi(一般一个共同的)要配置进网关,泰基提供专用出厂或工程配置软件。

1、下发命令put基本格式

每条下发的命令都符合该格式,服务器向网关推送Topi(每个网口不一样)。

  1. {
  2. "put": {
  3. }
  4. }

1、1 下发更新air属性

可以全部属性段或指定某俱体几个字段。

  1. {
  2. "put": {
  3. "air_panID": 0,
  4. "air_outID": 10,
  5. "NAME": "温控器",
  6. "POWER": "ON",
  7. "SPEED": "MIDDLE",
  8. "MODE": "HOT",
  9. "STMP": 20
  10. }
  11. }

备注:字段NAME是可选项

1、2 下发更新调光灯属性

可以全部属性段或指定某俱体几个字段。

  1. {
  2. "put": {
  3. "dim_id": 0,
  4. "dim_name": "调光灯带",
  5. "dim_value": 2,
  6. "dim_devID": 6,
  7. "dim_order": 1
  8. }
  9. }

备注:字段dim_name是可选项

1、3 下发更新强电开关类设备属性

可以全部属性段或指定某俱体几个字段。

  1. {
  2. "put": {
  3. "relay_id": 0,
  4. "relay_name": "吊灯",
  5. "relay_value": "OFF",
  6. "relay_devID": 12,
  7. "relay_order": 1
  8. }
  9. }

备注:字段relay_name是可选项,如果控制窗帘要补上子类字段 “relay_type”:”CURTAIN”,

2、设备上报命令基本格式

网关将最新的状态上报给服务器监听的统一主题,须要携带一个自身硬件码net_code

  1. {
  2. "net_code": "网关唯一硬件码最长22字符",
  3. "all_devs": {
  4. }
  5. }

备注:字段all_devs根据不同类型设备取不同值,all_airs,all_dims,all_relays,all_lsos

2、1 网关主动上报air属性

可以全部属性段或指定某俱体几个字段。

  1. {
  2. "net_code": "网关唯一硬件码最长22字符",
  3. "all_airs": {
  4. "air_panID": 9,
  5. "air_outID": 10,
  6. "NAME": "温控器",
  7. "POWER": "ON",
  8. "SPEED": "MIDDLE",
  9. "MODE": "HOT",
  10. "STMP": 20,
  11. "TMP": 25
  12. }
  13. }

备注:字段NAME是可选项

2、2 网关主动上报dim属性

可以全部属性段或指定某俱体几个字段。

  1. {
  2. "net_code": "网关唯一硬件码最长22字符",
  3. "all_dims": {
  4. "dim_name": "调光灯带",
  5. "dim_value": 2,
  6. "dim_devID": 6,
  7. "dim_order": 1
  8. }
  9. }

备注:字段dim_name是可选项

2、3 网关主动上报relay属性

可以全部属性段或指定某俱体几个字段。

  1. {
  2. "net_code": "网关唯一硬件码最长22字符",
  3. "all_relays": {
  4. "relay_name": "吊灯",
  5. "relay_value": "OFF",
  6. "relay_flow": 0,
  7. "relay_devID": 12,
  8. "relay_order": 1
  9. }
  10. }

备注:字段relay_name是可选项

2、4 网关主动上报lso传感器属性

可以全部属性段或指定某俱体几个字段。

  1. {
  2. "net_code": "网关唯一硬件码最长22字符",
  3. "all_lsos": {
  4. "lso_name": "门卡",
  5. "lso_value": "OFF",
  6. "lso_type": "CARD",
  7. "lso_devID": 12,
  8. "lso_order": 1
  9. }
  10. }

备注:字段lso_name是可选项
字作lso_type是传感器类型, ‘CARD’, ‘SOS’, ‘CHKIN’, ‘CLR’, ‘DND’, ‘CHKOT’, ‘MENC’, ‘IRED’, ‘GENIC’

3、使用例子

前题条件是知道网关接收的主题

3、1 开Relay强电回路/41_01

  1. {
  2. "put": {
  3. "relay_id": 0,
  4. "relay_value": "ON",
  5. "relay_devID": 41,
  6. "relay_order": 1
  7. }
  8. }

3、1 关Relay强电回路/41_01

  1. {
  2. "put": {
  3. "relay_id": 0,
  4. "relay_value": "OFF",
  5. "relay_devID": 41,
  6. "relay_order": 1
  7. }
  8. }

3、2 开Lso弱电回路/39_01

  1. {
  2. "put": {
  3. "lso_id": 0,
  4. "lso_value": "ON",
  5. "lso_devID": 39,
  6. "lso_order": 4
  7. }
  8. }

3、2 关Lso弱电回路/39_01

  1. {
  2. "put": {
  3. "lso_id": 0,
  4. "lso_value": "OFF",
  5. "lso_devID": 39,
  6. "lso_order": 4
  7. }
  8. }

3、3 开空调制冷_高风/70

  1. {
  2. "put": {
  3. "air_id": 0,
  4. "air_panID": 70,
  5. "POWER": "ON",
  6. "SPEED": "HIGH",
  7. "MODE": "COLD",
  8. "STMP": 20
  9. }
  10. }

3、3 开空调制冷_低风/70

  1. {
  2. "put": {
  3. "air_id": 0,
  4. "air_panID": 70,
  5. "POWER": "ON",
  6. "SPEED": "LOW",
  7. "MODE": "COLD",
  8. "STMP": 20
  9. }
  10. }