JSON 형식
트리거는 다음과 같은 속성을 가진 JSON 개체로 표현됩니다.
이름 | 유형 | 읽기 전용 | 설명 |
name | 문자열 | 아니요 | 트리거의 이름 |
사용 | 정수 | 아니요 | 트리거 사용 설정 여부 |
description | 문자열 | 아니요 | 트리거의 설명 |
정의 | 개체 | 아니요 | 트리거의 정의. 자세한 내용은 아래의 트리거 정의를 참조하세요. |
트리거 정의
참고: 정의는 트리거 업데이트에서 편집할 수 없습니다.
각 트리거에 대한 자세한 설명은 트리거 조건 및 작업 참고자료를 참조하세요.
트리거는 JSON을 사용하여 정의되며 각 트리거는 다음 3개의 키를 가진 JSON 개체입니다.
트리거 정의 키 | 설명 |
이벤트 | (JSON 문자열) 이 트리거가 활성화되는 이벤트 유형입니다. 이벤트 목록은 트리거 이벤트를 참조하세요. |
조건 | (JSON 목록) 트리거가 작업을 수행하기 위해 충족되어야 하는 조건입니다. 자세한 내용은 조건 유형을 참조하세요. |
작업 | (JSON 목록) 조건이 충족될 때 수행될 작업의 목록입니다. 자세한 내용은 트리거 작업을 참조하세요. |
트리거 이벤트
다음과 같은 이벤트를 사용할 수 있습니다.
트리거 이벤트 | 설명 |
page_enter | 이 이벤트는 방문자가 채팅 위젯을 로드했을 때 유발됩니다. |
chat_requested | 이 이벤트는 방문자가 채팅을 요청할 때 유발됩니다. |
chat_message | 이 이벤트는 방문자가 채팅 메시지를 보낼 때 유발됩니다. |
조건 이벤트
다음과 같은 조건을 사용할 수 있습니다.
조건 유형 | 설명 |
또는 | 어느 조건이든 충족되는지 확인 |
및 | 모든 조건이 충족되는지 확인 |
조건 변수 연산자
조건 변수에 다음과 같은 연산자를 사용할 수 있습니다. 변수에 따라 연산자를 사용하지 못할 수도 있습니다.
연산자 | 설명 |
eq | 다음과 같음 |
neq | 다음과 다름 |
lt | 다음보다 작음 |
gt | 다음보다 큼 |
lte | 다음과 같거나 작음 |
gte | 다음과 같거나 큼 |
icontains | 다음을 포함 |
nicontains | 다음을 포함하지 않음 |
contains | 다음을 포함(대소문자 구분) |
ncontains | 다음을 포함하지 않음(대소문자 구분) |
regex | 정규 표현식 일치(대소문자 구분) |
iregex | 정규 표현식 |
조건 변수
다음과 같은 변수를 사용할 수 있습니다.
시간 및 날짜 변수
유형 | 설명 |
@hour_of_day | 시간(UTC 시간대), 0 ~ 23 |
@day_of_week | 요일. 0 = 월요일, 6 = 일요일 |
@visitor_time_on_page | 방문자가 현재 페이지에 머문 시간(초) |
@visitor_time_on_site | 방문자가 사이트에 머문 시간(초) |
stillOnSite | 다음 조건 확인 전 지연 시간(초) |
stillOnPage | 다음 조건 확인 전 지연 시간(초) |
방문자 위치
유형 | 설명 |
@visitor_ip | 방문자의 IP 주소(xxx.xxx.xxx.xxx) |
@visitor_hostname | 방문자 IP 주소의 호스트 이름 |
@visitor_city | 방문자의 출신 도시 |
@visitor_region | 방문자의 출신 지역 |
@visitor_country_code | 2자로 된 방문자의 국가 코드 |
@visitor_country_name | 방문자의 출신 국가 |
이전 방문 정보
유형 | 설명 |
@visitor_previous_visits | 방문자가 이전에 방문한 횟수. 새 방문 = 0 |
@visitor_previous_chats | 방문자가 상담원과 채팅한 횟수. 새 채팅 = 0 |
페이지 정보
유형 | 설명 |
@visitor_page_url | 방문자가 현재 있는 페이지의 URL |
@visitor_page_title | 방문자가 현재 있는 페이지의 제목 |
@visitor_page_count | 방문자가 본 페이지 수. 첫 페이지 = 1 |
@referrer | 방문자가 있었던 이전 페이지의 URL |
방문자 정보
유형 | 설명 |
@visitor_name | 방문자 이름 |
@visitor_email | 방문자 이메일 |
@visitor_referrer | 방문자의 참조 페이지 URL(사이트에 들어왔을 때) |
@visitor_search_engine | 참조 페이지 검색 엔진(해당되는 경우) |
@visitor_search_terms | 참조 페이지 검색어(해당되는 경우) |
@visitor_tags | 태그의 이름(’태그 설정’ 작업으로 설정) |
@visitor_triggered | 방문자가 트리거된 경우 ‘true’(’트리거됨으로 설정’ 작업으로 설정) |
@visitor_department_id | 방문자의 부서(’방문자 부서 설정’ 작업이나 JavaScript API로 설정) |
방문자 소프트웨어/컴퓨터
유형 | 설명 |
@visitor_user_agent | 방문자의 브라우저 사용자-에이전트 문자열 |
@visitor_browser | 방문자 브라우저 |
@visitor_platform | 방문자의 운영 체제/플랫폼 |
온라인 상태
유형 | 설명 |
@account_status | 계정 상태(온라인/자리 비움/오프라인) |
@visitor_status | 방문자 상태(온라인/유휴/오프라인) |
채팅 관련 정보
유형 | 설명 |
@visitor_requesting_chat | 방문자가 채팅을 요청하는 경우 ‘true’ |
@visitor_served | 방문자가 현재 상담원의 응답을 받고 있는 경우 ‘true’ |
@department | 방문자가 채팅 요청 양식에서 선택하는 부서(이름) |
@visitor_served | 방문자가 현재 상담원의 응답을 받고 있는 경우 ‘true’ |
@sender | 메시지를 보낸 사람의 이름 |
@sender_type | ‘상담원’ 또는 ‘방문자’ |
@message | 메시지를 보냄 |
트리거 작업
작업 | 매개변수 | 설명 |
sendMessageToVisitor | 상담원의 이름과 메시지(문자열) | 방문자에게 메시지를 보냅니다. |
setTriggered | true/false(부울) | 방문자의 “트리거됨” 플래그를 설정합니다. |
wait | 지속 시간(초 단위) (숫자) | 지정된 시간(초) 동안 기다린 후 방문자가 아직 온라인 상태이면 목록의 다음 작업을 수행합니다. |
addTag | 태그 이름(문자열) | 방문자에게 태그를 추가하며, 이는 대시보드 방문자 목록에 표시됩니다. |
removeTag | 태그 이름(문자열) | 방문자의 세션에서 태그를 제거합니다. |
banVisitor | 이유(문자열) | 이유 설명과 함께 방문자를 차단합니다. |
banIp | 이유(문자열) | 이유 설명과 함께 방문자의 IP 주소를 차단합니다. |
setName | 방문자 이름(문자열) | 방문자의 이름을 설정합니다. |
setDepartment | 부서 ID(숫자) | 방문자의 현재 부서를 설정합니다. |
setNote | 메모(문자열) | 방문자에 대한 메모를 설정하며, 이는 대시보드에 표시되며 영구적입니다. |
appendNote | 메모(문자열) | 방문자의 현재 메모 맨 아래에 메모를 첨부합니다. |
모든 트리거 가져오기
GET /api/v2/triggers
계정의 모든 트리거를 나열합니다.
허용 대상
Owner
Administrator
cURL 사용
curl https://www.zopim.com/api/v2/triggers \
-v -u {email_address}:{password}
예제 응답
HTTP/1.1 200 OK
Content-Type: application/json
[
{
”name” : "Good Trigger",
"enabled" : 1,
"description" : “Visitor entered page”},{”name”
},
{
"name" : “Better Trigger”,”enabled”
"enabled" : 1,
"description" : “Visitor requested chat”
}
]
트리거 가져오기
GET /api/v2/triggers/{trigger_name}
계정 소유자/관리자가 이름으로 트리거를 검색할 수 있습니다.
허용 대상
Owner
Administrator
cURL 사용
curl https://www.zopim.com/api/v2/triggers/{trigger_name} \
-v -u {email_address}:{password}
예제 응답
HTTP/1.1 200 OK
Content-Type: application/json
{
"name" : "Good Trigger",
"enabled" : 1,
"description" : "Visitor requested chat",
}
트리거 만들기
POST /api/v2/triggers
계정 소유자/관리자가 계정에 트리거를 추가할 수 있습니다.
허용 대상
Owner
Administrator
cURL 사용
curl https://www.zopim.com/api/v2/triggers \
-d '{
"name" : "Good Trigger",
"enabled" : 1,
"description" : "Visitor requested chat"
}' \
-v -u {email_address}:{password} \
-X POST -H "Content-Type: application/json"
예제 응답
HTTP/1.1 201 Created
Content-Type: application/json
{
"name" : "Good Trigger",
"enabled" : 1,
"description" : "Visitor requested chat",
}
특정 페이지/디렉토리를 대상으로 한 메시지
특정 URL 또는 디렉토리에 자동화된 메시지를 보냅니다.
curl https://www.zopim.com/api/v2/triggers \
-d '{
"name" : "Stripe Shoe",
"enabled" : 1,
"description" : "Send discount code for Stripe Shoe",
"definition" : {
"event" : "page_enter",
"condition" : [
"and",
[
"icontains",
"@visitor_page_url",
"stripshoe"
],
[
"stillOnPage",
20
]
],
"actions" : [
[
"sendMessageToVisitor",
"Timmy",
"We have a discount code for you! Use DISCOUNT10 on your next checkout"
]
]
}
}' \
-v -u {email_address}:{password} \
-X POST -H "Content-Type: application/json"
자세한 트리거 구성은 계정의 트리거 페이지를 참조하세요.
트리거 업데이트
PUT /api/v2/triggers/{trigger_name}
계정 소유자/관리자가 트리거의 데이터를 업데이트할 수 있습니다.
허용 대상
Owner
Administrator
cURL 사용
curl https://www.zopim.com/api/v2/triggers/{trigger_name} \
-d '{
"name" : "Best Trigger",
"description" : "Visitor requested new chat"
}' \
-v -u {email_address}:{password} \
-X PUT -H "Content-Type: application/json"
예제 응답
HTTP/1.1 200 OK
Content-Type: application/json
{
"name" : "Best Trigger",
"enabled" : 1,
"description" : "Visitor requested new chat",
}
트리거 삭제
DELETE /api/v2/triggers/{trigger_name}
계정 소유자/관리자가 트리거를 삭제할 수 있습니다.
허용 대상
Owner
Administrator
cURL 사용
curl https://www.zopim.com/api/v2/triggers/{trigger_name} \
-v -u {email_address}:{password} -X DELETE
예제 응답
HTTP/1.1 204 OK
Content-Type: application/json