Dynamics 365 CRM Connected Field Service 自动发送command

Posted themiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dynamics 365 CRM Connected Field Service 自动发送command相关的知识,希望对你有一定的参考价值。

上期降到了怎样部署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 扫盲贴 Step by Step 开发dynamics CRM

public class RetrieveCFSData : CodeActivity
    
        [Input("Key")]
        public InArgument<string> Key  get; set; 

        [ReferenceTarget("msdyn_iotalert")]
        [Output("IoTAlertId")]
        public OutArgument<EntityReference> IoTAlertId  get; set; 

        protected override void Execute(CodeActivityContext executionContext)
        
            //Create the tracing service
            ITracingService tracingService = executionContext.GetExtension<ITracingService>();

            //Create the context
            IWorkflowContext context = executionContext.GetExtension<IWorkflowContext>();
            IOrganizationServiceFactory serviceFactory = executionContext.GetExtension<IOrganizationServiceFactory>();
            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 做绑定。

技术图片

 

以上是关于Dynamics 365 CRM Connected Field Service 自动发送command的主要内容,如果未能解决你的问题,请参考以下文章

css CRM控制样式#CSS #MoussaElAnnan#CRM2016#Dynamics365

如何通过 Dynamics 365 CRM 中的 C# 插件填充查找字段

怎样创建一个dynamics 365 CRM online plugin

怎样Debug Dynamics 365 CRM Plugin

外部SQL Server的Dynamics CRM 365插件

Dynamics 365/CRM 保存之后触发onchange