Outbound LivePerson

Visão geral

Com a ferramenta Proactive Messaging da LivePerson é possível criar campanhas e templates para envio de mensagens ativas via WhatsApp e Apple Business Chat.

Antes de habilitar a API de Outbound no Zenvia NLU, você deverá consultar essa documentação da LivePerson e se certificar que cumpriu todos os requisitos, com atenção especial ao template (HSM)

Caso você fique preso na tela de apresentação "LivePerson Proactive Messaging" realize a limpeza de cache e cookies do seu navegador

Os próximos passos serão dedicados a habilitar e configurar API para envio de outbound via WhatsApp.

Habilitar e configurar API

Vá até Canais > WhatsApp > LivePerson

Estrutura

Na tela inicial da área de edição de integrações você verá todas as informações da integração. No fim da página você irá encontrar um botão para habilitar a API de outbound.

Você deverá escolher entre a versão 1.0 ou 2.0, conforme a versão da sua conta na LivePerson.

Versão 1.0

Ao habilitar a API de outbound 1.0 é gerado um endpoint e um token. Eles serão utilizados para realizar o envio das mensagens ativas. Use a ferramenta de requisição de API’s de sua preferência, e a configure utilizando as seguintes informações:

POST https://outbound.ms.altubots.com/liveperson/<slug>/<id_integracao>

Headers

NameTypeDescription

Content-type

string

application/json

Authorization

string

<token>

{
  "status": "pending",
  "messageId": 161
}

Você encontra um exemplo de como fazer a requisição no campo de “documentação” que fica ao lado das configurações da API. Essas informações podem ser copiadas e coladas.

Body's templates:

Utilize este body quando for enviar uma mensagem ativa somente com texto e variáveis, SEM imagens, botões ou documentos:

{
    "destination": "35999999999",
    "context": {
        "status": "aprovado"
    },
    "hsm": true,
    "richTemplateName": "meu_template",
    "richTemplateVariables": {
        "variable_number": "variable_value"
    },
    "restartContact": false,
    "skill": "minha_skill",
		"inactivityTime": 2
}

Atributos:

  • destination: número que irá receber a mensagem

  • context (opcional): variáveis que serão salvas no contexto do usuário

  • hsm: campo necessário para envio de mensagem hsm

  • richTemplateName: nome do template de mensagem a ser enviado

  • richTemplateVariables (opcional): variáveis do template

    • variable_number: número da variável dentro do template (1, 2, 3...)

    • variable_value: valor que substituirá o número da variável no template

  • restartContact (opcional): boleano para resetar as variáveis de contexto do usuário

  • skill (opcional): habilidade na liveperson que atenderá o usuário

  • inactivityTime (opcional): tempo em minutos que deve passar desde a última interação do usuário com o assistente para que a mensagem seja enviada. Exemplo: Se o usuário está interagindo ou interagiu com assistente a 1 minuto e o tempo de inatividade necessário para mensagem ser enviada é 2 minutos("inactivityTime": 2) a mensagem não é enviada, caso a interação tivesse ocorrido a 3 minutos a mensagem seria enviada.

Exemplo HSM Padrão:

TemplateName: template_test

Mensagem: Olá {{1}}! Temos uma atualização a respeito da sua solicitação aberta. Envie um "oi" para saber mais.

{
    "destination": "35998631234",
    "context": {
        "status": "aprovado"
    },
    "hsm": true,
    "richTemplateName": "template_test",
    "richTemplateVariables": {
        "1": "TESTE"
    },
    "restartContact": false,
    "skill": "atendimento",
		"inactivityTime": 2
}    

Mensagem recebida:

Olá TESTE! Temos uma atualização a respeito da sua solicitação aberta. Envie um "oi" para saber mais.

Webhook de status

