Como podemos ajudar?

Integração de Saída

Integração de Saída:
Whatsapp > CRM e os seus outros sistemas

Partilhe este artigo com o seu programador ou utilize Zapier para integrar o seu sistema com o Whatsapp

Configuração

TimelinesAI permite notificar um sistema externo quando uma nova mensagem é recebida ou enviada em qualquer conta whatsapp ligada num espaço de trabalho. Isto inclui mensagens whatsapp enviadas através da Whatsapp Mobile App ou de dentro das linhas de tempo.

É frequente essa integração ser utilizada através de algum serviço intermediário como o Zapier, onde cada activação de um gancho da web conta para a utilização da quota de tarefas.

Para tornar a utilização da quota de tarefas mais eficiente, a TimelinesAI oferece a possibilidade de agregar múltiplas mensagens enviadas ou recebidas num chat específico ao longo do período de tempo seleccionado. As mensagens são enviadas através do gancho da web como um único "pacote". Para sua conveniência, tal "pacote" contém um campo com a agregação pré-formatada de mensagens (e uma ligação ao ponto nas conversas em TimelinesAI), mas pode implementar a sua própria formatação utilizando os dados fornecidos com o gancho da web.

Tela Filmada 2021 11 23 a 12 06 26
Pacote de mensagens enviadas através de um gancho da web

Para configurar a integração utilizando os ganchos de saída da Web:

  1. Navegue para o Gancho Web menu na sua conta da TimelinesAI
  2. Seleccionar separador Outbound (Saída).

Tela Filmada 2021 11 23 às 11.47.21

Ser-lhe-ão apresentadas as seguintes configurações:

  • Agregação Granularidade - as mensagens serão agregadas e enviadas usando o gancho da web de acordo com a selecção (cada 1 / 6 / 12 / 24 horas) ou serão enviadas assim que aparecerem em linhas de tempo ("Não agregar")
  • Webhook URL - aqui precisa de introduzir o URL real que precisa de ser notificado.
  • Gancho da Web activado - pode desactivar o gancho da Web se quiser parar a integração.

Assim que um Gancho da Rede for activado e algumas mensagens forem enviadas, será exibido um registo de actividades (até 10 acções mais recentes).

Erros e resolução de problemas

Para assegurar o funcionamento correcto da integração, se forem encontrados mais de 10 erros consecutivos a partir da extremidade receptora (qualquer erro, desde o URL inválido até ao código de resposta que não seja 200), o sistema desactivará automaticamente a integração. Neste caso, o proprietário do espaço de trabalho receberá uma notificação por correio electrónico.

Caso seja necessário resolver um erro, pode descarregar um registo detalhado (a ligação ficará disponível no fundo da página), onde aparecerão até 100 pedidos mais recentes com todos os detalhes dos dados enviados e a resposta recebida.

Formato dos dados

Os dados serão enviados para o URL de um Webhook através de um pedido HTTP POST, em formato JSON. Os dados são fornecidos em 2 formatos diferentes, dependendo da configuração de Granularidade de Agregação, conforme descrito abaixo.

Agregar a cada X horas

