使用手冊

劇本編輯器

「劇本與 Pattern」(/scenarios)列出本單位的劇本與 pattern instance。劇本是真正的圖:節點 + 邊;伺服器在儲存時驗證。

新增劇本

  1. 新增劇本/scenarios/new),填 名稱
  2. 觸發方式kind):keyword(填 keywords 以逗號分隔、match = exact / contains / regex、priority)、follow(加入好友;每單位只會生效一個)、error(無法辨識;每單位一個)、postback(只由按鈕進入)、event(填 source / type)、schedule
  3. 建立後進入編輯器(/scenarios/{id}/edit),預設只有一個入口節點。

編輯器

節點種類

節點設定出邊
message一或多個 canonical message(text / card / buttons / quickReply…)有 option: 出邊就等待(它是選單),否則 default
choiceprompt、options[]、量表、recordAs每個選項 option:<id>,或 default
collectfield:name、prompt、type(text / number / date / email / phone)、required、pattern、maxLengthdefault;驗證失敗三次 → timeout
branchon = attribute / answer / lookup、key、cases[]condition:<result>、default
lookupendpointId、into、timeoutMscondition:ok / condition:error(未綁定:condition:unbound)
delayminutes、onlyIf.unmet(此人已有該回應或標籤就跳過)default = 到時續發的目標節點;允許回到前一節點形成「再提醒」
capacitypatternInstanceId、limit、waitlist、deadlinecondition:open / waitlist / full / closed
recordpatternInstanceId、fields、addToGroupId、tags、anonymousdefault
handoffunitId(轉真人)或 target=avatar(交給 HiZex Avatar)、note真人:停在此節點;avatar:condition:done / condition:abandoned
aisystem prompt、知識集、記憶、tools、信心門檻default;可設低信心 → handoff
end無出邊

連線規則

UNIQUE(from, on)
同一節點同一個 on 只能有一條邊。
無環
發佈時檢查:除了 delay 的出邊外不得形成循環。
可達
每個節點必須從入口節點可達;end 無出邊。
單例 trigger
follow 與 error 每單位各只有一個生效。
標籤
每個節點可設 tags[];走過就落到此人的標籤,可當受眾維度。
版本
儲存產生新版本;進行中的對話沿用舊版直到 end 或逾時(10 分鐘)。

測試對話

右側 測試對話 抽屜以模擬 LINE 帳號測試已儲存的版本(POST /scenarios/{id}/test):輸入文字或點按鈕;重來會清除狀態並從起點開始;輸入觸發關鍵字也可重新進入。純文字降級(編號選單)也可在這裡看到。

儲存、發佈、匯入匯出

儲存
儲存POST /scenarios/{id}/save,body 為圖 JSON);驗證失敗回 dag_invalid 並指出節點或邊。
啟用
劇本有 active 旗標;停用的劇本不會被 trigger 命中,postback 進來走 error 劇本。
JSON
GET /scenarios/{id}/json 匯出、POST 匯入整張圖(欄位 graph);可用於環境間搬移。
API
同一份圖也可用 GET/POST /v1/scenariosPUT /v1/scenarios/{id} 維護。