Um webhook é uma infraestrutura que recebe informações sobre as mensagens de outbound enviadas. Ele é composto por um endpoint (link do webhook, onde o cliente receberá as atualizações de status) e um token (acesso gerado pela equipe Zenvia NLU para realizar a integração). Você vai precisar das seguintes informações, que são encontradas logo abaixo da área de configuração da API de outbound:

  • Header: token gerado pelo Zenvia NLU, que é específico para cada assistente e canal

  • Post: link com o endpoint informado para acesso

Os status retornados via webhook são:

  • Enviado (sent): retorno exclusivo para ativos enviados pela LivePerson, indica o sucesso no encaminhamento da mensagem.

  • Entregue (delivered): Indica que a mensagem foi entregue (equivalente ao sinal único de visto ✅ no WhatsApp).

  • Respondido (replied): Indica que a mensagem foi respondida pelo usuário.

  • Erro (error): Indica que houve um erro no envio da mensagem.

O status <enviado> é instantâneo. O <respondido>será entregue primeiro e tem prioridade no <entregue>

{
  "external_id": "36ef4510-9c96-11eb-8ccf-dfce354710ee",
  "status": "sent",
  "destination": "35999999999",
  "client": "demo",
  "date": "2021-04-13T17:24:16-03:00"
}

Versão 2.0

Na tela de configuração da API de outbound, ao selecionar a opção V 2.0 a configuração passa a ser a seguinte:

  • ALTU Token: token configurado que será usado na requisição

  • Domínio do serviço: informação preenchida automaticamente de acordo com o id da conta cadastrado na integração

  • Domínio da API: informação preenchida automaticamente de acordo com o id da conta cadastrado na integração

Os dados abaixo devem ser recuperados através da URL: https://authentication.liveperson.net/

  • Id do cliente: Id do cliente localizado na conta LivePerson

  • Segredo do cliente: Id do cliente localizado na conta LivePerson

Ao salvar a integração na versão 2.0, não será possível voltar para a 1.0

POST https://outbound.ms.altubots.com/liveperson/<slug>/<id_integracao>

Headers

NameTypeDescription

Content-type

string

application/json

Authorization

string

<token>

{
  "status": "sent",
  "messageId": 163,
  "external_id": "1405d120-c801-11ea-bc3c-331e67fe876f",
  "contact_id": 1
}

Você encontra um exemplo de como fazer a requisição no campo de “documentação” que fica ao lado das configurações da API. Essas informações podem ser copiadas e coladas.

Body's templates:

Utilize este body quando for enviar uma mensagem ativa somente com texto e variáveis, SEM imagens, botões ou documentos:

{
    "outboundNumber": "5511999999999",
    "destination": "35999999999",
    "context": {
        "status": "aprovado"
    },
    "hsm": true,
    "templateId": "1111111111111",
    "richTemplateVariables": {
        "variable_number": "variable_value"
    },
    "restartContact": false,
    "skill": "atendimento",
		"inactivityTime": 2
} 

Atributos:

  • outboundNumber: número que irá enviar a mensagem

  • destination: número que irá receber a mensagem

  • context (opcional): variáveis que serão salvas no contexto do usuário

  • hsm: campo necessário para envio de mensagem hsm

  • templateId: nome do template de mensagem a ser enviado

  • richTemplateVariables (opcional): variáveis do template

    • variable_number: número da variável dentro do template (1, 2, 3...)

    • variable_value: valor que substituirá o número da variável no template

  • restartContact (opcional): boleano para resetar as variáveis de contexto do usuário

  • skill : habilidade na liveperson que atenderá o usuário

  • inactivityTime (opcional): tempo em minutos que deve passar desde a última interação do usuário com o assistente para que a mensagem seja enviada. Exemplo: Se o usuário está interagindo ou interagiu com assistente a 1 minuto e o tempo de inatividade necessário para mensagem ser enviada é 2 minutos("inactivityTime": 2) a mensagem não é enviada, caso a interação tivesse ocorrido a 3 minutos a mensagem seria enviada.

Na versão 2.0 o Webhook de status não está disponível.

Last updated