質問
営業時間 が終了する前にWeb Widget(従来版)を読み込んだ場合、その日のエージェント全員がオフラインになった後にチャットを開始できます。その結果、オフラインメッセージではなく、対応でき なかったチャット が作成されます。現在オフラインの部門に対してチャットのリクエストをウィジェットで受け付けないようにする方法はありますか?
回答
免責事項:この記事は説明のみを目的として提供されています。記事内で例示したコードについて、Zendeskはサポートも保証もいたしません。何か問題があった場合はコメント欄に投稿するか、インターネットで解決策を探してみてください。
ウィジェットがページに読み込まれた後にオフラインになった場合、ウィジェットの動作はリアルタイムでは更新されません。ただし、このAPIを使用して、訪問者がアクティブなセッションになっていない場合はいつでも、ウィジェットを強制的に更新することができます。
チャット部門でステータスが更新されるたびに、新しいステータスが「 オフライン 」であることを確認し、訪問者がすでにアクティブセッションにいるかどうかを確認します。エージェントのステータスが「 オフライン 」で、訪問者がアクティブなセッションにいない場合は、updateSettings メソッドを使用してチャットを非表示にします。
CRM 部門がオンラインかどうかを確認する以下の例を参照してください。
<script id="ze-snippet"
src="https://static.zdassets.com/ekr/snippet.js?key=ACCOUNT_KEY"> </script>
<script>
// run whenever the department changes
zE('webWidget:on', 'chat:departmentStatus', function(dept) {
// only continue if the desired department is returning offline
if (dept.name === 'CRM' && dept.status === 'offline') {
// get the current state of the chat session
let isChatting = zE('webWidget:get', 'chat:isChatting');
// only update to suppress chat if the visitor is not currently chatting
if (isChatting == false) {
zE('webWidget', 'updateSettings', {
webWidget: {
chat: {
suppress: true
}
}
});
}
}
});
</script>
翻訳に関する免責事項:この記事は、お客様の利便性のために自動翻訳ソフトウェアによって翻訳されたものです。Zendeskでは、翻訳の正確さを期すために相応の努力を払っておりますが、翻訳の正確性については保証いたしません。
翻訳された記事の内容の正確性に関して疑問が生じた場合は、正式版である英語の記事を参照してください。