As mensagens serão agregadas num "pacote". Estarão disponíveis os seguintes dados:

  • "conta whatsapp" - os detalhes da conta whatsapp (e do colega de trabalho, que ligou a conta), através da qual a mensagem foi recebida ou enviada
    • "telefone" - o número de telefone da conta WA
    • "full_name" - o nome completo do titular da conta WA, tal como registado em Timelines
    • "email" - o email do titular da conta WA, tal como registado em Timelines
  • "chat" - os detalhes do chat (chat directo ou grupo), em que a mensagem foi enviada ou recebida
    • "full_name" - o nome do chat (como aparece nas linhas do tempo)
    • "responsible_name" - o nome de um colega de equipa que é atribuído como responsável a este chat
    • "responsible_email" - o e-mail de um colega de equipa que é atribuído como responsável a este chat
    • "chat_url" - o URL, no qual o chat pode ser acedido em TimelinesUI
    • "chat_id" - o ID do chat em TimelinesUI (pode ser usado para construir o URL do chat ou com ganchos web de entrada)
    • "is_new_chat" - verdadeiro, se este chat acabou de ser criado, falso, caso contrário
    • "is_group" - verdadeiro, se este chat for um chat directo, falso de outra forma
    • "telefone" - número de telefone do chat (vazio para o chat em grupo)
  • "mensagens" - uma lista de mensagens, onde cada objecto de mensagem contém os seguintes campos
    • "direcção" - pode ser "recebido" ou "enviado"
    • "timestamp" - timestamp de uma mensagem, no fuso horário UTC
    • "message_id" - não está a ser utilizado
    • "message_uid" - ID interno único da mensagem que pode ser utilizado com a API pública para carregar detalhes da mensagem e actualizações de estado (ver detalhes aqui)
    • "remetente" - detalhes de um remetente (participante do chat) de uma mensagem
      • "full_name" - título de um chat ou nome de um colega de equipa nas linhas de tempo (se enviado de dentro das linhas de tempo)
      • "telefone" - número de telefone do remetente (ou vazio para conversação em grupo)
    • "destinatário" - detalhes de um remetente (participante do chat) de uma mensagem
      • "full_name" - título de um chat ou nome de um colega de equipa em Timelines
      • "telefone" - número de telefone do destinatário (ou vazio para chat de grupo)
    • "texto" - texto da mensagem (texto simples)
    • "attachment" - um objeto que descreve o anexo da mensagem, incluindo os seguintes campos
      • "temporary_download_url" - um URL de descarregamento temporário, válido por 15 minutos
      • "filename" - nome do ficheiro
      • "size" - tamanho do ficheiro, em bytes
      • "mimetype" - tipo mime do ficheiro
  • "first_message_timestamp" - timestamp da mensagem mais antiga do pacote, no fuso horário UTC
  • "last_message_timestamp" - timestamp da mensagem mais recente no pacote, no fuso horário UTC
  • "agregação" - texto agregado da mensagem, em formato HTML, adequado para utilização com CRMs ou sistemas semelhantes como conteúdo para notas, incluindo a ligação directa à primeira mensagem em linhas de tempo.

Exemplo

{
    "whatsapp_account" :
    {
        "full_name" : "Amnon Haha",
        "email" : "Amnon@acme.com",
        "phone" : "+972500000000"
    },
    "chat": 
    {
        "full_name": "John Doe>",
        "responsible_name": "Amnon",
        "responsible_email": "Amnon@acme.com",
        "chat_url" : "https://app.timelines.ai/chat/10010001/messages/",
        "chat_id" : "10010001",
        "is_new_chat" : true,
        "is_group": false, 
        "phone": "+97254000000"
    },
    "messages" :
    [
        {
            "direction": "sent", 
            "timestamp": "2021-02-24T16:25:29+0000",
            "message_id": "ddfskhsd76dsfs6dsd5skjsdhf",
            "sender": {
                "full_name": "John Doe",
                "phone": "+972540000000"
            },
            "recipient": {
                "full_name": "Jane Smith",
                "phone": "+972550000000"
            },
            "text": "lorem ipsum",
            "attachment": {
                "temporary_download_url": "https://acme.com/path",
                "filename": "someimage.png",
                "size": 128909,
                "mimetype": "image/png"
            }
        },
        {
            "direction": "received", 
            "timestamp": "2021-02-24T16:30:29+0000",
            "message_id": "ddfskhsd76dsfs6dsd5skjsdhf",
            "sender": {
                "full_name": "John Doe",
                "phone": "+972540000000"
            },
            "recipient": {
                "full_name": "Jane Smith",
                "phone": "+972550000000"
            },
            "text": "lorem ipsum"
        }
    ],
    "first_message_timestamp" : "2021-02-24T16:25:29+0000",
    "last_message_timestamp" : "2021-02-24T16:30:29+0000",
    "aggregation":
        "from John Doe on 2021-02-24 16:25: Hi! How are you?<br/>from Jane Smith on 2021-02-24 16:30: I am fine, how are you?<br/>Click <a href='https://app.timelines.ai/permalink/77a28d55-5345-5435-8c72-3a7bcad8ded9/'>here</h> to open the conversation in TimelinesAI"
}

