A plataforma do Messenger permite que você abra um webView padrão, no qual é possível carregar páginas da web no Messenger. Com isso, é possível oferecer experiências e recursos difíceis de disponibilizar com balões de mensagem, como a seleção de produtos para comprar e assentos ou datas para reservar.
É possível abrir o webView a partir do seguinte:
Em cada um deles, é possível especificar a aparência e o comportamento do webView.
Se a sua experiência usa as extensões do Messenger descritas nesta seção, lembre-se de definir o parâmetro messenger_extensions
como true
no botão ou no item de menu usado para a invocação.
Para exibir uma página da web com o SDK das Extensões do Messenger ativado no webView da plataforma, é obrigatório adicionar o domínio (inclusive o subdomínio) à lista de liberação na propriedade whitelisted_domains
do perfil do Messenger do seu bot. Isso garantirá que apenas domínios confiáveis tenham acesso aos dados do usuário disponíveis com as funções do SDK.
Consulte a referência de whitelisted_domains
para saber mais sobre a inclusão de domínios na lista de liberação.
Como em todas as páginas da web, a tag <title>
define o texto exibido na barra de título do webView.
<html><head><title>Meu incrível webView</title></head> ... </html>
Fechar o webView depois de a transação ser finalizada é uma boa ideia, principalmente se as ações do usuário resultarem em uma mensagem no tópico. Isso pode ser feito com o SDK de extensões do Messenger ou uma URL de redirecionamento.
Faça uma chamada a MessengerExtensions.requestCloseBrowser()
para fechar o webView com o SDK de extensões do Messenger. Como opção, é possível implementar chamadas de funções de sucesso e erro.
MessengerExtensions.requestCloseBrowser(function success() {
// webview closed
}, function error(err) {
// an error occurred
});
Também é possível fechar o webView redirecionando o usuário para uma URL com este formato:
https://www.messenger.com/closeWindow/?image_url=<IMAGE_URL>&display_text=<DISPLAY_TEXT>
Os valores definidos para os parâmetros display_text
e image_url
serão exibidos de forma breve até o fechamento da janela. Observe que esse método fará o fechamento apenas se for redirecionado da sua URL/página. Abrir a URL de forma direta não fechará o navegador.
Esse método só é válido para o Android. No iOS, o texto e a imagem serão exibidos, mas o navegador não fechará de forma automática.
Para que sua integração com as experiências no webView com o Messenger seja perfeita, disponibilizamos o SDK de JS das extensões do Messenger. Com isso, as funcionalidades adicionadas (como as informações sobre o contexto do tópico) ficam acessíveis no webView.
Para mais informações, consulte Adicionar o SDK das Extensões do Messenger.
Use para interações longas (mais de três etapas) nas quais as pessoas talvez queiram editar a entrada ou proceder de forma não linear.
Use para conteúdo especificamente visual.
Use para preferências do usuário ou para permissão de alterações por demanda em seleções anteriores.
Use em combinação com mais interações de conversas.
Configure a altura do webView para corresponder ao conteúdo e preservar o contexto do tópico que estiver abaixo.
Aproveite as extensões do Messenger para trazer ao webView o contexto do tópico.
Não é necessário coletar todas as informações do formulário de uma vez. É possível coletá-las gradualmente de forma conversacional, depois usar um formulário no webView para edições posteriores.
Misture interações conversacionais e de webView e deixe-as sucintas. Combine interações de tópico e de webView para criar uma experiência nativa do Messenger.