反應關聯
反應很少單獨運作——它們透過按鈕、鏈式呼叫、「否則」分支、對話回覆等方式相互呼叫。反應關聯展示這個轉換圖:對於任何反應,都能看到它指向哪裡(傳出關聯)以及從哪裡進入(傳入關聯)。這有助於在複雜流程中保持方向感,並安全地刪除反應。
什麼是關聯
關聯是從一個反應到另一個反應的有向轉換,並以產生此轉換的機制標記。平台完整掃描反應,收集所有傳出轉換,排除自我引用和空目標,並合併重複的轉換。關聯列表可從反應編輯器存取,也可透過 API:GET /api/bots/{id}/reactions/{id}/links。
傳入與傳出
- 傳出 — 當前反應引用的反應(其按鈕、鏈式呼叫、「否則」分支等)。
- 傳入 — 引用當前反應的反應。刪除前很有用:若有其他反應引用此反應,刪除將破壞流程。
12 種關聯機制
- 按鈕(
button)— 「呼叫反應」類型的 inline 按鈕,點擊時開啟另一個反應。 - 按鈕替換(
button_replace)— 「替換訊息」行為的按鈕,以繫結反應的內容替換訊息。 - 動態按鈕(
dynamic_button)— 「從列表動態生成按鈕」區塊中的按鈕,指向一個反應。參見動態按鈕與參數。 - 「反應」區塊(
block)— 訊息區塊,在傳送過程中呼叫另一個反應。 - 鏈式反應(
chain)— 「鏈式反應」動作啟動另一個反應。 - 「否則」分支(
else)— 條件未滿足時,控制權轉至指定的反應。 - Web 請求:成功(
web_success)— Web 請求成功時觸發的反應。 - Web 請求:錯誤(
web_error)— Web 請求出錯時觸發的反應。 - 等待回覆(
expected_answer)— 在對話步驟中根據使用者回覆觸發的反應。 - 等待逾時(
expected_timeout)— 若在逾時前未收到回覆則觸發的反應。 - 下一個反應(
goto_next)— 「下一個反應」動作將控制權傳遞給列表中下一個匹配的反應。 - 場景(
flow)— 繫結至場景(flow)完成時的反應。
為何需要查看關聯圖
- 流程導航 — 快速跳轉至相關反應,無需在列表中搜尋。
- 安全刪除 — 查看傳入關聯,避免破壞轉換。
- 稽核 — 驗證流程中所有分支是否正確連接,以及是否有「懸空」轉換。