Não agregar

Cada mensagem é enviada individualmente, assim que se torna disponível. Não se realiza qualquer "agrupamento". Os dados que se seguem estarão disponíveis:

  • "conta whatsapp" - os detalhes da conta whatsapp (e do colega de trabalho, que ligou a conta), através da qual a mensagem foi recebida ou enviada
    • "telefone" - o número de telefone da conta WA
    • "full_name" - o nome completo do titular da conta WA, tal como registado em Timelines
    • "email" - o email do titular da conta WA, tal como registado em Timelines
  • "chat" - os detalhes do chat (chat directo ou grupo), em que a mensagem foi enviada ou recebida
    • "full_name" - o nome do chat (como aparece nas linhas do tempo)
    • "responsible_name" - o nome de um colega de equipa que é atribuído como responsável a este chat
    • "responsible_email" - o e-mail de um colega de equipa que é atribuído como responsável a este chat
    • "chat_url" - o URL, no qual o chat pode ser acedido em TimelinesUI
    • "chat_id" - o ID do chat em TimelinesUI (pode ser usado para construir o URL do chat ou com ganchos web de entrada)
    • "is_new_chat" - verdadeiro, se este chat acabou de ser criado, falso, caso contrário
    • "is_group" - verdadeiro, se este chat for um chat directo, falso de outra forma
    • "telefone" - número de telefone do chat (vazio para o chat em grupo)
  • "mensagem" - os detalhes da mensagem
    • "direcção" - pode ser "recebido" ou "enviado"
    • "timestamp" - timestamp de uma mensagem, no fuso horário UTC
    • "message_id" - identificação interna única da mensagem
    • "remetente" - detalhes de um remetente (participante do chat) de uma mensagem
      • "full_name" - título de um chat ou nome de um colega de equipa nas linhas de tempo (se enviado de dentro das linhas de tempo)
      • "telefone" - número de telefone do remetente (ou vazio para conversação em grupo)
    • "destinatário" - detalhes de um remetente (participante do chat) de uma mensagem
      • "full_name" - título de um chat ou nome de um colega de equipa em Timelines
      • "telefone" - número de telefone do destinatário (ou vazio para chat de grupo)
    • "texto" - texto da mensagem (texto simples)
    • "attachment" - um objeto que descreve o anexo da mensagem, incluindo os seguintes campos
      • "temporary_download_url" - um URL de descarregamento temporário, válido por 15 minutos
      • "filename" - nome do ficheiro
      • "size" - tamanho do ficheiro, em bytes
      • "mimetype" - tipo mime do ficheiro

Exemplo

{
    "whatsapp_account" :
    {
        "full_name" : "Amnon Haha",
        "email" : "Amnon@acme.com",
        "phone" : "+972500000000"
    },
    "chat": 
    {
        "full_name": "John Doe>",
        "responsible_name": "Amnon",
        "responsible_email": "Amnon@acme.com",
        "chat_url" : "https://app.timelines.ai/chat/10010001/messages/",
        "chat_id" : "10010001",
        "is_new_chat" : true,
        "is_group": false, 
        "phone": "+97251111111"
    },
    "message" :
       {
            "direction": "sent", 
            "timestamp": "2021-02-24T06:25:29+0000",
            "message_id": "ddfskhsd76dsfs6dsd5skjsdhf",
            "sender": {
                "full_name": "John Doe",
                "phone": "+972540000000"
            },
            "recipient": {
                "full_name": "Jane Smith",
                "phone": "+972550000000"
            },
            "text": "lorem ipsum",
            "attachment": {
                "temporary_download_url": "https://acme.com/path",
                "filename": "someimage.png",
                "size": 128909,
                "mimetype": "image/png"
            }
        }
}
Tabela de Conteúdos