Quando os sistemas têm vários departamentos, em alguns casos os administradores preferem encaminhar as solicitações de chat para departamentos específicos automaticamente.
Considere o seguinte cenário:
O cliente tem um website para a Austrália e outro para a Alemanha, portanto há duas equipes de suporte representadas no Zopim por dois departamentos diferentes.
Como o administrador sabe desde o início que todos os visitantes no website australiano devem ser atendidos por Department_Australia (valor estático, configurado manualmente pelo administrador no script e não se importa com os outros departamentos e seus status), ele deseja fazer o seguinte:
- Se Department_Australia estiver offline, o sistema ocultará o widget.
- Se Department_Australia estiver online, o sistema definirá o departamento (Department_Australia) e ocultará a opção da lista suspensa (seleção do departamento) do widget.
A solução:
usando a API do JS do Zopim, você pode identificar o status do departamento envolvido antes de exibir o widget na página usando as ações a seguir disponibilizadas:
- Ocultar completamente o widget quando o departamento relevante estiver offline;
- Exibir o widget e encaminhar automaticamente uma solicitação de chat potencial ao departamento envolvido.
Uso do widget de chat do Zopim
<script>
window.$zopim||(function(d,s){var z=$zopim=function(c){z._.push(c)},$=z.s=
d.createElement(s),e=d.getElementsByTagName(s)[0];z.set=function(o){z.set.
_.push(o)};z._=[];z.set._=[];$.async=!0;$.setAttribute("charset","utf-8");
$.src="//v2.zopim.com/?Zopim_key";z.t=+new Date;$.
type="text/javascript";e.parentNode.insertBefore($,e)})(document,"script");
$zopim(function() {
$zopim.livechat.setOnConnected(function() {
$zopim.livechat.setOnStatus(function () {
var department_status = $zopim.livechat.departments.getDepartment('Australia');
if (department_status.status == 'offline') {
// Set the account status to 'offline'
$zopim.livechat.setStatus('offline');
// hide the widget or similar
$zopim.livechat.hideAll();
} else {
// The department is Online (At least one agent in that dept is Online)
// Automatically add a tag
$zopim.livechat.addTags("australia_chat");
// Hide the Drop-down list option in the Pre-Chat Form to select the Department
$zopim.livechat.departments.filter('');
// Automatically set the Department
$zopim.livechat.departments.setVisitorDepartment('Australia');
}
});
});
});
</script>
Uso do Web Widget
<script>
window.zEmbed||function(e,t){var n,o,d,i,s,a=[],r=document.createElement("iframe");window.zEmbed=function(){a.push(arguments)},window.zE=window.zE||window.zEmbed,r.src="javascript:false",r.title="",r.role="presentation",(r.frameElement||r).style.cssText="display: none",d=document.getElementsByTagName("script"),d=d[d.length-1],d.parentNode.insertBefore(r,d),i=r.contentWindow,s=i.document;try{o=s}catch(c){n=document.domain,r.src='javascript:var d=document.open();d.domain="'+n+'";void(0);',o=s}o.open()._l=function(){var o=this.createElement("script");n&&(this.domain=n),o.id="js-iframe-async",o.src=e,this.t=+new Date,this.zendeskHost=t,this.zEQueue=a,this.body.appendChild(o)},o.write('<body onload="document._l();">'),o.close()}("https://assets.zendesk.com/embeddable_framework/main.js","mysubdomain.zendesk.com");
zE(function() {
$zopim(function() {
$zopim.livechat.setOnConnected(function() {
$zopim.livechat.setOnStatus(function () {
var department_status = $zopim.livechat.departments.getDepartment('Australia');
if (department_status.status == 'offline') {
// Set the account status to 'offline'
$zopim.livechat.setStatus('offline');
// hide the widget or similar
$zopim.livechat.hideAll();
} else {
// The department is Online (At least one agent in that dept is Online)
// Automatically add a tag
$zopim.livechat.addTags("australia_chat");
// Hide the Drop-down list option in the Pre-Chat Form to select the Department
$zopim.livechat.departments.filter('');
// Automatically set the Department
$zopim.livechat.departments.setVisitorDepartment('Australia');
}
});
});
});
});
</script>
0 Comentários
Por favor, entre para comentar.