检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
返回参数:需满足设备发放对返回参数的约束; 函数参数:需满足设备发放对函数参数的约束; 函数接口实现:从函数参数中的备选接入点中选择一个接入点,调用发放设备接口,根据接口响应拼接参数返回。 编写自定义函数 创建函数工程,编写函数。 首先建立一个普通的Java项目,添加FunctionGraph函数JavaSDK
通过自定义策略发放设备功能流程图如下图所示。 函数开发 自定义策略的函数代码编写指南参见创建自定义策略函数。 此处以Java语言为例,如何编写Java语言的函数,参见函数工作流 FunctionGraph > 开发指南> 如何开发函数> Java函数开发指南。 创建函数工程,编写函数。 关键流程代码参考如下:
最大长度:256 func_urn 否 String 函数的URN(Uniform Resource Name),唯一标识函数。 最小长度:1 最大长度:360 init_config 否 String 注册组的初始化配置。必须为json字符串 最小长度:1 最大长度:65535 响应参数
缺省值:functions function_name String 自定义函数名称。 最小长度:1 最大长度:256 func_urn String 函数的URN(Uniform Resource Name),唯一标识函数。 最小长度:1 最大长度:360 registration_group_id
书ID为云证书服务生成的证书ID。 最小长度:0 最大长度:256 func_urn 否 String 函数的URN(Uniform Resource Name),唯一标识函数。 最小长度:1 最大长度:360 auth_type 否 String 认证类型 register_group_secret
MQTT设备模板填写说明列表 参数名称 说明 nodeId 若有真实设备,填写为设备的IMEI或MAC地址;若没有真实设备,填写自定义字符串,不同设备的识别码不能重复。 name 分别填写为MQTT_Beijing001,MQTT_Beijing002,MQTT_Beijing003。
缺省值:functions function_name String 自定义函数名称。 最小长度:1 最大长度:256 func_urn String 函数的URN(Uniform Resource Name),唯一标识函数。 最小长度:1 最大长度:360 registration_group_id
与静态策略和证书策略相比,自定义策略为您提供更灵活的策略机制。自定义策略实例指示函数关联的设备接入实例,一个函数可关联多个设备接入实例。 设备匹配自定义策略实例的机制为: 设备的发放策略指定为“函数策略”时,需同时指定其关联的函数,设备与自定义策略实例关联同一个函数时,即被认为该设备匹配上该条策略实例; 一个设备可匹配多条自定义策略实例。
进入“策略”界面,单击展开“自定义策略”,单击“添加函数”。 图1 添加自定义策略 按照下方参数说明填写关键参数信息后,单击“确定”。 参数名称 说明 示例 函数 即在函数服务中实现的自定义策略。如果下拉框没有你想要的函数,可以单击创建新函数来实现你的自定义策略需求。 将需要通过函数“function”发放的设备发放至华北-北京四的物联网平台。
创建设备时,需要使用设备接入服务创建的产品 设备接入服务(IoT Device Access,IoTDA) 创建产品 创建自定义策略时需要使用函数 函数工作流服务(FunctionGraph) 创建并初始化函数 创建证书策略使用云证书时,需要去云证书管理服务创建云证书 云证书管理服务(Cloud Certificate
请求消息体 请求消息体通常以结构化格式发出,与请求消息头中Content-type对应,传递除请求消息头之外的内容。若请求消息体中参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操
在设备发放控制台,注册MQTT设备,其中安全模式选择密钥模式(如果需要下发初始化配置,那么对应在初始设备配置选项中填写对应的JSON字符串,设备发放不理解该字段,只是透传该JSON字符串,由设备理解解析。如果不需要下发改字段则不填)。 图3 注册设备 图4 创建密钥模式静态策略设备 此处注册设备的
100411 function urn not exist. 函数不存在 请填写正确的函数信息 400 IoTDP.100412 function urn is exist by this domain. 函数名已存在 请填写正确的函数信息 400 IoTDP.100413 strategy
证书指纹,认证类型使用证书认证接入(CERTIFICATES)可填写该字段,注册设备时不填写该字段则取第一次设备接入时的证书指纹。注意:指纹只能为40位十六进制字符串或者64位十六进制字符串。 device_cert_name 否 String 设备证书名称,CA证书选择云证书管理服务的CA证书接入需要填写该字段
选择证书 用于和注册组绑定,同一个证书只能同时绑定一个注册组,不能同时绑定多个注册组。 发放策略 当前只支持“自定义策略”,同时需要选择所要运行的函数。 父主题: 设备
发放应用:beijing-app1 关键字来源 关键字来源指的是用于匹配关键字的字符串信息的数据来源。目前支持设备名称与数据上报两种形式。 如果为设备名称,则匹配关键字的字符串取设备创建后的设备名称。 如果为数据上报,则匹配关键字的字符串取设备发放过程中,发起发放请求Topic“$oc/devic
FunctionStrategyReq 参数 是否必选 参数类型 描述 func_urn 是 String 函数的URN(Uniform Resource Name),唯一标识函数 最小长度:1 最大长度:360 响应参数 状态码: 200 表9 响应Body参数 参数 参数类型 描述
func_name String function名称。 最小长度:1 最大长度:64 func_urn String 函数的URN(Uniform Resource Name),唯一标识函数 最小长度:1 最大长度:360 请求示例 查询静态策略请求示例 GET https://{endpoi
func_name String function名称。 最小长度:1 最大长度:64 func_urn String 函数的URN(Uniform Resource Name),唯一标识函数 最小长度:1 最大长度:360 表11 Page 参数 参数类型 描述 count Long 满足查询
String 对应设备接入实例的接入地址。 initConfig 必选 String 客户在创建设备,或者创建注册组时自定义的初始化Json字符串。 示例 设备先订阅Topic后才能收到命令推送,设备接收到的payload: { "address": "10.0.0.1:8883"