규칙 엔진 문서
IF/THEN 규칙을 만들어 응답을 자동화하고, 대화를 라우팅하고, 채팅 동작을 사용자 지정하세요.
규칙 작동 방식
규칙은 방문자가 메시지를 보낼 때 발생하는 일에 대한 전체 제어권을 제공합니다. 각 규칙은 AI 자동 답변이 응답할 기회를 갖기 전에 모든 수신 방문자 메시지에서 평가됩니다.
- 각 규칙에는 조건 (IF)과 작업 (THEN)이 있습니다.
- 일치 모드는 조건이 어떻게 결합되는지를 결정합니다: 모든 조건이 일치해야 함 (AND 논리) 또는 모든 조건이 일치할 수 있음 (OR 논리).
- 규칙은 우선 순위 순으로 실행됩니다 — 낮은 숫자는 높은 우선 순위를 의미합니다 (먼저 실행됨).
- Stop on match — 활성화되면 이 규칙이 실행된 후 추가 규칙이 확인되지 않습니다.
- 규칙은 AI 자동 답변을 억제할 수 있습니다 (예:
REPLY_TEXT가 대신 응답을 처리).
조건 참조
조건은 규칙이 언제 실행되어야 하는지 정의합니다. 모두 (AND) 또는 모든 (OR) 일치 모드를 사용하여 여러 조건을 결합할 수 있습니다.
MESSAGE_CONTAINS
방문자의 메시지에 특정 단어나 문구가 포함되어 있는지 확인합니다.
| 매개변수 | 설명 |
|---|---|
value | 메시지에서 검색할 텍스트 |
caseSensitive | true / false — 일치가 대소문자를 구분하는지 여부 |
예: „메시지에 가격이 포함"은 „귀사의 가격은 얼마인가요?"와 일치합니다
MESSAGE_MATCHES_REGEX
방문자의 메시지를 정규 표현식과 일치시킵니다.
| 매개변수 | 설명 |
|---|---|
pattern | 구분 기호를 포함한 정규식, 예: /order\s*#?\d+/i |
예: /\b(refund|return|cancel)\b/i는 모든 환불 관련 메시지와 일치
팁: 패턴을 추가하기 전에 regex101.com을 사용하여 테스트하세요.
VISITOR_LANGUAGE
방문자의 감지된 언어를 확인합니다.
| 매개변수 | 설명 |
|---|---|
operator | equals, not_equals 또는 in |
value | en, pl, de와 같은 언어 코드 |
예: 방문자 언어가 pl과 같음 → 폴란드어 운영자에게 라우팅
OPERATOR_ONLINE
팀의 운영자가 현재 온라인 상태인지 확인합니다.
| 매개변수 | 설명 |
|---|---|
value | true = 최소 한 명의 운영자 온라인, false = 모든 운영자 오프라인 |
예: 운영자 온라인 = false → „현재 오프라인입니다" 메시지 전송
SESSION_VARIABLE
대화에 저장된 사용자 지정 변수를 확인합니다 (이전 규칙에 의해 설정).
| 매개변수 | 설명 |
|---|---|
key | 확인할 변수 이름 |
operator | equals, not_equals, exists 또는 not_exists |
value | 예상 값 (exists / not_exists에는 필요 없음) |
예: 세션 변수 lead_type이 demo와 같음 → 영업 팀에 할당
작업 참조
작업은 규칙의 조건이 충족될 때 발생하는 일을 정의합니다. 단일 규칙에는 여러 작업이 있을 수 있습니다.
REPLY_TEXT
방문자에게 자동 텍스트 답변을 보냅니다.
| 매개변수 | 설명 |
|---|---|
text | 방문자에게 보낼 메시지 |
참고: AI 자동 답변을 억제 — 규칙이 응답을 처리합니다.
예: „팀이 오프라인 상태입니다. 영업 시간 동안 답변드리겠습니다."
REPLY_AI
이 메시지에 AI 자동 답변을 사용하도록 시스템에 명시적으로 지시합니다.
참고: 다른 작업과 결합하여 사용 — 예: 변수 설정 및 AI가 응답하도록 함.
SET_VARIABLE
다른 규칙에서 나중에 사용할 수 있도록 대화에 키-값 쌍을 저장합니다.
| 매개변수 | 설명 |
|---|---|
key | 변수 이름 |
value | 변수 값 |
참고: AI를 억제하지 않음 — 변수가 설정된 후에도 AI가 응답할 수 있습니다.
예: 후속 조치를 위해 interest = enterprise 설정
ASSIGN_TO_OPERATOR
팀의 특정 운영자에게 대화를 할당합니다.
| 매개변수 | 설명 |
|---|---|
operatorId | 팀 구성원에서 선택 |
참고: AI를 암묵적으로 억제 — 할당된 대화는 AI 답변을 받지 않습니다.
예: VIP 고객을 선임 지원 에이전트에게 라우팅
NOTIFY_OPERATORS
모든 온라인 운영자에게 소리 알림과 함께 실시간 경고를 보냅니다.
| 매개변수 | 설명 |
|---|---|
message | 운영자에게 표시되는 경고 메시지 |
참고: AI를 억제하지 않음 — 경고와 AI 응답이 모두 발생합니다.
예: „긴급: 방문자가 즉각적인 도움이 필요합니다!"
SEND_EMAIL
대화 컨텍스트가 포함된 이메일을 보냅니다. 에스컬레이션 또는 CRM 통합에 유용합니다.
| 매개변수 | 설명 |
|---|---|
to | 수신자 이메일 주소 |
subject | 이메일 제목 |
body | 이메일 본문 (선택 사항 — 대화 컨텍스트가 자동으로 추가됨) |
참고: AI를 억제하지 않음.
CALL_API
외부 API 엔드포인트를 호출하고 응답을 세션 변수에 저장합니다. API 연결을 먼저 구성해야 합니다.
| 매개변수 | 설명 |
|---|---|
endpointId | 구성된 API 엔드포인트에서 선택 |
참고: AI를 억제하지 않음 — AI가 가져온 데이터를 사용하도록 REPLY_AI와 결합하세요. 전체 설정 가이드는 API 연결 문서를 참조하세요.
예: 주문 추적 API 호출 → 세션에 상태 저장 → AI가 실제 주문 데이터로 응답
실제 예제
자신의 설정에 맞게 조정할 수 있는 즉시 사용 가능한 규칙 레시피.
1. 가격 질문 자동 답변
정적 답변으로 일반적인 질문에 답변하여 AI 토큰을 절약하세요.
IF (모든 일치): MESSAGE_CONTAINS price, MESSAGE_CONTAINS cost, MESSAGE_CONTAINS pricing
THEN: REPLY_TEXT: „요금제는 월 19유로부터 시작합니다. 전체 가격은 enuchat.com/pricing에서 확인하세요"
일치 모드: 모든 · Stop on match: 예
2. 언어별 방문자 라우팅
폴란드어 방문자를 폴란드어 운영자에게 직접 보냅니다.
IF (모두 일치): VISITOR_LANGUAGE가 pl과 같음
THEN: ASSIGN_TO_OPERATOR → 폴란드어 운영자
일치 모드: 모두 · Stop on match: 예
3. 영업 시간 외 인사
아무도 온라인 상태가 아닐 때 기대치를 설정합니다.
IF (모두 일치): OPERATOR_ONLINE = false
THEN: REPLY_TEXT: „연락 주셔서 감사합니다! 저희 팀은 현재 오프라인 상태입니다. AI가 도와드리려고 하겠지만, 영업 시간 동안 후속 조치를 취하겠습니다."
일치 모드: 모두 · Stop on match: 아니요 (AI도 응답하도록 함)
4. 데모 요청 태그 및 라우팅
세션 변수와 함께 작동하는 두 가지 규칙.
규칙 1 — IF (모두 일치): MESSAGE_CONTAINS demo
규칙 1 — THEN: SET_VARIABLE lead_type = demo_request. Stop on match: 아니요 (AI가 첫 번째 메시지에 응답)
규칙 2 — IF (모두 일치): SESSION_VARIABLE lead_type이 demo_request와 같음
규칙 2 — THEN: ASSIGN_TO_OPERATOR → 영업. Stop on match: 예
첫 번째 메시지가 태그를 설정하고 AI가 응답합니다. 동일한 방문자의 두 번째 메시지는 영업으로 라우팅됩니다.
5. 정규식으로 주문 번호 감지
주문 관련 쿼리를 지원으로 자동 라우팅.
IF (모두 일치): MESSAGE_MATCHES_REGEX /\b(order|tracking)\s*#?\s*\d{'{'}4,}/i
THEN: ASSIGN_TO_OPERATOR → 지원 에이전트, REPLY_TEXT: „주문 질문이 있으시군요. 지원 팀과 연결해 드리겠습니다."
일치 모드: 모두 · Stop on match: 예
6. 조건 결합 (AND 논리)
모든 조건이 모두 참이어야 하는 매우 구체적인 시나리오에서만 트리거합니다.
IF (모두 일치): VISITOR_LANGUAGE가 en과 같음, MESSAGE_CONTAINS urgent
THEN: ASSIGN_TO_OPERATOR → 선임 에이전트
일치 모드: 모두 (둘 다 일치해야 함) · Stop on match: 예
팁 & 모범 사례
- 순서가 중요: 우선 순위 숫자가 낮은 규칙이 먼저 실행됩니다. 가장 중요한 규칙을 맨 위에 놓으세요.
- „Stop on match" 사용 동일한 메시지에서 여러 규칙이 실행되는 것을 방지합니다.
- 대시보드의 테스트 패널을 사용하여 라이브로 가기 전에 테스트하세요.
- REPLY_TEXT 메시지를 간결하게 유지 — 방문자는 에세이가 아닌 채팅을 기대합니다.
- SESSION_VARIABLE을 사용하여 다단계 흐름 구축 — 첫 번째 메시지에서 대화에 태그를 지정한 다음 나중에 조치를 취하세요.
- 정규식 팁: 항상 대소문자 구분 플래그
/i를 사용하고 regex101.com에서 패턴을 테스트하세요. - 적을수록 좋음: 잘 만들어진 10–15개 규칙이 50개의 겹치는 규칙보다 낫습니다.
- 규칙은 AI보다 먼저 실행 — 규칙이 메시지를 처리하면 AI가 응답하지 않습니다 (토큰 절약).