條件漏斗
Last updated
條件漏斗(Condition Funnel) 區塊可根據變數值、使用者輸入或訊息內容,將對話導向不同的流程分支。
常見使用情境包括:驗證使用者輸入(例如電子郵件、電話號碼、數字),使用者屬性分流,透過條件控制流程邏輯。

輸入自訂資料名稱 選擇要進行判斷的資料名稱(例如用戶輸入、自訂資料或系統資料)。
條件運算子 定義變數與輸入值之間的比對方式。
輸入值/規則 用來進行比對的值或規則。
基本條件:文字或數字
Regex 條件:正則表達式
新增條件(+) 新增多個條件分支。
後備路徑 當所有條件皆不符合時,對話會進入此路徑。

等於(Equal)
變數完全相同
country = USA
不等於(Not Equal)
變數不相同
country ≠ SG
小於(Less Than)
數值比較
order_count < 3
小於或等於(Less Than or Equal)
數值比較
score ≤ 60
大於(Greater Than)
數值比較
order_count > 5
大於或等於(Greater Than or Equal)
數值比較
amount ≥ 1000
⚠️ 數值相關的運算子僅適用於數字型變數。
在(In)
符合清單中的任一值
country in [USA, SG]
包含(Contains)
包含指定文字
訊息包含 refund
是空的(Is Empty)
變數沒有值
電話號碼為空
符合正則表達式可使用正則表達式進行進階格式驗證,適用於需要嚴格輸入規則的情境。

在欄位/ /中輸入 Regex 表達式
可選擇性啟用 Regex flags
若變數值符合該 Regex,條件即成立
驗證電子郵件格式
^[^\s@]+@[^\s@]+\.[^\s@]+$
example@chatalog.com
驗證含國碼的電話號碼
^\+[1-9]\d{6,14}$
+14155552671
僅允許數字輸入
^\d+$
123456
Regex Flags控制模式的評估方式。

g
Global
比對所有符合的結果
m
Multi Line
^ 與 $ 作用於每一行
i
Case Insensitive
忽略大小寫
x
Extended
允許空白與註解
s
Single Line
. 可比對換行字元
u
Unicode
啟用 Unicode 比對
U
Ungreedy
預設使用非貪婪比對
A
Anchored
從字串開頭開始比對
J
Jchanged
允許重複命名群組
變數:User Input
運算子:Matches Regex
規則:^[^\s@]+@[^\s@]+\.[^\s@]+$
結果
符合 → 繼續流程
不符合 → 請用戶重新輸入 Email
變數:Country
運算子:In
值:USA, SG
結果
符合 → 進入區域流程
不符合 → 進入預設流程
變數:Phone Number
運算子:Is Empty
結果
為空 → 提示用戶輸入電話號碼
非空 → 繼續流程
從簡單運算子(等於、包含於、包含)開始,然後再使用正則表達式。
務必配置後備路徑以防止死路。
使用正則表達式時:
使用 ^ 和 $ 錨定模式以避免部分匹配
使用真實用戶輸入測試模式
保持條件邏輯可讀性——多個簡單條件通常比一個複雜規則更清晰。
Last updated