支付宝小程序-MQTT模拟器通过WSS接入阿里云IoT物联网平台

小程序效果:

1. 准备工作

1.1 注册阿里云账号

开通阿里云账号,并通过支付宝实名认证 https://www.aliyun.com

1.2 免费开通IoT物联网套件

产品官网 https://www.aliyun.com/product/iot

2. 控制台操作步骤

2.1 创建产品

 JSON格式 

2.2 产品功能定义

添加产品属性温度 temperature,湿度 humidity

2.3 注册设备

在产品下注册设备,获得身份三元组

3. 小程序操作

3.1 设备上线

3.2 上报数据

3.3 订阅主题和数据下行

先点击 订阅主题,再去控制台推送消息。

发布指令日志

小程序效果

4. 小程序开发过程

4.1 支付宝小程序socket接口适配

socket接口my.sendSocketMessage和my.onSocketMessage都是base64的string,不支持ArrayBuffer,需要自己转换

import miniBase64 from 'mini-base64';
miniBase64.arrayBufferToBase64()

4.2 阿里云IoT身份认证签名

const params = {
productKey: pageThat.data.productKey.trim(),
deviceName: pageThat.data.deviceName.trim(),
deviceSecret: pageThat.data.deviceSecret.trim(),
timestamp: Date.now(),
clientId: Math.random().toString(36).substr(2),
}
//1.生成clientId,username,password
const contentStr = "clientId" + params.clientId + "deviceName" + params.deviceName + "productKey" + params.productKey + "timestamp" + params.timestamp; var clientId = `${params.clientId}|securemode=2,signmethod=hmacsha1,timestamp=${params.timestamp}|`;
var username = `${params.deviceName}&${params.productKey}`;
var password = crypto.HmacSHA1(contentStr, params.deviceSecret).toString();

本文作者:wongxmig

原文链接

本文为云栖社区原创内容,未经允许不得转载。

【小程序案例】支付宝小程序-MQTT模器,IoT设备通过WSS接入阿里云IoT物联网平台的更多相关文章

  1. 微信小程序转支付宝小程序

    使用方法: npm install wx-alipay -g wxToalipay --src={{小程序源码目录}} --dest={{支付宝小程序目录,可缺省}} 点击回车后就可将微信小程序转换为 ...

  2. 【阿里云IoT+YF3300】15.阿里云物联网小程序构建

    2013年8月,“轻应用”概念提出,但是仅仅活跃四年随后淡出 ,直到2017年1月9号借助微信小程序成功续命.一时间,以微信小程序和支付宝小程序为代表的轻应用解决方案迅速贯穿多个环节,成为“万物互联” ...

  3. 使用MQTT.fx客户端接入阿里云

    一.前期准备. 1.关于MQTT连接的属性:https://www.cnblogs.com/mhtc/p/11112153.html 2.关于阿里云配置工具的使用:https://www.cnblog ...

  4. 在线工具生成接入信息mqtt.fx快速接入阿里云

    在线工具生成接入信息mqtt.fx快速接入阿里云 在使用阿里云获取的三元组信息进行接入的时候,往往需要加密生成接入信息之后才能进行接入,因此我根据阿里云提供的加密工具实现了一个阿里云物联网平台mqtt ...

  5. 小程序开发过程中常见问题[微信小程序、支付宝小程序]

    目录 一.样式中如何使用background-image呢? 二.使用自适应单位rpx类似于rem,布局尽量使用flex布局 三.万能的{{双大括号,用于在模版中输出变量 四.你想要的基础组件和API ...

  6. 微信小程序和支付宝小程序富文本使用

    微信小程序使用的是 1. wxml 页面元素的最简单使用 <rich-text nodes="{{这是你的数据}}"></rich-text>   2. j ...

  7. mqtt网关服务器连接阿里云关联物模型

    mqtt网关服务器连接阿里云关联物模型 卓岚专门为工业环境设计的RS485设备数据采集器/物联网网关,兼具串口服务器.Modbus网关.MQTT网关.RS485转JSON等多种功能于一体. 可以连接阿 ...

  8. Fundebug支付宝小程序BUG监控插件更新至0.2.0,新增test()方法,报错增加Page数据

    摘要: 0.2.0新增fundebug.test()方法,同时报错增加了Page数据. Fundebug提供专业支付宝小程序BUG监控服务,可以第一时间为您捕获生存环境中小程序的异常.错误或者BUG, ...

  9. 支付宝小程序开发之与微信小程序不同的地方

    前言: 本文仅汇总微信小程序移植支付宝小程序过程中遇到的一些不同的地方,详细请参考官方开发文档. 网络请求: 对于网络请求,基本上改动不大,也就支付宝小程序没有responseType属性及响应码字段 ...

随机推荐

  1. JAVA读取文件操作时路径的斜杠问题

    java中的路径一般用"/"windows中的路径用"\"linux,unix中的路径一般用"/"其中java中"/"等 ...

  2. Python3数据分析与挖掘建模实战

    Python3数据分析与挖掘建模实战  整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身没问题,大家看的时 ...

  3. GitHub and Git

    book:https://git-scm.com/book/zh/v2 Git使用简易指南:https://www.bootcss.com/p/git-guide

  4. 查漏补缺&#183;补丁计划

    趁着神志清醒赶紧写一下. 多次考试暴露出各种问题.新的知识点先不去搞了,最近多做一些不擅长的类型的题查漏补缺一下吧. 唔,首先是比较考验思维的类型,我智商太低又刷题少不会什么套路,只能最近赶紧赶一下进 ...

  5. 计蒜客 Prefix Free Code(字典树+树状数组)

    Consider n initial strings of lower case letters, where no initial string is a prefix of any other i ...

  6. 【JZOJ5094】【GDSOI2017第四轮模拟day3】鸽子 计算几何+floyd

    题面 养鸽人要监视他的鸽子,有n只鸽子站在平面上,他可以在m个给定的点上设置监视器,如果一只鸽子在某个监视器上或者在两个监视器所连直线上或者在三个监视器所连直线的三角形内则其就咕咕咕了,现在养鸽人要让 ...

  7. 【JZOJ3635】【BOI2012】Peaks

    ╰( ̄▽ ̄)╭ 有一个居住在多山岛屿的登山家,已经攀上了一座山峰,并且要攀爬另外一座更高的山峰. 更精确地说,岛上的每一点都有一个大于零的海拔(海面的海拔为零),并且如果登山家位于海拔Ei的山峰上,那 ...

  8. CSS 连接后面加上"?"表示什么意思?

    举例来说: <link rel="stylesheet" href="http://static.ak.facebook.com/css/actionspro.cs ...

  9. mysql实现行拼接、列拼接

    举例:有t_person表如下: 一.mysql行拼接: 拼接某一行: 无分隔符:select   CONCAT(id,idcard,`status`,content)   from  t_perso ...

  10. springboot自定义错误页面(转)

    方法一:Spring Boot 将所有的错误默认映射到/error, 实现ErrorController @Controller @RequestMapping(value = "error ...