数据转发至函数工作流
构建函数工程
创建工程
本例使用Java语言实现设备接入属性数据流式转换功能与推送功能,有关函数开发的过程请参考FunctionGraph的Java函数开发指南,本例不再介绍函数工作流函数实现的代码。
下载样例源码,解压缩并在Idea中导入工程。代码说明可参考:样例代码说明,其中用户自己的服务器地址通过函数环境变量NA_MOCK_SERVER_ADDRESS传入。
打包工程
使用Idea的Build Artifacts打包Jar,Idea配置及打包。
上传函数至FunctionGraph
在函数工作流工作台创建函数
1.登录函数工作流控制台在左侧导航栏选择“函数 > 函数列表”,进入函数列表界面。
2.单击“创建函数”,进入创建函数流程。
3.填写函数配置信息。
选择:“创建空白函数”。
函数名称输入:“IoTDA_FUNCTION_HTTPCLIENT_DEMO”。
运行时语言选择:“Java 8”。
4.单击下方“创建函数”,完成函数创建,完成函数创建后将自动跳转到该函数详情页。
5.在函数详情页中选择“代码”>“上传自”>“JAR文件”,上传程序打包文件夹中的代码包:FunctionGraphFun.jar。
6.修改函数运行时参数,选择“设置>常规设置”配置函数执行入口:“com.huawei.iot.function.gamma.IoTDataFlowHttpClientTrigger.funTest”,填写完成后,单击打“保存”,保存配置信息。
7.修改调用函数时传递的环境变量,配置环境变量“NA_MOCK_SERVER_ADDRESS”传入函数要推送的HttpServer地址,注意示例中服务器地址非真实服务器地址,请替换成您真实的http服务器地址,填写完成后,单击“保存”,保存配置信息。
添加事件源
函数创建以后,可以为函数添加事件源,本例通过配置Http推送测试事件,模拟IoT数据转发过来的设备数据,步骤如下:
1.用户进入“IoTDA_FUNCTION_HTTPCLIENT_DEMO”函数详情页,选择“代码”>“配置测试事件”,弹出“配置测试事件”窗口。
2.在“配置测试事件”窗口中,输入配置信息。
配置测试事件选择:“创建新的测试事件”。
事件模板选择:“空白模板”。
事件名称输入:“event-property”。
设备属性上报测试参数示例如下:
3.单击“保存”,完成测试事件配置。
测试数据
处理模拟数据步骤如下:
1.用户进入函数详情页,选择“event-property”测试事件,单击“测试”,测试函数。
2.函数执行成功后,可在函数详情页右侧通过日志查看函数执行情况。
4.单击“设置转发目标”页签,单击“添加”,设置转发目标,设置完成后点击“确定”按钮。
5.单击“启动规则”,激活配置好的数据转发规则。
验证操作
您可以使用设备接入服务中注册的真实设备接入平台,上报对应产品物模型中定义的属性参数。
您也可以使用模拟器模拟设备属性上报,操作方法请参考在线开发MQTT协议的智慧路灯。
期望结果:能在用户服务端日志中查看到设备上报的数据。
其他应用场景
-
将图片上传到特定的OBS桶中
将用户上传的每个图像的尺寸进行压缩
将处理完后的图像上传到另一个指定的OBS桶
将图片上传到特定的OBS桶中
将用户上传的每个图像的尺寸进行压缩
将处理完后的图像上传到另一个指定的OBS桶
-
将图片上传到特定的OBS桶中
将用户上传的每个图片打水印
将处理完后的图像上传到另一个指定的OBS桶
将图片上传到特定的OBS桶中
将用户上传的每个图片打水印
将处理完后的图像上传到另一个指定的OBS桶中
-
将图片上传到特定的OBS桶中
将用户上传的每个图像的尺寸进行压缩
将处理完后的图像上传到另一个指定的OBS桶
将图片上传到特定的OBS桶中
将用户上传的每个图像的尺寸进行压缩
将处理完后的图像上传到另一个指定的OBS桶
函数工作流 FunctionGraph 教程视频
函数工作流
函数工作流
函数工作流
函数工作流
函数工作流
函数工作流
函数工作流