健康狀態檢查

Google 會監控已部署的動作,確認其可用,並回應使用者要求。

每個動作的端點都需要回應預設值 (無參數叫用)。這個情境支援以下情境:使用者要求與動作互動,但未提供任何其他資訊 (例如「我要跟 叫用名稱)。

常見問題

我是否需要實作任何特定機制來支援健康狀態檢查?

否。動作健康狀態檢查就像與動作通訊的標準要求一樣,

動作健康狀態的檢查頻率為何?

此外,您的動作可能會全天候監控。

如何偵測要求是否為健康狀態檢查?

如果您將 Actions Builder 當做開發平台,您會收到類似以下程式碼片段的健康狀態檢查要求:

{
  "handler": {
    "name": "actions.handler.HEALTH_CHECK"
  },
  "intent": {
    "name": "actions.intent.HEALTH_CHECK"
  },
  "session": {
    "id": "actions.session.HEALTH_CHECK"
  },
  "user": {
    "locale":"en-US"
  },
  "device": {
    "capabilities": []
  }
}
  

收到這項要求後,您必須回應 200 回應代碼,否則您的動作會被視為健康狀態不良。下列程式碼片段是格式正確的回應範例:

  {"prompt":{"override":true,"firstSimple":{"speech":"ok","text":""}}}

如果您使用 Dialogflow 做為開發平台,Google 會新增 "is_health_check" 引數,並將其傳送至意圖。這個引數可在 Webhook 要求的 Input 物件中找到:

{
  ...
  "originalDetectIntentRequest": {
    ...
    "payload": {
      ...
      "inputs": [{
        ...
        "arguments": [{
          "name": "is_health_check",
          "boolValue": true,
          "textValue": "1"
        }]
      }],
      ...
    }
  }
}
  

如果 Google 偵測到健康狀態不良的動作,會發生什麼情況? 如果 Google 偵測到動作發生服務中斷,動作就會暫停。要求不良動作的使用者會聽到「ACTION_NAME is not available」。

如果動作標示為健康狀態不良,Google 如何通知我? 當 Google 偵測到健康狀態不良的動作時,我們會傳送通知電子郵件給與 Actions 專案相關聯的主要開發人員。

如果使用帳戶連結的動作遭標示為健康狀態不良,會發生什麼情況? 與其他動作不同,在 Google 宣告其健康狀態不良的動作後,使用帳戶連結的動作就不會暫停。收到通知電子郵件後,使用者在 7 天內仍可存取您的動作。如未在 7 天後修正帳戶連結問題,動作就會遭到移除。

如何查看動作的健康狀態? 您可以查看開發人員控制台和動作狀態。健康狀態不良的動作會顯示為「不良健康狀態」。健康狀態良好的動作會標示為「Deployed」

將動作傳回已部署狀態的程序為何?您應該檢查部署作業,並解決所有可能導致動作無法回應啟動意圖的問題。

Google 會持續定期監控動作的健康狀態不良。當 Google 偵測到動作如預期回應時,動作就會恢復為已部署狀態。