本文档介绍了如何通过API的方式使用ID²(适用于新加坡region)将设备接入到阿里云物联网平台。
一、准备工作
1、申请阿里云账号
如果您已经拥有阿里云账号,请忽略。如果您还没有阿里云账号,请先申请账号。
如何创建阿里云账号:https://help.aliyun.com/document_detail/324609.html
2、获取AccessKey
请查看如何获取AccessKey:https://help.aliyun.com/document_detail/53045.html
注意:如果采用子账号AccessKey,需要为子账号添加iot和iotid产品访问RAM权限。
为RAM用户授权:https://help.aliyun.com/document_detail/116146.html
3、准备开发环境
您需要准备一台PC或者服务器,安装Java v1.8及以上的版本。
4、开通阿里云物联网平台
登录阿里云物联网平台控制台地址:https://iot.console.aliyun.com,并切换region为:新加坡。
在这个步骤里不要创建产品。
5、下载ID²接入示例代码工程
下载ID² OpenAPI接入的Java示例代码工程:id2-openapi-docking.zip。点击立即下载
该工程代码展示了如何基于阿里云物联网平台、阿里云设备身份认证(ID²)的SDK调用OpenAPI,完成创建产品、查看产品列表、查看产品的ID²授权等操作,从而通过API的方式实现用户在控制台的常用操作。
二、接入流程
1、开通权限
请您联系ID²产品小二开通新加坡(region)产品使用权限。
2、创建产品
进入任一实例后,进入 设备管理-产品 页面,点击 创建产品 按钮,选择认证方式为“ID²”。
创建完成后,运行调用示例代码:B_ID2_ListCustomerProducts(需要替换您的阿里云账号AccessKeyID和AccessKeySecret),查看ID²(新加坡)产品列表,也可以看到新创建的产品。
3、购买授权
请您联系ID²产品小二购买新加坡(region)的ID²授权,需要提供以下信息:
阿里云账号ID
产品的ProductKey
需要购买的ID²授权年限(1年、3年、5年)
需要购买的ID²授权数量
获取阿里云账号ID :登录控制台,点击右上角的 账号名/头像,获取 账号ID。
购买完授权后,可以通过调用示例代码:C_ID2_QueryId2OrderInfo,查看对应产品的授权总量、用量。
5、设备集成
建议您在国内(上海region)IoT安全中心控制台,自行完成设备端集成对接工作。
参考最佳实践:https://help.aliyun.com/document_detail/209777.html
6、设备接入新加坡服务端
通过修改设备端配置,将设备切换到新加坡region的服务端
设备在国内(上海region)完成端到端调试后,通过修改接入点、产品信息就可以接入到新加坡Region。
新加坡region接入点:${ProductKey}.itls.ap-southeast-1.aliyuncs.com
修改产品配置:ProductKey、ProductSecret
其中,ProductKey和ProductSecret可以登录阿里云物联网平台(新加坡region)控制台,进入产品详情页查看。
参考材料:
1、OpenAPI示例代码工程
2、物联网平台接口(CreateProduct)说明
https://next.api.aliyun.com/api/Iot/2018-01-20/CreateProduct?tab=DOC
2、ID²相关API说明
ListCustomerProducts
接口名称:ListCustomerProducts
功能描述:获取产品列表
输入参数:
名称 | 类型 | 是否必须 | 描述 |
ProductName | String | 否 | 产品名称 |
CurrentPage | Integer | 是 | 当前页,从1开始 |
PageSize | Integer | 是 | 分页大小,不超过30 |
输出参数:
名称 | 类型 | 描述 |
RequestId | String | 请求ID |
Success | boolean | true – 成功,false – 失败 |
Code | String | 错误码,见下文定义 |
ErrorMessage | String | 错误信息 |
TotalCount | Integer | 总个数 |
CurrentPage | Integer | 当前页 |
Data | List<ProductList> | 数据域 |
ProductList字段描述 | ||
ProductName | String | 产品名称 |
ProductKey | String | ProductKey |
ProductSource | Integer | 产品来源 |
GmtCreate | String | 产品创建时间 |
QueryId2OrderInfo
接口名称:QueryId2OrderInfo
功能描述:获取指定产品的ID2使用授权信息
输入参数:
名称 | 类型 | 是否必须 | 描述 |
ProductKey | String | 是 | ProductKey |
ProductSource | Integer | 是 | 产品来源 |
输出参数:
名称 | 类型 | 描述 |
RequestId | String | 请求ID |
Success | boolean | true – 成功,false – 失败 |
Code | String | 错误码,见下文定义 |
ErrorMessage | String | 错误信息 |
Data | List<Id2OrderInfo> | 数据域,列表按授权有效期分组 |
Id2OrderInfo字段描述 | ||
ValidateTimeType | Integer | 授权有效期: 0-5年, 1-3年, 2-1年 |
TotalAmount | Integer | 授权总量 |
UsedAmount | Integer | 已激活量 |
OtpUsedAmount | Integer | 已空发量 |