{"section":"tutorials","requestedLocale":"pt","requestedSlug":"utilizando-expressoes-para-captar-a-localizacao-do-usuario","locale":"pt","slug":"utilizando-expressoes-para-captar-a-localizacao-do-usuario","path":"docs/pt/tutorials/weni-by-vtex/fluxos/utilizando-expressoes-para-captar-a-localizacao-do-usuario.md","branch":"main","content":"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.\n\n## Primeiro passo: Identificar o canal\n\nA forma de captar a localização muda de acordo com o canal que você está utilizando na plataforma.\n\n### Canal web\n\nPara 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\"\".\n\n![](https://cdn.statically.io/gh/vtexdocs/help-center-content/refs/heads/main/docs/pt/tutorials/weni-by-vtex/fluxos/utilizando-expressoes-para-captar-a-localizacao-do-usuario_1.png)\n\nA 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.\n\n![](https://cdn.statically.io/gh/vtexdocs/help-center-content/refs/heads/main/docs/pt/tutorials/weni-by-vtex/fluxos/utilizando-expressoes-para-captar-a-localizacao-do-usuario_2.png)\n\n### Canal Telegram\n\nPara enviar a localização via telegram, o usuário precisa clicar no botão 📎, selecionar \"\"Localização\"\" e depois \"\"Enviar minha localização atual\"\".\nCom 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.\n\n![](https://cdn.statically.io/gh/vtexdocs/help-center-content/refs/heads/main/docs/pt/tutorials/weni-by-vtex/fluxos/utilizando-expressoes-para-captar-a-localizacao-do-usuario_3.png)\n\n### Canal whatapp\n\nPara enviar a localização via WhatsApp, o usuário precisa clicar no botão 📎 ou no ➕, selecionar \"\"Localização\"\" e depois \"\"Localização fixa\"\".\n\nDiferentemente 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`\n\nEssa 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.\n\n![](https://cdn.statically.io/gh/vtexdocs/help-center-content/refs/heads/main/docs/pt/tutorials/weni-by-vtex/fluxos/utilizando-expressoes-para-captar-a-localizacao-do-usuario_4.png)\n\nAssim, 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."}