Skip to main content

Integração SDK

Para usar o falazap sem a necessidade de outros arquivos, mais personalizável e flexível.

Adicionar antes do fechamento da tag

<body> de sua página o seguinte código.

<script id="falazapScript" src="url"></script>

O valor "url" no campo src deve ser inserido de acordo com o stage do agente que será utilizado, podendo ser:

Após isso, o objeto falazap estará disponível globalmente. Ao instanciar uma nova tag script, será possível acessar esse objeto para acionar funções e acessar eventos do falazap. Algumas dessas funções e eventos são opcionais, e servem apenas de auxílio.

Funções obrigatórias:

startChat

A função startChat deve ser chamada ao final do script, e recebe como parâmetro o token do agente. Ex:

<script>
falazap.falazapFunctions.startChat("token");
</script>

Essa função também aceita um objeto como segundo parâmetro, o mesmo é opcional e possui os seguintes campos:

startsOpened: boolean (caso passado como true, o chat iniciará aberto, sem a necessidade de clique para abrí-lo.)
firstMessage: string (caso queira definir manualmente a primeira mensagem automática do agente)
firebaseMessagingSwPath: string (caminho para o script ServiceWorker do firebase, usado para push-notifications)
chatName: string (nome que aparecerá no header do chat)

Exemplo:

<script>
falazap.falazapFunctions.startChat("token", {
startsOpened: true,
fullScreen: true,
firstMessage: "olá",
firebaseMessagingSwPath: "http://caminho-para-firebaseMessagingSw.js",
chatName: "Meu Chat",
});
</script>

Funções opcionais:

setUser

A função setUser serve para disparar o evento de gerar uma hash para o usuário, recebendo qualquer informação como parâmetro. Exemplo:

falazap.falazapFunctions.setUser({
nome: "fulano",
email: "[email protected]",
cpf: "812.323.730-87",
});

setConfig

A função setConfig recebe um objeto com vários parâmetros opcionais que irão ditar alguns comportamentos do Falazap.
São eles:

  • useUnreadMessagesNotification: boolean
    Caso queira utilizar contador de mensagens não lidas quando chat estiver minimizado.

  • useInactivityTimeout: {}
    Esse objeto recebe dois parâmetros, e deve ser informado caso queira usar tempo de inatividade durante a conversa com o agente:

    • active: boolean
      Se a funcionalidade estará ativa ou nao

    • minutes: number
      Quantidade em minutos para o tempo máximo de inatividade

  • onCloseChatActions: {}
    Esse objeto recebe alguns parâmetros para especificar quais ações serão tomadas ao realizar o fechamento do chat, são eles:

    • sendMessage: boolean
      Se deverá ser enviada uma mensagem ao fechar o chat

    • closeLivechatClientMessage: string
      Mensagem enviada quando o usuário finalizar o chat enquanto estiver em atendimento humano

    • closeLivechatAgentMessage: string
      Mensagem enviada quando o usuário finalizar o chat enquanto estiver em conversa com o agente

    • clearMessageHistory: boolean
      Se deverá limpar o histórico de conversas

    • closeConnection: boolean
      Se deverá fechar a conexão

  • hideHeader: boolean
    Caso queira esconder o header do Falazap (normalmente usado em integrações para Aplicativos).

  • isAndroid: boolean
    Caso queira informar que está usando o SDK dentro de uma integração com Aplicativo Android.

  • usesSetUser: boolean
    Parâmetro que deve ser informado caso esteja usando a funcionalidade setUser.

  • hideUseVoiceImage: boolean
    Parâmetro que define se a imagem de incentivo a uso de voz será ocultada.

  • useMessageFromPath: boolean
    Parâmetro que especifica se a mensagem inicial será enviada com base no path da página (padrão true).

  • chatStyle: 'default' | 'centered' | 'fullScreen'
    Parâmetro que define o estilo visual do chat. Valor padrão: 'default'

Exemplo:

falazap.falazapFunctions.setConfig({
useUnreadMessagesNotification: true,
useInactivityTimeout: { active: true, minutes: 5 },
onCloseChatActions: {
closeLivechatClientMessage: "Cliente fechou janela do chat.",
closeLivechatAgentMessage: "#endBot",
clearMessageHistory: true,
closeConnection: true,
sendMessage: true,
},
});

openChat

Função que pode ser chamada para abrir o chat.

minimizeChat

Função que pode ser chamada para minimizar o chat. (por padrão essa função é disparada ao clicar no botão que irá minimizar o chat, mas pode ser invocada a qualquer momento)

endChat

Função que pode ser chamada para disparar os eventos de fechamento de chat definidos na propriedade onCloseChatActions (por padrão essa função é disparada ao clicar no botão que irá fechar o chat, mas pode ser invocada a qualquer momento)

cleanSingleEvent

Função que pode ser chamada para remover funções declaradas em eventos subscription. Recebe como parâmetros o nome do evento, e a função aplicada. Ex: falazap.falazapFunctions.cleanSingleEvent('chatOpened', funcaoAtribuidaAnteriormente)

Eventos (auxiliares)

As subscriptions são eventos auxiliares, disparados quando determinadas funções são chamadas.

<script>
// evento disparado quando uma mensagem que acabou de ser enviada, por parâmetro recebe a mensagem em si
falazap.subscriptions.onSendMessage((message) => {
console.log("sendMessage", message);
});

// evento disparado quando uma mensagem que acabou de ser recebida, por parâmetro recebe a mensagem em si
falazap.subscriptions.onReceiveMessage((message) => {
console.log("receiveMessage", message);
});

// evento disparado quando a função setUser é chamada, recebe como parâmetro o hash gerado
falazap.subscriptions.onSetUser((message) => {
console.log(message);
});

// evento disparado quando a janela do chat é aberta
falazap.subscriptions.onChatOpen((message) => {
console.log("chatOpened", message);
});

// evento disparado quando a janela do chat é fechada
falazap.subscriptions.onChatClose((message) => {
console.log(message);
});

// evento disparado quando a janela do chat é minimizada
falazap.subscriptions.onChatMinimize((message) => {
console.log(message);
});

// evento disparado quando a função endChat é chamada
falazap.subscriptions.onChatEnded((message) => {
console.log(message);
});

// evento disparado quando a função chatStart é chamada
falazap.subscriptions.onChatStart((message) => {
console.log(message);
});

// evento disparado quando finaliza o tempo definido para inatividade
falazap.subscriptions.onInactivityTimeout((message) => {
console.log(message);
});
</script>