第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 阿里云物联网平台 > 设备接入 > 使用开放协议自主接入 > CoAP协议接入 >

阿里云物联网平台 > 设备接入 > 使用开放协议自主接入 > CoAP协议接入 >

时间:2019-05-10 15:40:19

相关推荐

阿里云物联网平台 > 设备接入 > 使用开放协议自主接入 > CoAP协议接入 >

CoAP连接通信

更新时间:-08-27 17:20:05

编辑我的收藏

本页目录

基础流程使用对称加密自主接入使用DTLS自主接入

物联网平台支持CoAP协议连接通信。CoAP协议适用在资源受限的低功耗设备上,尤其是NB-IoT的设备使用。本文介绍基于CoAP协议进行设备接入的流程,及使用DTLS和对称加密两种认证方式下的自主接入流程。

基础流程

基于CoAP协议将NB-IoT设备接入物联网平台的流程如下图所示。

基础流程说明如下:

在设备端NB-IoT模块中,集成阿里云物联网平台SDK。厂商在物联网平台的控制台申请设备证书(ProductKey、DeviceName和DeviceSecret)并烧录到设备中。NB-IoT设备通过运营商的蜂窝网络进行入网。需要联系当地运营商,确保设备所属地区已经覆盖NB网络,并已具备NB-IoT入网能力。设备入网成功后,NB设备产生的流量数据及产生的费用数据,将由运营商的M2M平台管理。此部分平台能力由运营商提供。设备开发者可通过CoAP/UDP协议,将设备采集的实时数据上报到阿里云物联网平台,借助物联网平台,实现海量亿级设备的安全连接和数据管理能力。并且,可通过规则引擎,将数据转发至阿里云的大数据产品、云数据库、表格存储等服务中进行处理。物联网平台提供相关的数据开放接口和消息推送服务,可将数据转发到业务服务器中,实现设备资产与实际应用的快速集成。

使用对称加密自主接入

连接CoAP服务器。Endpoint地址: 华东2(上海)地域,公共实例的Endpoint地址为${YourProductKey}.-shanghai.:${port}${YourProductKey}:请替换为设备所属产品的的ProductKey。可从物联网平台控制台设备详情页获取。${port}:端口。使用对称加密时端口为5682。您可以在华东2(上海)、华北2(北京)、华南1(深圳)地域购买实例。购买的实例的Endpoint地址,请在物联网平台控制台实例管理页面,单击实例对应的查看,进入实例详情页查看。设备认证。

设备认证请求:

POST /authHost: ${YourEndpoint}Port: 5682Accept: application/json or application/cborContent-Format: application/json or application/cborpayload: {"productKey":"a1NUjcV****","deviceName":"ff1a11e7c08d4b3db2b1500d8e0e55","clientId":"a1NUjcV****&ff1a11e7c08d4b3db2b1500d8e0e55","sign":"F9FD53EE0CD010FCA40D14A9FE******", "seq":"10"}

返回结果示例:

{"random":"ad2b3a5eb51d6****","seqOffset":1,"token":"MZ8m37hp01w1SSqoDFzo001050****.ad2b"}

上报数据。

上报数据请求:

POST /topic/${topic}Host: ${YourEndpoint}Port: 5682Accept: application/json or application/cborContent-Format: application/json or application/cborpayload: ${your_data}CustomOptions: number:2088(标识token), 2089(seq)

消息上行成功后,返回成功状态码,同时返回物联网平台生成的消息ID。

使用DTLS自主接入

连接CoAP服务器。Endpoint地址: 华东2(上海)地域,公共实例的Endpoint地址为${YourProductKey}.-shanghai.:${port}。 ${YourProductKey}:请替换为设备所属产品的ProductKey。可从物联网平台控制台设备详情页获取。${port}:端口。使用DTLS时,端口为5684。您可以在华东2(上海)、华北2(北京)、华南1(深圳)地域购买实例。购买的实例的Endpoint地址,请在物联网平台控制台实例管理页面,单击实例对应的查看,进入实例详情页查看。如果您使用我们提供的设备端SDK,则DTLS安全通道默认使用PSK加密算法。如果您未使用我们提供的设备端SDK,则需要下载DTLS安全通道根证书,自行使用DTLS库连接物联网平台,PSK对应的加密方式如下:

psk_id: "${authType}" + "|" + "${signMethod}" + "|" + "${productKey}" + "&" + "${deviceName}" + "timestamp"psk: signMethod(DeviceSecret, "${productKey}" + "&" + "${deviceName}" + "${timestamp}")

设备认证。使用auth接口认证设备,获取Token。上报数据时,需携带Token信息。

设备认证请求:

POST /authHost: ${YourEndpoint}Port: 5684Accept: application/json or application/cborContent-Format: application/json or application/cborpayload: {"productKey":"ZG1EvTE****","deviceName":"NlwaSPXsCpTQuh8FxBGH","clientId":"mylight1000002","sign":"bccb3d2618afe74b3eab12b94042****"}

除Port参数外,其他参数及Payload内容说明,可参见使用对称加密自主接入。

返回结果示例:

response:{"token":"f13102810756432e85dfd351eeb4****"}

上行数据。

设备发送数据到某个Topic。

自定义Topic,在物联网平台的控制台,设备所属产品的产品详情页的Topic类列表栏中进行创建。

目前,只支持发布权限的Topic用于数据上报,如/${YourProductKey}/${YourDeviceName}/pub。假设当前设备名称为device,所属产品的ProductKey为a1GFjLP****,那么您可以调用a1GFjLP****.-shanghai.:5684/topic/a1GFjLP****/device/pub地址来上报数据。

上报数据请求:

POST /topic/${topic}Host: ${YourEndpoint}Port: 5684Accept: application/json or application/cborContent-Format: application/json or application/cborpayload: ${your_data}CustomOptions: number:2088(标识token)

上一篇:CoAP协议规范

下一篇:HTTP协议规范

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。