全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 更多
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 智能硬件
阿里云物联网套件

传输协议相关问题

更新时间:2017-09-08 10:59:15

MQTT协议同样的clientID在不同的地方连接服务器,如何去重?

clientID全球唯一,两个相同的clientID同时连接IoT套件的话,先连接的那个会被强制断开。

QoS Level支持哪几个?

目前阿里云物联网套件无论是MQTT还是CCP协议,支持的QoS Level都包括0和1。

MQTT和CCP协议的心跳时间为多少?

心跳时间是可以设置的,最小为60秒,最大是30分钟,demo里面默认设置是180秒。

如何获取CCP协议RPC消息中对应设备编号?

可以通过HTTP header中读取x-ca-client-deviceid属性。RPC服务器调用您的服务器的header如下:{“connection”: “close”, “user-agent”: “AliOpenAPI/1.0”, “x-ca-client-deviceid”: “0wP7qr94fam7jK2Ug”, “x-ca-client-appid”: “1000064822”, “x-forwarded-for”: “42.120.74.101”, “content-type”: “application/octet-stream”, “host”: “121.40.178.139:1880”, “content-length”: “43”}。

ECS端是否可以监听MQTT消息?如果可以,如何监听?

服务端提供了SDK,调用接口订阅指定的Topic即可,如果消息量很大,需要用户自己的ECS端做好负载均衡,后续规则引擎对接MNS上线后会帮用户减轻这方面的工作量。

MQTT协议pub消息payload格式是怎样的?

阿里云IoT套件不会制定pub消息payload具体字段有那些,需要客户根据应用场景制定自己的协议,然后以JSON格式放到pub消息载体里面传给服务端。

硬件上传的数据为16进制数据,服务端通过消息队列获取消息,php解析payload 这边是通过 bin2hex(base64_decode(payload))来获取数据…但是得到的结果和上传的16进制不一致。服务端接收mqtt上传的16进制数据怎么进行解析?

设备数据到队列:设备通过mqtt publish发送数据 payload(byte[])到服务器,物联网套件把payload做base64传输给队列,用户收到数据需要base64decode, 拿到的是mqtt pulish一样的byte[] 内容。和是否hex 没有关系。

之前开发杭州站点SDK还能获取到Clinent的数据结构中的链接状态,华东2的SDK 没有这个了,如何能获取连接状态,发现给的sample中 如果网线拔了,压根没有任何反馈,也没看见有心跳的打印信息。重新接上网线也不会自动上线。

我们的sample是为了描述协议而提供的简单示例, 不是开箱即用的成熟业务代码, 在应用到业务中的时候, 需要用户自主编写异常处理逻辑比如网线被拔了, 网线又插上了之类. 另外, 如果说没有接口可以查询状态, 这是不合适的, 我们提供 aliot_mqtt_check_state_normal() 函数, 可以查看 MQTT 连接是否正常。

http协议什么时候上线?为啥MQTT协议都上线了,http反而没上,阿里云不是早就支持http吗?

http协议已经上线,具体参考文档:https://help.aliyun.com/document_detail/57927.html?spm=5176.doc58234.6.643.2vThMK服务端已经发布, 用户可以根据协议自行实现

http协议为什么不支持下行,只支持上行?用mqtt的话,一个实例可以支持多少台设备接入?接入设备多了,会不会影响通讯?比如出现延迟?

产品规划实现有一定的成本,而且这种短链接下行也不及时,应用场景有限,所以排期靠后一些,会跟coap协议一起规划下行,但短期内没有计划。如果需要上下行现在来说,推荐使用mqtt。我们不是实例型产品,只有单设备流控,您不用关心数量问题。

本文导读目录