我是靠谱客的博主 眼睛大凉面,最近开发中收集的这篇文章主要介绍基础(IOT)——阿里云的三元组是什么?怎么用?1. 三元组2. 用在哪?,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

IoT里面是根据『产品』对所有智能设备分类的。比如说智能台灯A是一个产品,智能插座B是另一个产品。每个产品根据productKey来区分。一个产品里面有很多台设备,每个设备都有一个deviceName和deviceSecret与之对应。通常把这三者联合起来称作三元组信息。

1. 三元组

阿里物联网平台的连接注册也需要用到“三元组”:

  • ProductKey
  • DeviceName
  • DeviceSecret

这个三元组并不是直接拿来用的,而是需要按照官方设定的协议规则得到UserName、PassWord、ClientID、IP这几个参数,规则就是:

参数阿里云物联网平台参数
UserName{DeviceName}&{ProductKey}
PassWord通过下面的算法获取
ClientID{随便定}|securemode=3,signmethod=hmacsha1,timestamp=789|
IP{ProductKey}.iot-as-mqtt.cn-shanghai.aliyuncs.com

PassWord生成:

一般来说,hmac_sha1进行编码时会有两个参数:Key和value。

  • Key对应三元组中的:DeviceSecret
  • value就要复杂一点(XXXX,替换成实际的值):clientIdXXXXdeviceNameXXXXproductKeyXXXXXXtimestamp789
     

2. 用在哪?

2.1 MQTT协议用到的

MQTT3.1.1协议中CONNECT 报文的有效载荷(payload) 包含一个或多个以长度为前缀的字段,可变报头中的标志决定是否包含这些字段。 如果包含的话, 必须按这个顺序出现:客户端标识符, 遗嘱主题, 遗嘱消息, 用户名

例如通过mqtt协议连接阿里云,连接函数可以定义成如下,这里入口参数就用到了上面的三个参数,客户端标识符、 用户名、 密码

uint8_t mqtt_connect(char *ClientID,char *Username,char *Password)

函数的中入口参数具体如何使用按照协议规定来就好。

2.2 wifi模块等连网设备用到的

会用到ip地址,例如esp8266在使用AT指令连接服务器时,AT+CIPSTART,就会用到服务器的IP地址。

 

 

最后

以上就是眼睛大凉面为你收集整理的基础(IOT)——阿里云的三元组是什么?怎么用?1. 三元组2. 用在哪?的全部内容,希望文章能够帮你解决基础(IOT)——阿里云的三元组是什么?怎么用?1. 三元组2. 用在哪?所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(69)

评论列表共有 0 条评论

立即
投稿
返回
顶部