全部產品
Search
文件中心

IoT Platform:添加服務調用任務

更新時間:Jun 30, 2024

如果您需要同時調用多個裝置的非同步服務,可使用物聯網平台的裝置批量服務調用任務。本文介紹該任務的建立方法、運行中Topic及其資料格式的說明,查看狀態的具體操作。

前提條件

  • 裝置所屬產品下已添加物模型服務(非同步呼叫),且多個裝置中包含相同服務識別符。具體操作,請參見添加物模型
  • 已在裝置端完成物模型服務調用能力開發。具體操作,請參見物模型的調用服務

任務管理流程

  1. 建立裝置批量服務調用任務。
    1. 物聯網平台控制台對應執行個體下的監控營運 > 任務管理頁面,單擊建立任務
    2. 建立任務頁面,單擊以下參數名稱右側的協助表徵圖協助,根據頁面提示,配置任務和作業,單擊完成
      • 任務配置
        參數說明
        任務名稱輸入符合規則的任務名稱。可自訂。
        任務類型選擇類型:裝置批量服務調用任務
        任務描述輸入該任務的用途等資訊,便於您區分不同的任務。
        目標裝置、產品或分組
        從裝置、產品或分組維度選擇可執行任務的裝置。
        重要 從分組維度選擇裝置時,不支援選擇動態分組。
        下發給裝置的任務執行規則上傳規則檔案。僅支援.json格式檔案,檔案大小不能超過64 KB。

        您可單擊下載模板,擷取規則檔案模板。

        例如裝置所屬產品下物模型服務資料計算標識符Operation_Service調用方式非同步,輸入參數為數值ANumberA)和數值BNumberB),參數資料類型均為int32,程式碼範例如下:

        {
            "serviceIdentifier": "Operation_Service",
            "params": {
                "NumberA": 32,
                "NumberB": 56
            }
        }
        • serviceIdentifier:服務唯一識別碼。可在物聯網平台控制台中,裝置所屬產品的功能定義中查看。

          如果是自訂(非預設)模組testFb下服務Operation_Service,則參數為"serviceIdentifier": "testFb:Operation_Service",

        • params:服務的入參,可包含多個入參。
      • 作業配置作業配置
        參數說明
        作業執行速率配置根據您的業務需要,設定每分鐘作業推送數量。必選配置。
        作業執行的逾時配置僅對自訂任務生效。此處無需配置。
        作業開始調度時間可選配置。

        從當前設定作業的時間,開始計算時間。

        裝置任務建立成功後,先初始化,直至到達調度時間,才會開始調度執行。

  2. 任務建立完成後,物聯網平台通過InvokeThingServiceInvokeThingsService介面調用服務,採用非同步方式下行推送請求,然後裝置也採用非同步方式向物聯網平台返迴響應結果。

    訊息格式如下:

    {
        "id": "123",
        "version": "1.0",
        "params": {
            "Power": "on",
            "WF": "2"
        },
        "method": "thing.service.${tsl.service.identifier}"
    }

    其中,params資料是任務規則檔案中params資料;{tsl.service.identifier}是任務規則檔案中serviceIdentifier的值。上文規則檔案對應訊息格式如下:

    {
      "id": "123",
      "version": "1.0",
      "params": {
        "NumberA": 32,
        "NumberB": 56
      },
      "method": "thing.service.Operation_Service"
    }

    裝置服務非同步呼叫的Alink協議,請參見裝置服務調用(非同步呼叫)

  3. 在物聯網平台對應執行個體下的監控營運 > 任務管理頁面,查看已建立任務及目前狀態。
    重要 狀態為已逾時的任務,不可再被調度執行。

    從任務建立完成開始計時,如果任務下作業未在7天內全部執行完成,任務狀態顯示為已逾時

    您可根據實際情境需要,執行以下操作:

    • 在工作清單中,取消執行中狀態的任務。
    • 單擊目標任務對應的查看,在任務詳情頁面,查看任務資訊和作業執行統計。
      功能頁簽說明
      任務資訊您可以查看任務資訊,修改任務描述和作業配置,下載裝置任務檔案。
      作業概覽您可以查看任務下各狀態的作業統計。
      • 您可以單擊目標裝置的查看,在裝置詳情頁面:
        • 單擊任務頁簽,查看該裝置下的所有工作清單。
        • 單擊Log Service前往查看,在雲端作業記錄頁簽的搜尋欄,選擇業務類型雲到裝置訊息,查看裝置任務相關日誌。
      • 如果作業未執行成功,單擊執行詳情,可查看失敗原因。
      • 如果作業執行已逾時或失敗,單擊已逾時失敗的狀態按鈕,可查看對應狀態的作業列表。

        您可以單擊列表上方的重新執行,重新執行當前任務下所有已逾時和失敗的作業。

    • 單擊目標任務對應的刪除,然後單擊確認
      警告 刪除裝置任務後,與該任務相關的資料被清除,如果有依賴該任務的業務,可能導致服務不可用或影響使用者的業務。請謹慎操作。