질문
JavaScript API를 사용하여 Web Widget(클래식)의 기본 동작을 수정하고 싶습니다. 헬프 센터를 살펴보다가 여러 가지 다른 구현 방식을 찾았습니다. 이러한 서로 다른 Web Widget(클래식) API 워크플로를 결합하려면 어떻게 해야 하나요?
답변
가장 중요한 것은언제위젯 설정을 적용하고 싶은지 알아야 합니다. 부서가 업데이트될 때마다 실행해야 하는 워크플로우도 있고, 위젯이 처음 연결되거나 다시 연결될 때 실행되어야 하는 워크플로우도 있습니다. 다음과 같이 표시됩니다. 다음은CRM부서를 설정하는 간단한 예입니다.
<script id="ze-snippet"
src="https://static.zdassets.com/ekr/snippet.js?key=ACCOUNT_KEY"> </script>
<script>
// first hide the widget on page load
zE('webWidget', 'hide');
// whenever an unread message appears unhide and open the widget
zE('webWidget:on', 'chat:unreadMessages', function(number) {
zE('webWidget', 'show');
zE('webWidget', 'open');
});
// this callback runs whenever chat first connects (or reconnects)
zE('webWidget:on', 'chat:connected', function() {
// put any code you only want run once here
});
// this callback runs whenever a department status changes
zE('webWidget:on', 'chat:departmentStatus', function(dept) {
// only set the widget online for chat if this department was online
if (dept.name === 'CRM' && dept.status === 'online') {
// apply the chat widget settings
zE('webWidget', 'updateSettings', {
webWidget: {
chat: {
departments: {
enabled: [''],
select: 'CRM'
},
suppress: false
}
}
});
} else if (dept.name === 'CRM' && dept.status !== 'online') {
// or suppress chat (optional: apply contact form settings here)
zE('webWidget', 'updateSettings', {
webWidget: {
chat: {
suppress: true
}
}
});
}
});
</script>
위의 스크립트에서 논의할 가치가 있는 몇 가지 사항이 있습니다. 첫째, 위젯을 숨긴 다음 읽지 않은 메시지를 받을 때 위젯을 표시하는 초기 단계를 스크립트의 나머지 기능을 변경하지 않고 완전히 생략할 수 있습니다. 위젯이 로드되자마자 사용 중이므로 스크립트 맨 위에 배치되었습니다. 반드시 필요한 것은 아닙니다.
다음으로, 일부 사용자 지정 워크플로우에서는 updateSettings API 블록을chat:connected콜백에 배치하지만,chat:departmentStatus에도 배치할 수 있으며, 위젯이 처음 연결(또는 재연결)될 때에도 적용됩니다. 세션 시간 초과 후). 따라서 chat:connected
한 번만 실행하려는 명령을 위한 API 및 chat:departmentStatus
페이지가 로드된 후 지정된 부서가 변경될 때마다 실행하려는 명령에 대한 API입니다.
다양한Web Widget(클래식)API 워크플로에 대한 자세한 내용은
- 특정 부서가 온라인 상태일 때만 웹페이지에 Chat을 표시하도록 Web Widget(클래식)을 구성할 수 있나요?
- 시간이 초과된 채팅 방문자가 다시 연결한 후 부서를 다시 적용할 수 있나요?
- 방문자가 시간이 초과되었지만 다시 연결되는 경우 채팅 전 양식이 표시되도록 하려면 어떻게 해야 하나요?
번역 고지 사항: 본 문서는 콘텐츠에 대한 기본적인 이해를 제공하기 위해 자동 번역 소프트웨어를 사용하여 번역되었습니다. 정확한 번역을 제공하고자 합당한 노력을 기울였으나 Zendesk는 번역의 정확성을 보장하지 않습니다.
번역된 문서에 포함된 정보의 정확성과 관련하여 질문이 있으시면 문서의 공식 버전인 영문 버전을 참조하시기 바랍니다.
댓글 0개