設定 IoT 提供者動作
設置IoT(物聯網)供應商 後,您可以根據從組織的IoT設備捕獲的數據指定要 發射鍵 一組操作。 除了五個預先定義的動作之外,您還可以建立與提供者相關聯的自訂動作,進行 Connected Field Service 作業各方面的自動化。
Connected Field Service 提供下列動作:
提取裝置資料
提取裝置資料動作會從 IoT 提供者擷取一個裝置或一系列裝置的最新資料。 這會顯示在裝置資料歷程記錄索引標籤中。
由於資料可能來自多個裝置,因此「提取裝置資料」動作必須有 EntityCollection 做為輸入。 下表描述 EntityCollection 的參數。
參數 | 類型 | 詳細資料 |
---|---|---|
msdyn_iotdeviceid | string | Connected Field Service 中已轉換為字串的 GUID 裝置識別碼 (msdyn_iotdevice) |
msdyn_name | string | 裝置的名稱 |
@odata.type | string | 實體的 OData 類型 |
輸入範例:
{
"EntityCollection":[
{
"msdyn_iotdeviceid":"B25B5E21-326E-4C36-9296-C195286DGEC9",
"msdyn_name":" HVAC 32443",
"@odata.type":"Microsoft.Dynamics.CRM.msdyn_iotdevice"
},
{
"msdyn_iotdeviceid":"B25B5E21-326E-4C36-9296-C195286DGEE9",
"msdyn_name":" HVAC 92232",
"@odata.type":"Microsoft.Dynamics.CRM.msdyn_iotdevice"
}
]
}
「提取裝置資料」動作會以序列化 JSON 格式返回讀取的資料。 下表描述 PullDeviceDataResultsJSON 輸出的參數。
JSON 屬性 | 類型 | 詳細資料 |
---|---|---|
識別碼 | string | Connected Field Service 中已轉換為字串的 GUID 裝置識別碼 (msdyn_iotdevice) |
ConnectionState | boolean | 裝置已中斷連接 (false) 還是已連接 (true) |
ConnectionStateUpdatedTime | datetime | IoT 提供者中的上次連線狀態更新的時間戳記 |
DeviceReportedProperties | string | 格式已設定為 JSON 字串的裝置報告屬性 |
LastActivityTime | datetime | 裝置上次報告活動的時間戳記 |
範例輸出:
{
"PullDeviceDataResultsJSON":[
{
"Id":"B25B5E21-326E-4C36-9296-C195286DGEC9",
"ConnectionState":true,
"ConnectionStateUpdatedTime":"2019-08-2911:00:00",
"DeviceReportedProperties":{
"temperature":65.6366305680316,
"humidity":21.3333366666
},
"LastActivityTime": "2019-08-2011:00:00"
},
{
"Id":"B25B5E21-326E-4C36-9296-C195286DGEE9",
"ConnectionState":true,
"ConnectionStateUpdatedTime":"2019-08-2911:00:00",
"DeviceReportedProperties":{
"temperature":62.8366305680316,
"humidity":19.5333366666
},
"LastActivityTime": "2019-08-2011:00:00"
}
]
}
註冊裝置
「註冊裝置」動作會在裝置或裝置集合與 IoT 提供者之間建立關聯。 可以註冊新的裝置以及技術人員換出的裝置或元件。 註冊裝置之後,該裝置會出現在 IoT 裝置記錄的註冊歷程記錄索引標籤中。
由於可以一次註冊多個裝置,因此「註冊裝置」動作必須有 EntityCollection 做為輸入。 下表描述 EntityCollection 的參數。
參數 | 類型 | 詳細資料 |
---|---|---|
msdyn_iotdeviceid | string | Connected Field Service 中已轉換為字串的 GUID 裝置識別碼 (msdyn_iotdevice) |
msdyn_name | string | 裝置的名稱 |
@odata.type | string | 實體的 OData 類型 |
輸入範例:
{
"EntityCollection": [
{
"msdyn_iotdeviceid": "5754578D-1F9A-4720-BC21-3C3042C05B2F",
"msdyn_name": "Coffee maker 1",
"@odata.type": "Microsoft.Dynamics.CRM.msdyn_iotdevice"
},
{
"msdyn_iotdeviceid": "5754578D-1F9A-4720-BC21-3C3042C06C5F",
"msdyn_name": "Coffee maker 2",
"@odata.type": "Microsoft.Dynamics.CRM.msdyn_iotdevice"
}
]
}
「註冊裝置」動作會以序列化 JSON 格式傳回註冊結果。 下表描述 RegistrationResultsJSON 輸出的參數。
JSON 屬性 | 類型 | 詳細資料 |
---|---|---|
識別碼 | string | Connected Field Service 中已轉換為字串的 GUID 裝置識別碼 (msdyn_iotdevice) |
RegistrationStatus | OptionSetValue | 從 IoT 提供者回到 Connected Field Service 的註冊狀態 值和標籤: - 192350000:未知 - 192350001:未註冊 - 192350002:進行中 - 192350003:已註冊 - 192350004:錯誤 注意:OptionSet 是包含標籤值對應的選項清單,例如下拉式清單控制項。 |
DeviceId | string | IoT 提供者系統中裝置的識別碼 |
訊息 | string | 給 Connected Field Service 使用者的關於註冊的詳細訊息 |
範例輸出:
{
"RegistrationResultsJSON":[
{
"Id":"5754578D-1F9A-4720-BC21-3C3042C05B2F",
"RegistrationStatus":{"Value":192350003},
"DeviceId":"DeviceIdFromThirdPartyOrUserDefined",
"Message":"Registration info/warning/error message"
},
{
"Id":"5754578D-1F9A-4720-BC21-3C3042C06C5F",
"RegistrationStatus":{"Value":192350003},
"DeviceId":"DeviceIdFromThirdPartyOrUserDefined",
"Message":"Registration info/warning/error message"
}
]
}
彙總裝置讀數
「彙總裝置讀數」動作會從 IoT 提供者提取彙總的裝置資料。 彙總資料在 Connected Field Service 的摘要圖標中提供裝置狀況的快速快照集。
下表描述「彙總裝置讀數」動作的輸入參數。
參數 | 類型 | 詳細資料 |
---|---|---|
deviceId | string | Connected Field Service 中已轉換為字串的 GUID 裝置識別碼 (msdyn_iotdevice) |
量值 | string | JSON 格式的測量結果清單;如需範例,請參閱下列程式碼片段 |
輸入範例:
[
{
"Measure":"Humidity",
"Aggregate":"Min",
"TimeRangeType":"Days",
"TimeRangeValue":7
},
{
"Measure":"Temperature",
"Aggregate":"Avg",
"TimeRangeType":"Days",
"TimeRangeValue":14
}
]
「彙總裝置讀數」動作會以序列化 JSON 格式傳回測量結果。 下表顯示輸出參數。
JSON 屬性 | 類型 | 詳細資料 |
---|---|---|
measuresOutput | string | JSON 格式的測量傳回值;如需範例,請參閱下列程式碼片段 |
範例輸出:
[
{
"Name":"Humidity",
"Aggregate":"Min",
"Unit":"F",
"TimeRangeValue":7,
"TimeRangeType":"Days",
"Position":1,
"Value":"39.13334"
},
{
"Name":"Temperature",
"Aggregate":"Avg",
"Unit":"F",
"TimeRangeValue":14,
"TimeRangeType":"Days",
"Position":2,
"Value":"65.13334"
}
]
如果您使用的不是「彙總裝置讀數」動作,則彙總裝置讀數會以裝置資料歷程記錄實體為根據。
查詢裝置讀數
「查詢裝置讀數」動作會從 IoT 提供者提取歷史裝置資料 (例如溫度和濕度),並將其顯示為時間序列圖表。
下表描述「查詢裝置讀數」動作的輸入參數。
參數 | 類型 | 詳細資料 |
---|---|---|
寄件人 | datetime | ISO 格式的讀數 (測量) 開始時間;例如,"2020-04-10T13:51:55.781Z" |
目標 | datetime | ISO 格式的讀數 (測量) 結束時間 |
IoTDeviceId | string | Connected Field Service 中已轉換為字串的 GUID 裝置識別碼 (msdyn_iotdevice) |
間隔 | string | 以 ISO-8601 期間格式指定之繪圖點的間隔大小;例如,1 分鐘是 "PT1M",1 毫秒是 "PT 0.001S" 所有間隔的大小都相同。 一個月通常會轉換為 30 天,而一年永遠為 365 天。 |
輸入範例:
{
"From":"2023-04-01T18:05:37.661Z",
"To":"2023-05-31T18:05:37.661Z",
"IotDeviceId":"50fce36f-9e3e-ed11-bba3-000d3a8b1de9",
"Interval":"P1D"
}
「查詢裝置讀數」動作會以序列化 JSON 格式傳回資料。 下表顯示輸出參數。
JSON 屬性 | 類型 | 詳細資料 |
---|---|---|
AggregatedDeviceReadings | 字串 | JSON 格式的測量傳回值;如需範例,請參閱下列程式碼片段 |
範例輸出:
{
"HVAC Unit 123": {
"Temperature": {
"2017-04-01T06:00:00Z": {
"min": -29,
"max": 62.59,
"avg": 16.89,
"sum": 4054.14,
"count": 240
},
"2017-04-01T08:00:00Z": {
"min": -29,
"max": 62.59,
"avg": 16.89,
"sum": 4054.14,
"count": 480
}
},
"Humidity": {
"2017-04-01T06:00:00Z": {
"min": 10,
"max": 48.3,
"avg": 29.25,
"sum": 7020.62,
"count": 240
},
"2017-04-01T08:00:00Z": {
"min": 10,
"max": 48.3,
"avg": 29.25,
"sum": 7020.62,
"count": 480
}
}
}
}
取得裝置事件
「取得裝置事件」動作會從裝置服務歷程記錄擷取事件,並在「查詢裝置讀數」動作所建立的圖表底端,將這些事件顯示為圖釘。 您可以包含任何自訂實體,例如上次執行的資產升級。
注意
您不需要建立新增動作。 在 msdyn_IoTGetDeviceEvents
動作上註冊自訂外掛程式,例如建立事件的外掛程式。
下表描述「取得裝置事件」動作的輸入參數。
JSON 屬性 | 類型 | 詳細資料 |
---|---|---|
寄件人 | datetime | ISO 格式的讀數 (測量) 開始時間;例如,"2020-04-10T13:51:55.781Z" |
目標 | datetime | ISO 格式的讀數 (測量) 結束時間 |
IoTDeviceId | string | Connected Field Service 中已轉換為字串的 GUID 裝置識別碼 (msdyn_iotdevice) |
輸入範例:
{
"IotDeviceId": "50fce36f-9e3e-ed11-bba3-000d3a8b1de9",
"From": "2023-06-12T18:57:54.864Z",
"To": "2023-06-12T19:57:54.864Z"
}
「取得裝置事件」動作會以序列化 JSON 格式傳回資料。 下表顯示輸出參數。
JSON 屬性 | 類型 | 詳細資料 |
---|---|---|
EventsName | string | 事件類別的簡短描述;使用此屬性來顯示或隱藏該類別中的所有事件 |
TimeStamp | string | 格式化為 ISO 格式字串的事件時間戳記;事件圖釘的 X 軸時間戳記 |
Color | string | 以十六進位碼字串提供的事件圖釘色彩 |
名描述 | string | 當使用者將游標暫留在圖釘上,或使用者選取圖釘以檢視詳細資料時所顯示的事件簡短描述 |
識別碼 | string | 事件的識別碼;可以是名稱或其他方便使用的值,例如工單編號或預約確認代碼 |
Entity | string | 與事件相關的 Dataverse 實體名稱;例如,"msdyn_workorder" |
URL | string | 事件詳細資料頁面的 URL,例如工單表單的連結 如果您傳遞實體和 GUID,系統就會自動產生超連結。 |
GUID | string | Dataverse 中已轉換為字串的實體記錄 GUID |
範例輸出:
{
"Service History": {
"2019-08-07T19:14:53Z": {
"color": "#FF6300",
"description": "Work Order Created",
"id": "00001",
"entity": "msdyn_workorder",
"url": "",
"guid": "952a7592-8818-ea11-a811-000d3a5466d7"
},
"2019-08-08T19:14:53Z": {
"color": "#ECC5AC",
"description": "Work Order Created",
"id": "00002",
"entity": "msdyn_workorder",
"url": "",
"guid": "952a7592-8818-ea11-a811-000d3a5466d9"
},
"2019-09-21T09:34:53Z": {
"color": "#ECC5AC",
"description": "Case Created",
"id": "000121",
"entity": "msdyn_incident",
"url": "",
"guid": "952a7592-8818-ea11-a811-000d3a5466d0"
}
},
"Asset History": {
"2019-08-07T19:14:53Z": {
"color": "#FF6400",
"description": "Asset Model Upgraded",
"id": "001223",
"entity": "new_assetupgraded",
"url": "",
"guid": "952a7592-8818-ea11-a811-000d3a5466d7"
}
}
}