[Resolvido] Validar tempo da última mensagem enviada durante o atendimento humano

Gostaria de saber se há alguma forma de validar a quanto tempo foi a última interação do usuário com o atendente humano. Estamos encontrando alguns casos onde a conversa com o atendimento humano fica inativa pela parte do usuário e passa das 24h. Assim que o atendente finaliza a conversa, o Bot faz uma outra interação, o que nesses casos, caracterizaria uma violação das políticas do WPP.

Há alguma forma de tratar essa situação em um bloco após a finalização do atendimento humano? Ou alguma regra de finalização automática de ticket quando a conversa chegar a 23h59 minutos, por exemplo.

Busquei em algumas variáveis mas não consegui encontrar.

3 Curtidas

Apenas uma atualização:

Após a finalização do atendimento humano, meu bot envia uma pesquisa de satisfação de atendimento.
Para fazer uma solução temporária, coloquei um bloco antes desse da pesquisa que não tem conteúdo, apenas aguarda uma interação do usuário. Havendo interação, o bloco direciona para a pesquisa. Se não houver, o usuário ficará travado nesse bloco até que precise efetuar contato novamente.

OBS: Ao finalizar o atendimento humano, encerramos a conversa com uma mensagem que induz o usuário a mandar um “ok”, “perfeito” ou “sim”, por exemplo. Dessa forma, a grande maioria deles recebe a pesquisa e a responde.

Estou com o mesmo problema.

Olá @Marcos_Fernando_Vell,

Para executar toda essa validação será necessário o uso da API diretamente :man_technologist:t5:

Primeiramente, você deverá recuperar todos os tickets do bot e identificar o ticket desejado :eyes:. Por sua vez, você deve recuperar todos as mensagens para o ticket desejado, por definição a primeira mensagem exibida refere-se a ultima interação. Como exibido abaixo a mensagem possui um campo de “date”, recuperando a informação do mesmo basta calcular se o intervalo da ultima mensagem é menor que 24 horas :grin:

   {
                "id": "51c48ab3-ef3b-43e8-9b77-f0d779e48be6",
                "direction": "received",
                "type": "application/vnd.iris.ticket+json",
                "content": {
                    "id": "a2e91dfd-da03-450f-b795-016ef102f277",
                    "sequentialId": 17,
                    "ownerIdentity": "atendenteteste2@msging.net",
                    "customerIdentity": "9e1ae819-0eec-4ccb-baac-f50226e39533.atendenteteste2@0mn.io",
                    "customerDomain": "0mn.io",
                    "provider": "Lime",
                    "status": "Waiting",
                    "storageDate": "2019-12-10T18:12:12.535Z",
                    "externalId": "a2e91dfd-da03-450f-b795-016ef102f277",
                    "rating": 0,
                    "team": "Default",
                    "unreadMessages": 0,
                    "closed": false,
                    "customerInput": {
                        "type": "text/plain",
                        "value": "Ultima Mensagem"
                    }
                },
                "date": "2019-12-10T18:12:12.617Z"
   }

Acho que entendi :sweat_smile:
Ainda não fiz nenhum procedimento com a API mesmo, mas vou tentar seguindo as instruções que me deu. Acredito que vai dar certo sim.

Não há nenhuma maneira de fazer isso diretamente no Builder né?
Obrigado!

1 Curtida

@Marcos_Fernando_Vell,

A API pode ser utilizada juntamente com Builder através de requisições HTTP :wink:

Além disso, há uma solução alternativa :face_with_monocle:, após o atendente finalizar a conversa , evite :no_good_man:t5: qualquer outra interação do Bot, caso haja necessidade da realização da pesquisa de satisfação de atendimento, você pode envia-lá em canais alternativos, por exemplo, por email :email:.

Perfeito então! Agradeço a ajuda

Agora que já tenho uma luz, vou fazer as alterações.
Obrigadão!

1 Curtida