阿里云物联网平台介绍
2019-11-01 09:52:13 16 举报
AI智能生成
阿里云物联网平台结构
作者其他创作
大纲/内容
产品简介
产品介绍
什么是物联网平台
设备接入
设备管理
安全能力
身份认证
通信安全
规则引擎
数据分析
边缘计算
产品架构
IoT SDK
边缘计算
IoT Hub
数据分析
设备管理
数据流转
安全认证&权限策略
名词解释
产品优势
使用限制
产品与设备
连接通信
Topic相关
设备影子
数据流转
服务端订阅
云端API限制
产品定价
计费方式
消息通信计费
计费项目
计费方法
附录:收费接口
设备端收费接口
服务端收费接口
连接时长计费
计费方法
计费示例
示例1
示例2
示例3
欠费说明
入门教程
快速玩转物联网平台
概述
数据流转过程示意图
准备工作
操作步骤
创建产品与设备
背景信息
操作步骤
为产品定义物模型
操作步骤
建立设备与平台的连接
背景信息
操作步骤
服务端订阅设备消息
背景信息
操作步骤
1
2
3
4
java开发指南
服务端订阅
设备接收云端指令
操作步骤
1.在Maven项目中加入依赖项,导入阿里云IoT云端SDK
2.初始化SDK
3.云端应用向设备下发属性设置指令,将开关属性设置为1
执行结果
使用MQTT.fx接入物联网平台
前提条件
使用MQTT.fx接入
使用自定义Topic进行通信
背景信息
准备开发环境
创建产品和设备
yum命令
说明介绍
语法
常用命令
实例
国内 yum 源
设备消息通过RocketMQ流转到服务器
前提条件
背景信息
操作步骤
设备接入
下载设备端SDK
前提条件
基于设备端SDK开发
泛化协议SDK
基于Alink协议开发
创建产品
操作步骤
后续步骤
创建设备
创建单个设备
操作步骤
执行结果
批量创建设备
操作步骤
执行结果
后续步骤
创建LoRa设备
前提条件
单个创建
批量创建
后续步骤
管理设备
管理账号下的设备
查看具体设备信息
设备安全认证
概述
设备密钥认证
ID²认证
X.509证书认证
一机一密
背景信息
操作步骤
一型一密
背景信息
操作步骤
使用X.509证书认证
限制说明
生成X.509证书
设备端认证配置
设备再次连接
消息通信Topic
什么是Topic
产品Topic类
设备Topic
系统Topic和自定义Topic
Topic通配符
自定义Topic
操作步骤
带通配符的自定义Topic
自定义Topic通信
使用开放协议自主接入
概览
使用MQTT协议接入
MQTT协议规范
支持版本
与标准MQTT的区别
安全等级
Topic规范
MQTT-TCP连接通信
背景信息
MQTT客户端直连
使用HTTPS认证再连接
MQTT保活
基于MQTT通道设备动态注册
前提条件
流程
MQTT-WebSocket连接通信
背景信息
操作步骤
MQTT连接签名示例
说明
签名计算代码示例
签名函数API接口说明
签名API使用示例
基于IPv6的MQTT连接通信
背景信息
设备端接入物联网平台
使用CoAP协议接入
CoAP协议规范
协议版本
通道安全
开源客户端
阿里CoAP约定
说明与限制
CoAP连接通信
基础流程
使用对称加密自主接入
使用DTLS自主接入
使用HTTP协议接入
HTTP协议规范
HTTP协议版本
通道安全
限制说明
HTTP连接通信
限制说明
接入流程
泛化协议
什么是泛化协议SDK
服务架构
适用场景
主要功能
名词解释
开发和部署
基础用法
流程图
部署开发环境
初始化
设备认证并上线
设备发送上行数据
设备下线
进阶用法
自定义配置管理
动态创建网桥设备
调用物模型数据上报接口
消息通信
规则引擎
数据流转
数据流转概览
什么是数据流转
数据流转使用限制
数据流转使用指南
数据流转方案对比
设备数据流转方案汇总
规则引擎 vs 服务端订阅
规则引擎 + 消息队列 RocketMQ
规则引擎 + 消息服务(MNS)
规则引擎 + 函数计算
设置数据流转规则
操作步骤
SQL表达式
SQL表达式
SELECT
FROM
WHERE
SQL结果
数组使用说明
条件表达式支持列表
函数列表
使用示例
数据流转过程
自定义Topic
系统Topic
地域和可用区
数据流转使用示例
数据转发到另一Topic
前提条件
背景信息
操作步骤
数据转发到消息队列RocketMQ
前提条件
操作步骤
数据转发到表格存储
前提条件
操作步骤
数据转发到DataHub
前提条件
操作步骤
数据转发到云数据库RDS
使用须知
准备工作
操作步骤
数据转发到消息服务
数据转发流程
操作步骤
数据转发到时序时空数据库
使用须知
准备工作
操作步骤
数据转发到函数计算
操作步骤
联动场景
什么是场景联动
云端联动场景
服务端订阅
什么是服务端订阅
适用场景
HTTP/2服务端订阅
推送到MNS
HTTP/2服务端订阅
使用限制
开发指南(Java)
开发指南(.NET)
使用消息服务订阅设备消息
数据格式
设备上下线状态
设备属性上报
设备事件上报
设备生命周期变更
设备拓扑关系变更
网关发现子设备
设备下行指令结果
MQTT同步通信(RRPC)
什么是RRPC
名词解释
RRPC原理
Topic格式
调用系统Topic
系统Topic
RRPC接入
调用自定义Topic
自定义Topic
RRPC接入
设备管理
设备生命周期管理
创建设备
在控制台创建设备
设备上、下线
设备上线
设备下线
禁用和启用设备
禁用设备
删除设备
操作步骤
执行结果
物模型
什么是物模型
物模型格式
物模型使用流程
单个添加物模型
操作步骤
批量添加物模型
使用说明
导入物模型
数据解析
什么是数据解析
数据解析流程
脚本格式
脚本编辑
数据解析使用示例
步骤一:编辑脚本
步骤二:在线测试脚本
步骤三:提交脚本
步骤四:使用真实设备调试
附录:示例脚本
LoRaWAN设备数据解析
步骤一:编辑脚本
步骤二: 在线测试脚本
步骤三:提交脚本
步骤四:使用真实设备调试
附录:示例脚本
问题排查
本地环境调试脚本
线上问题排查
标签
产品标签
设备标签
分组标签
批量操作标签
设备分组
背景信息
操作步骤
设备影子
设备影子概览
应用场景
查看与更新设备影子
相关API
设备影子JSON详解
设备影子数据流
设备影子Topic
使用示例
一、设备主动上报状态
二、应用程序改变设备状态
三、设备主动获取影子内容
四、设备主动删除影子属性
文件管理
前提条件
操作步骤
NTP服务
原理介绍
接入流程
使用示例
网关与子设备
网关与子设备
网关与设备
接入方式
子设备管理
操作步骤
执行结果
子设备上线
背景信息
子设备上线过程
实践示例
Alink协议
Alink协议
上线流程
设备上报属性或事件
调用设备服务或设置属性
拓扑关系
设备身份注册
子设备的动态注册
直连设备使用一型一密动态注册
管理拓扑关系
添加设备拓扑关系
删除设备的拓扑关系
获取设备的拓扑关系
发现设备列表上报
通知网关添加设备拓扑关系
通知网关拓扑关系变化
子设备上下线
子设备上线
子设备下线
设备属性、事件、服务
设备上报属性
设置设备属性
设备事件上报
设备服务调用
网关批量上报数据
设备期望属性值
获取期望属性值
清空期望属性值
子设备禁用、启用、删除
禁用设备
解除禁用
删除设备
设备标签
标签信息上报
删除标签信息
TSL模板
固件升级
设备上报固件版本
物联网平台推送固件信息
设备上报升级进度
设备请求固件信息
远程配置
设备主动请求配置信息
配置推送
设备网络状态
设备主动上报网络状态
设备端通用code
设备端错误码
公共错误码
通用公共错误码
数据解析公共错误码
TSL公共错误码
系统异常错误码
设备身份注册相关错误码
直连设备身份注册
直连设备一型一密动态注册
设备拓扑关系相关错误码
添加设备拓扑关系
删除拓扑关系
获取拓扑关系
网关上报发现子设备
子设备上下线相关错误码
设备属性、事件、服务相关错误码
设备上报属性
设备上报事件
网关批量上报子设备数据
设备期望属性值相关错误码
设备获取期望属性值
设备清空期望属性值
设备标签相关错误码
设备上报标签信息
设备删除标签信息
获取TSL模板失败错误码
设备请求固件信息失败
设备请求配置信息失败
监控运维
实时监控
查看数据指标
查看数据指标
数据指标说明
相关文档
查看设备网络状态
背景信息
操作步骤
配置报警规则
创建阈值报警规则
创建事件报警规则
报警信息说明
阈值报警信息
事件报警信息
运维大盘
设备数据
设备属性与状态数据
在线调试
调试真实设备
操作步骤
执行结果
调试虚拟设备
背景信息
操作步骤
执行结果
日志服务
背景信息
查询设备日志
设备行为分析
上、下行消息分析
物模型数据分析
日志格式说明如下表。
调用服务和设置属性失败错误码如下表。
系统异常错误码
上报属性和上报事件失败错误码如下表。
系统异常错误码
调用服务和设置属性的reply失败错误码如下表。
系统异常错误码
TSL公共错误码如下表。
系统异常错误码
数据解析脚本相关
固件升级
推送固件到设备端
前提条件
背景信息
操作步骤
执行结果
设备端OTA升级
OTA固件升级流程
数据格式说明
常见下载固件错误
远程配置
前提条件
远程配置说明
场景一:云端推送配置信息给设备端
场景二:设备主动请求配置信息
云端开发指南
云端SDK参考
下载云端SDK
云端SDK下载地址
IoT Java SDK
IoT Python SDK
IoT PHP SDK
IoT .NET SDK
下载云端SDK Demo
SDK使用说明
Java SDK使用说明
Python SDK使用说明
PHP SDK使用说明
.NET SDK使用说明
Java SDK使用说明
安装SDK
初始化SDK
发起调用
附录:Demo
Python SDK使用说明
安装SDK
初始化SDK
发起调用
附录:Demo
PHP SDK使用说明
安装PHP SDK
初始化SDK
发起调用
附录:Demo
.NET SDK使用说明
安装SDK
初始化SDK
发起调用
附录:Demo
云端API参考
API列表
产品管理相关 API
设备管理相关 API
分组管理相关API
规则引擎相关 API
Topic 管理相关 API
消息通信相关 API
设备影子相关 API
数据开发API
边缘计算API
概述
调用API
请求结构
API在线调试
API授权
公共参数
公共请求参数
公共返回参数
签名机制
签名方法
签名示例
JAVA代码示例
错误码
系统错误码
公共错误码
产品(Product)相关错误码
设备(Device)相关错误码
设备分组(Group)相关错误码
消息相关错误码
规则相关错误码
目标为REPUBLISH(另一个IoT Topic)的错误码
目标为DATAHUB(DataHub)的错误码
目标为OTS(表格存储)的错误码
目标为MNS(消息服务)的错误码
目标为FC(函数计算)的错误码
目标为ONS(消息队列)的错误码
数据开发API相关错误码
产品管理
CreateProduct
QueryProduct
QueryProductList
UpdateProduct
CreateProductTags
DeleteProduct
DeleteProductTags
ListProductByTags
ListProductTags
UpdateProductTags
设备管理
RegisterDevice
QueryDeviceDetail
BatchQueryDeviceDetail
QueryDevice
DeleteDevice
GetDeviceStatus
BatchGetDeviceState
DisableThing
EnableThing
......
分组管理
CreateDeviceGroup
UpdateDeviceGroup
......
Topic管理
CreateProductTopic
UpdateProductTopic
......
规则引擎
CreateRule
CreateRuleAction
......
消息通信
Pub
PubBroadcast
RRpc
设备影子
GetDeviceShadow
UpdateDeviceShadow
最佳实践
账号与登录
使用阿里云主账号登录控制台
使用主账号登录 IoT 控制台
使用主账号创建访问控制
RAM授权管理
RAM 和 STS 介绍
背景介绍
基本概念
使用示例
为什么 RAM 和 STS 的使用这么复杂?
自定义权限
Action 定义
Condition 定义
典型使用场景
子账号访问
创建子账号
授权子账号访问物联网平台
子账号登录控制台
进阶使用STS
步骤一:创建角色
步骤二:创建角色授权策略
步骤三:为角色授权
步骤四:授予子账号角色扮演权限
步骤五:子账号获取临时身份凭证
步骤六:子账号临时访问资源
IoT API授权映射表
常见问题
产品接入问题
什么样的硬件可以接入物联网平台?
物联网平台提供手机App相关的服务吗?
物联网平台和消息队列(MQ)都是用于消息通信的产品,它们有什么区别?
与物联网相关的解决方案有哪些?官网上的工业大数据服务解决方案、新制造解决方案跟物联网平台是否有关系?
是否有C语言版的服务器端SDK?
是否可以用域名解析cname的方式,把 http://iot.cn-shanghai.aliyuncs.com 隐藏在自有域名之后?
物联网平台的设备端和服务端SDK功能是全部免费的吗?SDK会不会涉及到证书问题 ?
在物联网平台,服务端获取队列 aliyun-iot-QvxU3MgU6wY 里面的数据。如果有多台设备,如何判断消息是来自哪个Topic对应的队列?
为华东2地域, 配置了消息服务(MNS)的队列。但在控制台上发送消息,MNS的队列中并没有收到该消息,只能收到设备上下线的消息,为什么?
Topic相关问题
设备上线时,为什么会收到重复的离线消息?
物联网平台推送订阅消息的频率是多少?物联网平台是否会保存消息?
如何使用自己的服务器获取设备消息?
设备端SDK使用问题
基础问题
设备端SDK支持什么环境?服务端SDK有什么版本?
设备端SDK占用的RAM情况如何?
设备端SDK的运行需要哪些条件?
移植问题
FreeRTOS 操作系统移植是否有相关文档可以参考?
如何ECS上使用freertos系统?
是否支持KEIL?
编译问题
如何修改编译选项?
如何查看目前的编译选项设置?
MQTT_ID2_AUTH等宏在哪定义?
SDK使用的libc版本是多少?
SDK编译中提示git command not found?
SDK跨平台移植,实现交叉编译时,需要修改哪些东西?
如何生成windows平台可执行的exe或是lib?
SDK移植后进行交叉编译,先执行make reconfig,再执行make命令,提示错误:bin/bash: 行 2: /opt/arm-hisiv300-linux/bin/arm-hisiv300-linux-uclibcgnueabi-gcc: 没有那个文件或目录? arm-hisiv300-linux-gcc-ar:cannot find plugin liblto_plugin.so
设备端的C-SDK移植到嵌入式linux平台时要不要重新开发底层的硬件层?
编译时出现ssl相关的错误?
使用aliot_sdk_v1.0.1_release SDK,然后修改make.setting文件,PLATFORM_SSL = openssl 然后开始make,结果报错,如何修复这个问题?
运行问题
如何打开 SDK 日志?
IoT套件是否支持多线程?
IoT套件对消息内容进行处理吗?
采用IoT套件,那么传输的安全性怎么保证?
使用物联网套件时,设备通过MQTT协议成功连接到阿里云平台后,如何从平台端看到设备上报的数据的内容呢?
一个设备账号支持多个设备登录吗?
在一台设备上执行mqtt的IOT_MQTT_Construct后,再用同一设备参数执行coap的IOT_CoAP_Init可以吗?
套件是否一有消息就立刻推送给订阅的设备而不做保存?
IoT套件从华东2怎么样切换到美西的服务器,是否需要修改sdk库里面的代码?IoT套件美国认证URL地址是多少?
IoT套件为什么只能创建华东的节点,创建不了杭州节点?
物联网套件,现在使用华东2站点SDK 进行接入,由于设备内存问题,能否关闭SSL加密,直接mqtt连接,我在SDK中没有找到关闭的方法,能否提供关闭方式?
一个topic类有三个topic:get,update,error。
问题1:error是从设备上来的,get和update的方向如何?
问题2:能否增加其他的,比如:put
问题1:error是从设备上来的,get和update的方向如何?
问题2:能否增加其他的,比如:put
一个产品能创建多少个topic,一个topic最多被多少个设备订阅?
如果topic订阅设备超过1000怎么处理?
iot套件中的一个设备,查看控制台的log会报以下err log:[error]rate limiter,请问是什么原因?
MQTT连接
IoT套件云端IP地址和端口号
什么是域名直连?如何开启域名直连
MQTT协议版本是多少?
MQTT进行设备认证时,server返回”400”(鉴权认证失败)
C语言SDK中MQTT是否支持iOS接入?
设备上线是什么状态?
目前mqtt-example设备上线后会立刻下线,请问如何修改mqtt-example让设备一直处于上线状态?
心跳的时间间隔如何设置?
备端是如何侦测到需要重连(reconnect)?设备端的重连机制是什么?
云端如何侦测到设备离线的?
设备端SDK是否支持MQTT和CCP协议的断线重连?
发布(Publish QoS1)数据时偶尔会出现MQTT_PUSH_TO_LIST_ERROR(-42),请问如何解决?
IOT_MQTT_Yield的作用?
IOT_MQTT_Yield参数timeout的意义?
IOT_MQTT_Yield与HAL_SleepMs的区别
如何循坏接收消息?
订阅了多个topic,调用一次IOT_MQTT_Yield,如果多个topic都发布了消息,能接收到多个topic的消息吗?
QTT连接方式,对于数据的读取,只能通过不停地调用IOT_MQTT_Yield来轮询获取吗?有没有方法通过事件触发的方式来告知有消息来了?IOT_MQTT_Yield会阻塞(block)当前的工作,请问有没有办法可以让IOT_MQTT_Yield尽量不阻塞其他工作?
套件目前是否支持QoS 2?
什么情况下会发生订阅超时(subscribe timeout)?
mqtt发起订阅subscribe第一条信息时就出现超时;subcribe返回IOTX_MQTT_EVENT_SUBCRIBE_NACK;
MQTT 发布(publish)的消息体最大是多少?超过会怎么样?
MQTT协议pub消息payload格式是怎么样的?
OTA over MQTT具体流程是什么?
ota_mqtt升级的时候报错,提示mqtt read buffer is too short?
如果使用MQTT直连的方式进行OTA远程代码的测试是否可行?
IoT 套件,关闭MQTT over TLS则可以成功地订阅和发布信息,打开关闭MQTT over TLS则在运行时提示MQTT创建失败,返回错误码0x2700(证书参数有问题,认证失败)
如何实现发送程序和接收程序同时在线?
能不能订阅其他设备topic?怎么实现设备间通信?
设备1发送QoS1的消息给离线设备2,设备2上线后无法收到消息,这个要怎么处理?
如何把设备状态变化通知订阅到另一个独立的消息队列中?
使用MQTT客户端如何连接阿里云?用户名(username)和密码(password)信息怎么填写?
进行mqtt连接的时候,是否需要root.crt证书验证?
CoAP连接
IoT套件的CoAP协议允许 over UDP 接入吗?
CoAP接入时,设备端用三要素去认证,三要素中product key、device name、device secret这些key的长度是固定的吗?
CoAP接入连接的云端URI是什么?
IOT_CoAP_DeviceNameAuth认证函数是阻塞等待指定时间吗?认证成功后返回还是立即返回?如果阻塞等待,如何设置最大等待时长?
IOT_CoAP_DeviceNameAuth认证具体流程是什么?
CoAP的客户端在提交认证时,需要字段IOTX_DEVICE_ID是什么意义?
IOT_CoAP_SendMessage(p_ctx, path, &message)发送的message必须是JSON格式吗?如果不是JSON会出现什么错误?
如何设置IOT_CoAP_Yield处理结果最大等待时间?
调用IOT_CoAP_Init方法时里面coap_malloc返回NULL,这是什么原因引起的?
HTTP连接
HTTPS进行设备认证时,server返回错误代表什么意思?
HTTPS接入认证的时候,body中的sign参数怎么生成?
物联网设备->设备基于HTTP接入->设备认证,HTTP服务器地址https://iot-as-http.cn-shanghai.aliyuncs.com ,采用POST方式,按照帮助文档的测试步骤。服务器返回代码302 Found,The requested resource resides temporarily under a different URI.,未接收到任何业务状态码,设备认证异常,网址转到:http://err.taobao.com/error1.html 页面
IoT套件设备HTTP接入是否支持跨域问题,用浏览器调用HTTP请求出现跨域错误。
OTA 下载 - 固件升级
OTA 的流程是什么?
TLS
x509_crt_verify_child方法里用到的这四个方法如果返回值不为0,分别表示什么意思? 1 mbedtls_x509_time_is_future(&child->valid_from); 2 x509_profile_check_md_alg(profile, child->sig_md); 3 x509_profile_check_pk_alg(profile, child->sig_pk); 4 x509_profile_check_key(profile, child->sig_pk, &parent->pk);
物联网套件c语言版本移植到新平台后,运行时出现ssl运行错误,返回错误码“78”或者“30848”等?
广播
IoT套件广播消息Topic如何填写?
广播topic是消息对多个设备,普通topic是消息对一个设备,这个理解是否正确?
广播是否只能针对在线的设备?
设备影子(shadow)
设备影子使用的是固定的两个主题,这两个主题是否可以通过规则引擎实现在不同的产品或设备间进行转发信息?
希望用mqtt的例程例程实现M2M通信的同时也想使用设备影子,怎么样才能不冲突?
参考文档
设备认证相关问题
多台设备是否可以使用相同的证书同时或不同时进行连接认证?
设备端SDK是否支持MQTT协议的断线重连?
传输协议相关问题
使用MQTT协议连接,不同的设备可以使用相同的clientID连接服务器吗?
物联网平台支持哪些QoS Level?
物联网平台如何监听设备消息?
MQTT协议Pub消息payload是什么格式?
服务端接收MQTT上传的16进制数据怎么进行解析?
HTTP协议和CoAP协议支持数据下行吗?
接入设备多了,会不会影响消息通讯,比如出现延迟?
设备移植相关问题
IoT_SDKV2.0在高通MDM9206平台上移植的已知问题
编译问题
运行问题
MQTT连接掉线相关问题
为什么设备一直上下线?
如何判断设备掉线的原因?
如何检查网络问题?
控制台使用问题
如何查看线上日志,判断消息是否发送成功和规则是否执行?
一个客户端是否可以既是发布者又是订阅者?
华东2(上海)和杭州地域有什么区别?我现在开通的是华东2是否可以切换到杭州?
我在控制台新增加了设备,但显示设备未激活,如何激活?
一个Topic类有三个Topic,分别是:get,update,error。这些Topic消息的来源分别是什么?我能否增加其他的Topic,比如:put?
查询设备状态
调用API获取设备状态
通过服务端订阅(HTTP/2)获取设备状态
设备端检测自己是否在线
服务端检测设备是否在线
HTTP/2服务端订阅相关问题
为什么发布消息报错?
为什么服务端没有接收到消息?
消息接收慢的原因是什么?
如何进行消息过滤?
为什么测试环境会收到线上产品的消息?
HTTP/2 SDK限制
服务端订阅如何收费?
相关产品
物联网边缘计算
物联网数据分析服务
物联网开发服务
物联网应用托管服务
收藏
收藏
0 条评论
下一页