跳至主要内容

asgard.message.complete

asgard.message.complete 事件表示對話的結束,包含完整的文字內容和 Template 格式(如選項、按鈕、照片等)。

事件特性

  • 觸發時機:當 AI 完成對話內容生成時
  • 作用:提供完整文字和 Template 格式,結束當前對話
  • 頻率:每個對話只會觸發一次 complete 事件

關鍵欄位

欄位說明
messageComplete.message.text完整文字,已包含前面片段文字的內容,可以直接取代顯示上已累積的文字
messageComplete.message.idx通常為 null,與 delta 事件不同
messageComplete.message.templateTemplate 格式,包含選項、按鈕、照片等互動元素。可參考 Message Template 完整說明

完整範例

{
"eventType": "asgard.message.complete",
"requestId": "6939c5a6c590d90c401e3850a1ff44f3",
"namespace": "qa-7e301310-a594-4a7b-aa2a-xxxxxxxxxxxx",
"botProviderName": "bpapi-d97c512f-f8dc-46f6-82f0-xxxxxxxxxxxx",
"customChannelId": "ch-6xxxxxxxxxxxx",
"fact": {
"runInit": null,
"runDone": null,
"runError": null,
"messageStart": null,
"messageDelta": null,
"messageComplete": {
"message": {
"messageId": "1834828082242916352",
"replyToCustomMessageId": "",
"text": "目前台北xxx", // ← 完整文字內容
"payload": {},
"isDebug": false,
"idx": null, // ← 通常為 null
"template": { // ← Template 格式
"type": "TEXT",
"text": "目前台北xxx"
}
}
}
}
}

注意事項

  • 完整內容:text 欄位包含所有累積的內容,可以直接取代顯示上已累積的文字
  • 模板應用:template 包含最終的模板資訊,可參考 Message Template 完整說明
  • 狀態管理:標記當前訊息已完成,準備下一個對話框的訊息回應