美文网首页
OneNET物联网MQTT协议之发送命令

OneNET物联网MQTT协议之发送命令

作者: 羋学僧 | 来源:发表于2021-02-01 14:54 被阅读0次

OneNET物联网MQTT协议之发送命令

请求方式:POST

URL:http://api.heclouds.com/cmds

URL参数

参数名称 格式 是否必须 说明
device_id string 接收该数据的设备ID
qos int 是否需要设备应答,默认为0。 0:最多发送一次,不关心设备是否响应 1:至少发送一次,如果设备收到命令后没有应答,则会在下一次设备登录时若命令在有效期内(有效期定义参见timeout参数)则会重发该命令
timeout int 命令有效时间,默认0。 0:在线命令,若设备在线,下发给设备,若设备离线,直接丢弃 >0: 离线命令,若设备在线,下发给设备,若设备离线,在当前时间加timeout时间内为有效期,有效期内,若设备上线,则下发给设备 单位:秒 有效范围:0~2678400

http body内容

用户自定义数据:json、string、二进制数据(小于64K)

http请求返回参数

参数名称 格式 说明
errno int 调用错误码,为0表示调用成功
error string 错误描述,为"succ"表示调用成功
data json 接口调用成功之后返回的设备相关信息,见data描述表
data描述表
参数名称 格式 说明
cmd_uuid string 命令id,平台范围内唯一

请求示例1

POST http://api.heclouds.com/cmds?device_id=8029377 HTTP/1.1

<this is a command>

返回示例1:成功创建命令

{
    "errno": 0,
    "error": "succ",
    "data": {
        "cmd_uuid": "81572aae-fc34-5deb-8f06-ab45d73cb12b"
    }
}

返回示例2:设备不在线

{
    "errno": 10,
    "error": "device not online: 8029377"
}

请求示例2:发送离线命令且需要设备应答

POST http://api.heclouds.com/cmds?device_id=8029377&qos=1&timeout=3600 HTTP/1.1

<this is a command>

返回示例

{
    "errno": 0,
    "error": "succ",
    "data": {
        "cmd_uuid": "81572aae-fc34-5deb-8f06-ab45d73cb12b"
    }
}

Python示例

设备下发命名内容 (字符串下发)

下发命令是自己设备端自定义的命令规则

{
    "func":"sethrkeyval",
    "key": "S_SET_MUTE",  # 消音
    # "key": "S_RUN_RESET", # 复位
    "value":1
}

代码示例

import json
import requests

device_id = ******

url = "http://api.heclouds.com/cmds?device_id={}".format(device_id)

payload = {
    "func":"sethrkeyval",
    "key": "S_SET_MUTE",  # 消音
    # "key": "S_RUN_RESET", # 复位
    "value":1
}

headers = {
  'api-key': 'mopTrQSq********=',
  'Content-Type': 'application/json'
}


response = requests.request("POST", url, headers=headers, data=json.dumps(payload))

print(response.text)

运行结果

{"errno":0,"data":{"cmd_uuid":"75e76821-e80c-5e22-8ff0-9c46f0452c9e"},"error":"succ"}

相关文章

  • OneNET物联网MQTT协议之发送命令

    OneNET物联网MQTT协议之发送命令 请求方式:POST URL:http://api.heclouds.co...

  • 物联网知识整理

    物联网知识整理 协议对比 中移OneNet MQTT对比CoAP

  • MQTT协议简单实践

    MQTT协议简单实践 基于OneNet平台实现MQTT设备的消息上传与发布、订阅。 第一步: 在OneNet上注册...

  • MQTT协议简单实践

    MQTT协议简单实践 基于OneNet平台实现MQTT设备的消息上传与发布、订阅 第一步:在OneNet上注册账号...

  • MQTT协议

    MQTT轻量级物联网消息推送协议 1.概念 MQTT是机器对机器(M2M)/物联网(IoT)连接协议。它被设计为一...

  • 基于MQTT协议实现Broker

    写在前面: 前一篇文字<<基于MQTT协议谈谈物联网开发>>主要叙述了MQTT协议的编解码以及基于MQTT协议的一...

  • Android客户端通过Paho MQTT和Broker建立SS

    MQTT是物联网时代的基础通讯协议。Paho Mqtt Client是android应用开发中广泛使用的Mqtt ...

  • Android端基于Mqtt协议数据传输

    Android端基于Mqtt协议数据传输 关于Mqtt MQTT是一个机器对机器(M2M)/“物联网”连接协议。它...

  • 物联网mqtt协议

    mqtt协议学习与使用 一.先简单介绍一下mqtt协议 mqtt协议是基于Tcp/ip 的一种通信协议,是建立在可...

  • 乐联网MQTT服务使用说明

    1、简介 乐联网MQTT服务支持协议: MQTT 3.1 and 3.1.1,设备可以上传数据、接收控制命令并返回...

网友评论

      本文标题:OneNET物联网MQTT协议之发送命令

      本文链接:https://www.haomeiwen.com/subject/tugjtltx.html