User permite consultar informações sobre o contato que está interagindo com o seu fluxo, como nome, número de telefone e metadados do canal.
Dados disponíveis
Os dados disponíveis dependem do canal, mas um exemplo típico é:Usando variáveis do usuário
Você pode acessar qualquer propriedade do usuário com a sintaxe{{$user.property}}:
{{$user.id}}mostra o identificador único do usuário no canal.{{$user.names}}mostra o nome do usuário.{{$user.phone}}mostra o número de telefone do contato. É o campo que você deve usar quando precisa do telefone.
Em canais como o WhatsApp, o telefone vem sem símbolos ou espaços. Por exemplo,
+1-555-111-2222 é representado como 15551112222.O telefone fica em phone, não em id
O WhatsApp deixou de garantir o número de telefone como identificador estável e adota um identificador próprio, o BSUID. Por isso {{$user.id}} pode trazer um BSUID em vez de um número, e você não deve usá-lo como telefone.
- Para o telefone, use
{{$user.phone}}. Retorna o número real do contato, mesmo quando a conversa chega identificada por BSUID. {{$user.phoneNumber}}é um alias de{{$user.phone}}e retorna o mesmo valor. Ele permanece disponível para os fluxos que já o usam, mas recomendamos migrar paraphone.- Ambos podem vir vazios quando não é possível resolver um telefone para aquele contato. Trate esse caso nos seus fluxos antes de usar o valor.
{{$user.id}}continua sendo o identificador do contato no canal, e é o que você deve usar para referenciá-lo. Ele apenas deixou de ser sempre um telefone.
User em nós de código
Dentro dos nós de código, você tem o objetoUser disponível através de $user:
O objeto
User é somente leitura. Se quiser persistir novas informações do contato, salve esses dados na Memory ou no Context.