Já tentei de diversas formas e não obtive êxito neste ponto. Tipo, por diversas vezes, montava meu MENU no meu WebService e retornava pro Blip via api, porém, ao exibir no Whats os \n também eram exibidos…
Solução pra mim foi incluir a msg no script e lá montar o menu do lado do blip, talvez, seja a mesma situação
@Rodrigo_Valentim, mas no seu caso era mensagem ativa ou era a construção do texto no Builder?
Construção de texto no builder.
O que estou tentando passar é que, me parece que o Blip entende o \n vindo de outra origem como sendo um texto e não como uma quebra de linha… entende?
Pois é… já tentei várias coisas aqui também e nada.
O problema é que meu texto é composto por listas, então não sei quantas posições eu teria para criar as variáveis estaticamente.
Uma outra opção seria quebrar em vários messages templates, mas meu usuário receberia muitas mensagens instantaneamente quando fossem disparados.
Tenho 2 tipos de resposta para essa pergunta: resposta curta (pra quem só quer resolver o problema e ponto) e resposta completa (pra quem quer entender o problema e evitar possíveis novos problemas relacionados).
(Detalhe: esse resposta serve para qualquer conteúdo dinâmico)
Resposta curta:
Se você tem uma string em um obj JSON que contém o “\n”, sempre execute um script para fazer o parse desse obj, atribua a str a uma nova var e retorne-a. Use sua variável onde deseja da seguinte forma {{nome_da_var_retornada}}.
Resposta completa
Embora possa parecer um bug do Blip (inicialmente, também pensei que era), não é um bug. Pelo menos conceitualmente não, ainda que quebre o paradigma e a intuitividade de programação no builder. Bom, vamos lá… vamos entender o problema…
Sempre que eu retorno um obj na execução de um script no builder
o builder automaticamente faz um
JSON.stringify(obj) antes de atribuí-lo a minha variável de retorno, o que significa que essa variável sempre será uma str, não um objeto propriamente dito.
Acontece que
JSON.stringify(obj) escapa a " \ " (barra invertida) ao transformar o obj em str.
Então, quando usamos {{meu_obj@texto}} em um conteúdo dinâmico ou mesmo em uma simples entrada de texto, o resultado é a exibição dos "\n"s.
Se executamos um outro script que faz o parse JSON e retornamos o valor(string) de um atributo propriamente dito,
então não há necessidade do builder fazer uma stringfy - ou seja, os "\n"s não são escapados - e tudo funciona conforme o esperado.
Ao invés de retornar o obj, eu tentei
return JSON.stringify(content).replaceAll(’\\n’, ‘\n’);
Mas, aí o builder do Blip quebrou 😕
Tenho 2 tipos de resposta para essa pergunta: resposta curta (pra quem só quer resolver o problema e ponto) e resposta completa (pra quem quer entender o problema e evitar possíveis novos problemas relacionados).
(Detalhe: esse resposta serve para qualquer conteúdo dinâmico)
Resposta curta:
Se você tem uma string em um obj JSON que contém o “\n”, sempre execute um script para fazer o parse desse obj, atribua a str a uma nova var e retorne-a. Use sua variável onde deseja da seguinte forma {{nome_da_var_retornada}}.
Resposta completa
Embora possa parecer um bug do Blip (inicialmente, também pensei que era), não é um bug. Pelo menos conceitualmente não, ainda que quebre o paradigma e a intuitividade de programação no builder. Bom, vamos lá… vamos entender o problema…
Sempre que eu retorno um obj na execução de um script no builder
o builder automaticamente faz um JSON.stringify(obj) antes de atribuí-lo a minha variável de retorno, o que significa que essa variável sempre será uma str, não um objeto propriamente dito.
Acontece que JSON.stringify(obj) escapa a " \ " (barra invertida) ao transformar o obj em str.
Então, quando usamos {{meu_obj@texto}} em um conteúdo dinâmico ou mesmo em uma simples entrada de texto, o resultado é a exibição dos "\n"s.
Se executamos um outro script que faz o parse JSON e retornamos o valor(string) de um atributo propriamente dito,
então não há necessidade do builder fazer uma stringfy - ou seja, os "\n"s não são escapados - e tudo funciona conforme o esperado.
Tragam um troféu para esta pessoa!