Menu
Feedback
Comece aqui
Tutoriais


Tutoriais
Fluxos
Utilizando expressões para captar a localização do usuário
2 min de leitura

Nesse artigo vamos ver um exemplo prático de como o uso de expressões e variáveis podem ser úteis para o seu chatbot. Aqui, focaremos em um exemplo bem simples, mas que pode ser bastante útil para todos: Conseguir captar a localização do usuário pela conversa, podendo utilizar esses dados posteriormente.

Primeiro passo: Identificar o canal

A forma de captar a localização muda de acordo com o canal que você está utilizando na plataforma.

Canal Web

Para conseguir capturar a localização de um usuário via canal web, basta criar uma carta de ação ""Send Message"" com um ""Quick Reply"" com o prefixo ""[Loc]"", assim que o usuário apertar aquele botão, conseguimos captar a localização via navegador. Após isso, basta salvar o resultado na carta de decisão ""Wait for response"".

{"base64":"  ","img":{"width":355,"height":582,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":40046,"url":"https://raw.githubusercontent.com/vtexdocs/help-center-content/refs/heads/main/docs/pt/tutorials/weni-by-vtex/fluxos/utilizando-expressoes-para-captar-a-localizacao-do-usuario_1.png"}}

A mensagem recebida pelo canal web sempre começará com: ""Minha Localização é:"", seguido da latitude e longitude do usuário no formato ""[latitude, longitude]"". Para remover esses prefixos, basta utilizar a expressão @(replace) e depois separar os valores de latitude e longitude em variáveis diferentes, utilizando a expressão @(split) para separar utilizando a virgula ("","") que os separam como parâmetro.

{"base64":"  ","img":{"width":303,"height":611,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":41733,"url":"https://raw.githubusercontent.com/vtexdocs/help-center-content/refs/heads/main/docs/pt/tutorials/weni-by-vtex/fluxos/utilizando-expressoes-para-captar-a-localizacao-do-usuario_2.png"}}

Canal Telegram

Para enviar a localização via telegram, o usuário precisa clicar no botão 📎, selecionar ""Localização"" e depois ""Enviar minha localização atual"". Com isso, basta criar uma carta de decisão ""Wait for response"" e salvar o valor. O telegram envia a localização no formato ""latitude, longitude"", não precisando fazer o processo de utilizar a @(replace) para remover textos, só separar utilizando split como no canal web.

{"base64":"  ","img":{"width":349,"height":241,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":16972,"url":"https://raw.githubusercontent.com/vtexdocs/help-center-content/refs/heads/main/docs/pt/tutorials/weni-by-vtex/fluxos/utilizando-expressoes-para-captar-a-localizacao-do-usuario_3.png"}}

Canal WhatApp

Para enviar a localização via WhatsApp, o usuário precisa clicar no botão 📎 ou no ➕, selecionar ""Localização"" e depois ""Localização fixa"".

Diferentemente dos outros canais, a localização via WhatsApp não vem como texto, mas sim como anexo, logo, precisamos acessá-la utilizando a variável: @input.attachments.0

Essa variável a localização no formato ""geo: latitude, longitude"", logo, precisamos utilizar a expressão @(replace) para remover o ""geo:"" e depois utilizar @(split) para separar a latitude e longitude como os outros canais.

{"base64":"  ","img":{"width":388,"height":392,"type":"png","mime":"image/png","wUnits":"px","hUnits":"px","length":31096,"url":"https://raw.githubusercontent.com/vtexdocs/help-center-content/refs/heads/main/docs/pt/tutorials/weni-by-vtex/fluxos/utilizando-expressoes-para-captar-a-localizacao-do-usuario_4.png"}}

Assim, conseguimos criar um fluxo com suporte para captar a localização do usuário em três canais diferentes, utilizando as expressões e variáveis disponíveis na plataforma.

Contribuidores
1
Photo of the contributor
+ 1 contributors
Isso foi útil?
Sim
Não
Sugerir edições (GitHub)
Chatbot Integrado a API Sienge
« Anterior
Glossário de Variáveis
Próximo »
Contribuidores
1
Photo of the contributor
+ 1 contributors
Isso foi útil?
Sugerir edições (GitHub)
Nesta página
Ainda tem dúvidas?
Pergunte à comunidade
Encontre soluções e compartilhe ideias na VTEX Community
Junte-se à nossa comunidade
Solicite suporte à VTEX
Receba assistência personalizada com nossos especialistas
Abra um ticket de suporte
GitHubDeveloper PortalComunidadeFeedback