API JavaScript de Live Chat

Use a API JavaScript do onWebChat para personalizar o seu widget de chat e automatizar fluxos. Pode passar dados do visitante, definir o idioma do widget, maximizar ou ocultar o widget e mais.

Por exemplo, pode enviar os detalhes do visitante para o chat, definir o idioma por página ou abrir o widget de forma programática quando um utilizador clica num botão.

Adicione o seu código API logo abaixo do script do widget de chat, como mostrado à direita.




    <script type='text/javascript'>
        /* Paste your onWebChat widget installation snippet from the dashboard here. */
    </script>
    <script type='text/javascript'>
        /* Add your JavaScript API calls below, for example onWebChat.set() or onWebChat.get() */
    </script>


Definir Informação do Visitante

Pode definir os dados do visitante antes ou durante uma sessão de chat. Por exemplo, definir o nome ajuda a sua equipa a identificar contactos na lista de visitantes.

Use estas chamadas API para definir nome, email, telefone e notas do visitante:



    onWebChat.set("name","Sarah Chen");
    onWebChat.set("email","sarah.chen@example.com");
    onWebChat.set("phone","+1 555 010 0142");
    onWebChat.set("notes","Returning visitor, requested an Enterprise trial");
                        
                        

Obter Informação do Visitante

Pode ler o nome, e-mail, telefone e notas do visitante sempre que esses valores tenham sido fornecidos através desta API JavaScript, recolhidos no formulário pré-chat ou atualizados pelos agentes no painel de controlo.

Chame estas funções após o widget estar completamente carregado. Exemplo:
onWebChat.set("onWebChatLoaded", function() { console.log("visitor name: " + onWebChat.get("name")); });



    onWebChat.get("name");
    onWebChat.get("email");
    onWebChat.get("phone");
    onWebChat.get("notes");

Definir Idioma do Widget

Defina o idioma do widget usando o código de idioma para qualquer idioma ativado no seu painel.

Por exemplo, "pt" para português, "en" para inglês e "es" para espanhol. Se o código não estiver ativado, o widget usa o seu idioma predefinido. Pode alterar o idioma em Definições > Idiomas.

Códigos de idioma disponíveis:

am ar az be bg bn bs ca cs da de dv dz el en es et fa fi fil fo fr he hi hr ht hu hy id is it ja ka kk kl km ko ky la lb lo lt lv mg mk mn ms mt my ne nl no pl ps pt ro ru rw si sk sl sm so sq sr sv sw tg th ti tk to tr uk ur uz vi zh zh-TW





    onWebChat.set("language","es");




Definir Aparência do Widget

Pode controlar as definições principais de exibição do widget:

Use o parâmetro max com 0 para minimizar ou 1 para maximizar o widget.

Para ocultar o widget, use a função set com o parâmetro show e valor 0. Use 1 para voltar a mostrar.





    onWebChat.set("max",1);

    onWebChat.set("show",0);




Definir Informação da Página

Pode sobrescrever a URL e o título da página atual enviados ao onWebChat:

Use o parâmetro pageUrl para definir um URL personalizado visível para os agentes na consola de chat. Útil para aplicações de página única (SPA) ou roteamento personalizado.

Use o parâmetro pageTitle para definir um título personalizado que os agentes verão em vez do título da página do navegador.





    onWebChat.set("pageUrl","https://onwebchat.com/newPage");

    onWebChat.set("pageTitle","New title");




Obter Estado do Widget

Devolve "online" ou "offline" consoante a disponibilidade atual do seu chat.

Chame esta função após o widget carregar. Exemplo:
onWebChat.set("onWebChatLoaded", function() { console.log("chat status: " + onWebChat.get("status")); });




    onWebChat.get("status");



Obter estado da ligação

Devolve true se o widget de chat tem uma ligação socket ativa com o servidor, ou false caso contrário. Útil para verificar a conectividade antes de executar ações.




    onWebChat.get("isConnected");



Obter estado aberto/fechado do widget

Devolve true se o widget de chat está atualmente maximizado (aberto), ou false se está minimizado (fechado).




    onWebChat.get("isMaximized");



Obter ID do diálogo

Devolve o ID do diálogo ativo atual, ou 0 se não houver um diálogo de chat ativo. Útil para integrações que precisam de ligar uma sessão de chat a um CRM ou sistema de tickets.




    onWebChat.get("dialogId");



Enviar mensagem

Pode enviar uma mensagem de chat em nome do visitante de forma programática. Útil para criar fluxos de ajuda contextuais, como enviar "Preciso de ajuda com a minha encomenda" quando o visitante clica num botão de ajuda.

A mensagem aparecerá no chat como se o visitante a tivesse escrito. O widget deve estar carregado e ligado antes do envio.




    onWebChat.set("sendMessage","I need help with my order");



Definir departamento

Pode pré-selecionar um departamento para o visitante com base no contexto da página. Por exemplo, encaminhar automaticamente visitantes na página de preços para "Vendas" e na página de ajuda para "Suporte".

Pode passar o nome do departamento (string) ou o ID do departamento (number). O nome deve corresponder a um dos departamentos configurados no seu painel.




    onWebChat.set("department","Sales");



Funções Callback

Pode executar funções callback quando ocorrem eventos específicos do chat:

onClick executa quando o visitante clica no widget de chat

onMaximize executa quando o widget é maximizado

onMinimize executa quando o widget é minimizado

onTrigger executa quando um trigger é ativado

onStartWriting executa quando o visitante começa a escrever

onNewMessage executa quando uma nova mensagem é enviada ou recebida. O callback recebe dois argumentos: o texto da mensagem e quem a enviou ("visitor", "agent" ou "bot")

onEndChat executa quando o chat é terminado. O callback recebe um argumento: quem o terminou ("visitor", "agent" ou "bot")

onChatStatusChange executa quando o estado do widget de chat muda para online ou offline. O callback recebe um argumento: o novo estado ("online" ou "offline")

onWebChatLoaded executa quando o widget de chat termina de carregar




    onWebChat.set("onClick",function(){ alert('chat widget is clicked'); });

    onWebChat.set("onMaximize",function(){ alert('chat maximized'); });

    onWebChat.set("onMinimize",function(){ alert('chat minimized'); });

    onWebChat.set("onTrigger",function(){ alert('trigger activated'); });

    onWebChat.set("onStartWriting",function(){ alert('visitor is writing'); });

    onWebChat.set("onNewMessage",function(msg, by){
        console.log('new message by ' + by + ': ' + msg);
    });

    onWebChat.set("onEndChat",function(endedBy){
        console.log('chat ended by ' + endedBy);
    });

    onWebChat.set("onChatStatusChange",function(status){
        console.log('agents are now ' + status);
    });

    onWebChat.set("onWebChatLoaded",function(){ alert('chat widget is loaded'); });


Usamos cookies para garantir que oferecemos a melhor experiência em nosso site.