Diferenças entre identificador no roteador e no bot

Olá!

Estou com dúvida em relação à ID de cada usuário. Possuo um roteador conectado ao whatsapp que redireciona todo o fluxo para um bot. Percebi que a variável contact.identity é diferente para o mesmo usuário quando acessada pelo roteador ou pelo bot. No roteador, é exibido o número do telefone, enquanto no bot é uma chave aparentemente sem relação.
No meu caso, eu gostaria de usar essa chave de identificação para associar cada usuário na minha API, mas sem usar o número de telefone para isso, para que o usuário possa se sentir mais tranquilo. O problema é que quando eu ativo o contexto do roteador no bot, a informação de contact.identity é substituída e eu perco essa chave anterior que não tinha associação com o número.

Minha dúvida é: é possível eu utilizar o contact.identity do chatbot, mantendo o contexto do roteador ligado, para ter acesso ao identificador único de cada usuário sem o número de telefone dele?

Obrigado e abraços,

1 Curtida

é sim, mas vai ter atualizar o dados através de uma api e colocar esse id em uma variável extra

Mas aí como eu poderia salvar o contact.identity do bot em outra variável? Quando eu puxo ela logo no começo do fluxo já salva logo com o valor do roteador (o número do celular)

1 Curtida

eu vou validar um informação que fiquei em dúvida, mas vou amracar o @Alex e @Gabriel_Estavaringo1 heheehehe

1 Curtida

Oi, Jonas

Caso você use o contexto do roteador ligado, o contact.identity sempre será o do roteador em todos os subbots que o usuário passar. No seu caso ele sempre vai ser o número de telefone do usuário.

Talvez o que vc pode fazer é:
Gerar um id aleatório via javascript no inicio da conversa do seu usuário, salvar esse id no extras do contato e utilizar esse id em sua api.

Não sei se isso te atende, pois você precisa do identity para fazer o envio de mensagens ou buscar informações do usuário na api do blip.

Qual o problema em utilizar o contact.identity na sua api? Ele está diretamente relacionado com o canal do usuário e no caso do whatsapp ele sempre será o número de telefone.

1 Curtida

Acho que vou fazer isso, daí no script coloco para ver se a variável está vazia ou não antes de preencher com o novo valor gerado.

Eu queria evitar enviar o número do usuário via API só para dar mais segurança mesmo. A manifestação enviada pelo usuário não é associada com nenhum dado pessoal na minha base de dados, daí eu queria poder garantir isso para o usuário, o que não seria possível se eu usasse o número de telefone como ID. Como dificilmente iremos contatá-los por notificação, não é um problema não ter essa informação salva.

2 Curtidas

Ei @Jonas_C, tudo bem? E aí? O @Gabriel_Estavaringo1 conseguiu te ajudar?