CoAP(Constrained Application Protocol)是一种适用于资源受限的低功耗设备的通信协议。物联网平台支持CoAP的连接通信。您可以通过配置C Link SDK,将其接入阿里云物联网平台。
前提条件
定制SDK时,在SDK定制页面的连接物联网平台协议区域,选中CoAP。
功能原理
应用程序通过调用C Link SDK的API,基于CoAP的协议,与物联网平台建立的连接。
如下功能时序图,以设备的应用程序./demos/coap_basic_demo.c
为例,介绍应用程序实现该功能的流程。
CoAP接入API的更多信息,请参见aiot_coap_api.h。
使用限制
仅华东2(上海)、华北2(北京)、华南1(深圳)地域支持CoAP通信。
仅华东2(上海)地域支持设备使用CoAP短连接状态接入物联网平台。使用CoAP短连接的设备,在物联网平台控制台也有在线和离线状态变化。您可通过AMQP服务端订阅设备上下线状态变化时通知的消息。
暂时不支持资源发现。
仅支持UDP协议,目前支持DTLS和对称加密两种安全模式。
设备身份注册成功后,针对同一设备身份信息,只可选择一种通信协议接入物联网平台,不可多种类型通信协议同时混用。
使用说明
CoAP的URI资源和MQTT Topic保持一致,请参见MQTT协议规范。
Topic规范与MQTT Topic规范一致,CoAP协议内
coap://host:port/topic/${topic}
接口中的${topic}
可以复用MQTT Topic。客户端缓存认证返回的Token是请求的令牌。
传输的数据大小依赖于MTU的大小,建议在1 KB以内。
如果设备在10分钟内使用CoAP协议上报过数据,则设备在物联网平台控制台显示为在线状态。
使用示例
CoAP接入功能的参考示例,请参见使用示例。
CoAP接入功能相关错误码,请参见aiot_coap_api.h中的状态码描述。