Share via


Extend Connected Field Service solutions

 

Applies To: Dynamics 365 (online)

Connected Field Service for Microsoft Dynamics 365 supports the customization of each standard component or service and the easy addition of custom Azure-based components and services. This flexible architecture is required to support the wide range of current and future IoT devices and the envisioned supporting services for these devices.

Extend Azure Services

The Azure services and components, including the ones detailed in Connected Field Service architecture, are designed for reliability, scalability, and extensibility. They support management and customization through UI-based and PowerShell administration, JSON-based template-driven deployment and initialization, and REST-based programming interfaces (often including client libraries for specific languages, such as C#/.NET, Python, Java, and Node.js).

After the standard installation, Connected Field Services will configure your resource group with a set of Azure services similar to the following.

Connected Field Service Standard Azure Services

Although extending these Azure services (or adding additional ones) is beyond the scope of this topic, there are ample resources available to the developer, including the following from Microsoft:

Extend Connected Field Service

The following table lists the custom entities and processes that Connected Field Service supplies to interface with the associated Azure services and components. These types are more fully described in IoT Connector Web API Reference.

Display Name (ID)

Type

Description

IoT – Debounce IoT Alerts (msdyn_ParentIoTAlerts Action)

Action

Links potential redundant alerts to an existing parent alert

IoT - Parent IoT Alerts

Workflow

Calls the IoT - Debounce IoT Alerts action and passes 60 for the TimespanSeconds parameter

IoT – Register Custom Entity (msdyn_RegisterCustomEntity Action)

Action

Registers any custom entity that may or may not already have connected IoT devices. This action invokes the IoT – Register Device action.

IoT – Register Device (msdyn_RegisterIoTDevice Action)

Action

Publishes the registration requests for an IoT device

IoT – Send Test Alert (msdyn_IoTSendTestAlert Action)

Action

Reserved for future use

JSON-based Field Value – Get Boolean (msdyn_JsonGetBoolean Action)

Action

Reads a Boolean property in the specified JSON object

JSON-based Field Value – Get Number (msdyn_JsonGetNumber Action)

Action

Reads a numeric property in the specified JSON object

JSON-based Field Value – Get String (msdyn_JsonGetString Action)

Action

Reads a string property in the specified JSON object

IoT Alert (msdyn_iotalert EntityType)

Entity

Represents a notable event sent from the associated IoT Hub

IoT Device (msdyn_iotdevice EntityType)

Entity

Represents a connected device that can be registered with a IoT Hub

IoT Device Category (msdyn_iotdevicecategory EntityType)

Entity

Represents a logical grouping of IoT devices

IoT Device Command (msdyn_iotdevicecommand EntityType)

Entity

Represents an outgoing message to a device connected to the IoT Hub

IoT Device Registration History (msdyn_iotdeviceregistrationhistory EntityType)

Entity

Tracks registration activities of an IoT device

IOT enabling an entity type

Dynamics 365 entities can be associated to IoT entities listed above so that within Dynamics 365 they can participate in IoT-related business processes and analyses. There are two methods of “IoT enabling” a Dynamics 365 entity; you can:

  • Programmatically form an association through the standard Dynamics 365 Connection entities capability. You can alternatively accomplish this same association through the administration UI; for more information, see Create connections to view relationships between records.

  • Call the IoT – Register Custom Entity action to associate an entity with an existing or new IoT Device.

A common example of this capability is to associate a Customer Asset to an IoT Device.

Microsoft Dynamics 365

© 2017 Microsoft. All rights reserved. Copyright