博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Dynamics 365 CRM Connected Field Service 自动发送command
阅读量:5279 次
发布时间:2019-06-14

本文共 2088 字,大约阅读时间需要 6 分钟。

上期降到了怎样部署connected field service(CFS)

我们假设现在IoT 设备是温度监控器, 当温度触发我们之前预设的温度值, IoT会通过IoT Hub 发送IoT Alert到CFS中。 第一次触发, 系统会自动发送reboot的command。

 

为了有更好的用户体验, 我们需要自动发送command。

自动发送非常简单。

首先,我们需要创建一个workflow

 我们的workflow需要在IoT Alert创建的时候触发。

这个workflow需要有以下两步:

1. 获取到当前IoT Alert的GUID

2. 创建IoT device command 并且把IoT Alert的GUID 绑定进去。

 

首先我们需要创建workflow。

如果不清楚workflow的,可以查看我的workflow 扫盲贴 

public class RetrieveCFSData : CodeActivity    {        [Input("Key")]        public InArgument
Key { get; set; } [ReferenceTarget("msdyn_iotalert")] [Output("IoTAlertId")] public OutArgument
IoTAlertId { get; set; } protected override void Execute(CodeActivityContext executionContext) { //Create the tracing service ITracingService tracingService = executionContext.GetExtension
(); //Create the context IWorkflowContext context = executionContext.GetExtension
(); IOrganizationServiceFactory serviceFactory = executionContext.GetExtension
(); IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId); if (context.InputParameters.Contains("Target") && context.InputParameters["Target"] is Entity) { // Obtain the target entity from the input parameters. Entity iotAlert = (Entity)context.InputParameters["Target"]; var alertId = iotAlert.Attributes["msdyn_iotalertid"].ToString();//Update Record by using Custom Assembly output parameter var iotAlertRef = new EntityReference("msdyn_iotalert", new Guid(alertId)); iotAlertRef.Name = "Hello World From Workflow"; IoTAlertId.Set(executionContext, iotAlertRef); } } }

 

我们把这个workflow添加到之前简历好的step当中。不用set properties

 并且,我们要创建一个IoT Device Command 的step。

在这个step当中, 我们需要在operator找到我们创建好的step 1 custom workflow。

并且把parent alert 做绑定。

 

转载于:https://www.cnblogs.com/TheMiao/p/11083546.html

你可能感兴趣的文章
【京东咚咚架构演进】-- 好文收藏
查看>>
【HTML】网页中如何让DIV在网页滚动到特定位置时出现
查看>>
文件序列化
查看>>
jQuery之end()和pushStack()
查看>>
Bootstrap--响应式导航条布局
查看>>
Learning Python 009 dict(字典)和 set
查看>>
JavaScript中随着鼠标拖拽而移动的块
查看>>
HDU 1021 一道水题
查看>>
The operation couldn’t be completed. (LaunchServicesError error 0.)
查看>>
php每天一题:strlen()与mb_strlen()的作用分别是什么
查看>>
工作中收集JSCRIPT代码之(下拉框篇)
查看>>
《转载》POI导出excel日期格式
查看>>
code异常处理
查看>>
git - 搭建最简单的git server
查看>>
会话控制
查看>>
推荐一款UI设计软件Balsamiq Mockups
查看>>
Linux crontab 命令格式与详细例子
查看>>
百度地图Api进阶教程-地图鼠标左右键操作实例和鼠标样式6.html
查看>>
游标使用
查看>>
LLBL Gen Pro 设计器使用指南
查看>>