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 偵測到動作如預期回應時,動作就會恢復為已部署狀態。