Tarefas do Chatbot

1. Introdução/Visão Geral

A feature "Tarefas do Chatbot" permite que tarefas sejam enviadas para os beneficiários de maneira ativa. Essas tarefas são enviadas na forma de email, push ou mensagem do WhatsApp e são executadas por meio de um fluxo de conversa que será seguido pelo beneficiário no chatbot.

2. Objetivos

O objetivo desta feature é garantir que os beneficiários possam receber e executar tarefas de maneira eficiente através de diferentes canais de comunicação, melhorando a interação e o cumprimento das atividades solicitadas pela operadora de saúde.

3. Fluxo de Trabalho

  1. Criação de Tarefa:

    • A operadora de saúde acessa o painel e cadastra uma nova tarefa, indicando os campos necessários.

Telas onde a operadora pode cadastrar novos templates de tarefas.

Screenshot 2024-09-19 at 16.40.22.png

 

Screenshot 2024-09-19 at 16.43.25.png

 

  1. Envio de Tarefa:

    • A tarefa pode ser enviada para um contato específico através de uma API pública de mensageria.

  2. Recebimento e Execução de Tarefa:

    • O beneficiário recebe a notificação da tarefa via email, push ou WhatsApp.

    • O beneficiário pode ver e cumprir a tarefa seguindo o fluxo de conversa no chatbot.

    • Alternativamente, a tarefa pode ser visualizada em uma nova área específica do app dedicada a tarefas.

4. Execução de Tarefas

  • API Pública de Mensageria:

    • Endpoint e o formato de payload necessário para envio das tarefas.

    Método: POST
    URL: https://api.mosiaomnichannel.com.br/clientes/mensageria/tasks

    Cabeçalhos:

    Authorization: notsecret Content-Type: application/json

    Parâmetros do Corpo (Body):

    • chaveUnica (obrigatório)

      • Descrição: Identifica o beneficiário.

      • Tipo: string

      • Exemplo: "123456"

    • contato (opcional)

      • Descrição: Objeto que pode ser passado caso o contato ainda não exista na base da operadora. Será criado caso não exista.

      • Tipo: objeto

      • Subcampos:

        • nome (string) - Exemplo: "João da Silva"

        • email (string) - Exemplo: "joao.silva@example.com"

        • telefone (string) - Exemplo: "27999881010"

    • elegivel (opcional)

      • Descrição: Indica se o beneficiário deve iniciar a tarefa/conversa devidamente elegível, evitando que ele seja submetido ao processo de identificação/elegibilidade.

      • Tipo: boolean

      • Exemplo: true

    • execucao (opcional)

      • Descrição: Data em que a tarefa estará disponível para o beneficiário e será enviada.

      • Tipo: Date

      • Exemplo: "2023-10-01T12:00:00Z"

    • expiracao (opcional)

      • Descrição: Data limite para que a tarefa seja cumprida. Após esta data, a tarefa não poderá mais ser concluída.

      • Tipo: Date

      • Exemplo: "2023-10-31T12:00:00Z"

    • macros (opcional)

      • Descrição: Objeto contendo informações que podem ser utilizadas nos templates de WhatsApp, Push e Email.

      • Tipo: objeto

      • Exemplo: { "key1": "value1", "key2": "value2" }

    • protocolo (opcional)

      • Descrição: Protocolo da ocorrência relativa à tarefa, caso haja uma. A ocorrência será armazenada como macro nos templates e também será utilizada como ocorrência principal da conversa gerada durante a execução da tarefa no chatbot.

      • Tipo: string

      • Exemplo: "protocoloXYZ"

    • variaveis

      • Descrição: Array de objetos no formato name/value que serão injetadas na conversa criada durante a execução da tarefa.

      • Tipo: array de objetos

      • Exemplo:

        [ { "name": "variavel1", "value": "valor1" }, { "name": "variavel2", "value": "valor2" } ]

    Exemplo de Requisição utilizando curl:

    curl -X POST https://api.mosiaomnichannel.com.br/clientes/mensageria/tasks \ -H "Authorization: notsecret" \ -H "Content-Type: application/json" \ -d '{ "chaveUnica": "123456", "contato": { "nome": "João da Silva", "email": "joao.silva@example.com", "telefone": "27999881010" }, "elegivel": true, "execucao": "2023-10-01T12:00:00Z", "expiracao": "2023-10-31T12:00:00Z", "macros": { "key1": "value1", "key2": "value2" }, "protocolo": "protocoloXYZ", "variaveis": [ { "name": "variavel1", "value": "valor1" }, { "name": "variavel2", "value": "valor2" } ] }'
  • Segurança:

    • Obtenção da Credencial:

      • Acesse o menu Segurança.

      • Selecione a opção Cadastro de Origens.

      • Selecione Credencial de API Pública.

      • Certifique-se de incluir a API de mensageria no escopo dessa credencial.

    • Exemplo de Uso da Credencial nos Cabeçalhos:

5. Regras de Negócio das Tarefas

  1. Envio Imediato:

    • A tarefa será enviada imediatamente caso a data de execução (execucao) não seja indicada no pedido.

  2. Gerenciamento de Tarefas Pendentes:

    • Enquanto houver uma tarefa pendente, uma nova tarefa não será notificada ao beneficiário.

  3. Interrupção por Conversa em Andamento:

    • Caso haja alguma conversa em andamento, o beneficiário não receberá notificações de novas tarefas enquanto não finalizar a conversa atual.

  4. Lançamento de Tarefas ao Término da Conversa:

    • Ao concluir uma conversa em que o beneficiário esteja identificado, as tarefas pendentes serão iniciadas.

  5. Configuração de Lançamento de Tarefas no Nó de Elegibilidade:

    • O nó de elegibilidade agora tem uma configuração que permite que tarefas pendentes sejam lançadas imediatamente após o sucesso da identificação.

  6. Novo Bloco no App para Tarefas Pendentes:

    • O aplicativo agora terá um novo bloco dedicado para mostrar as tarefas pendentes.

Mobile Saúde - Mosia Omnichannel