Chat web
Coloque o assistente da Fiuit no seu site com uma linha de código, com dados de contato obrigatórios e regras por canal.
Atualizado:
O chat web é um widget que o seu negócio cola no próprio site. Ele conversa com o mesmo bot do WhatsApp (mesmos horários, preços e reservas), sem número nem aprovações de terceiros. As conversas chegam ao mesmo Inbox.
Se você hospeda o Fiuit por conta própria, o chat web vem desligado: ele é ativado com PUBLIC_WEBCHAT_ENABLED=true na API.
Instalar passo a passo
- Entre como proprietário em Configuração → Canais → Chat web.
- Em Sites permitidos adicione cada site onde vai usá-lo, um por linha, com
https://e sem curingas nem caminhos (por exemplohttps://www.minhaloja.com). Para testar no seu computador,http://localhosté aceito. - Escolha cor principal, posição do botão, idioma padrão e um título opcional (até 40 caracteres).
- Toque em Ativar chat web. Você recebe uma chave publicável
wg_web_…e o código para colar. - Cole o snippet antes de
</body>em cada página onde quiser o chat:
<script src="https://fiuit.com/widget.js" data-key="wg_web_…" defer></script>
Atributos opcionais: data-locale (pt, es ou en; por padrão usa o idioma do navegador), data-offset-bottom (pixels, para subir o botão se o seu site tem uma barra fixa embaixo) e data-api (origem da API, só para ambientes de teste).
Se você tocar em Desativar, o chat deixa de funcionar e as conversas abertas são encerradas; ao ativar de novo você recebe uma chave nova e precisa atualizar o código.
Em /demo/webchat há uma página de demonstração onde você cola a chave e vê o widget funcionando.
O que o visitante vê
- Um botão flutuante que abre o chat (no celular abre em tela cheia, respeitando as áreas seguras), em português, espanhol ou inglês.
- Um chat breve de propósito: respostas curtas que propõem reservar ou continuar pelo WhatsApp. Pela web o visitante é anônimo e cada resposta custa.
- Se o bot pedir a localização (por exemplo para uma entrega), oferece Usar minha localização, com consentimento explícito.
- A conversa continua entre páginas e recarregamentos: ao voltar, o chat mostra o que foi conversado e as respostas que chegaram nesse meio tempo (com um aviso de mensagens novas se estava fechado). Um botão Nova conversa, no menu ⋯ do chat, apaga tudo e recomeça do zero.
Continuidade entre páginas e recarregamentos
Ao abrir a conversa, o servidor emite um código de sessão opaco. O widget o guarda no armazenamento do navegador (localStorage, ou sessionStorage se não estiver disponível) do site onde você instalou o chat, com uma chave por chave publicável. Não usa cookies nem serviços de terceiros, e ali não se guarda nada pessoal: nem nome, nem telefone, nem e-mail, nem mensagens. Os dados de contato declarados ficam só no servidor, então o chat não os pede de novo dentro da mesma conversa.
- Ao carregar outra página ou recarregar, o widget valida o código, traz o histórico e se reconecta para receber as respostas novas.
- Vencimento: a conversa vence por inatividade e por um limite máximo de duração. Se o código venceu, foi encerrado ou apagado, o widget o descarta e começa uma conversa nova, sem mostrar erros.
- Nova conversa: o visitante a escolhe no menu ⋯. O código é invalidado no servidor, o do navegador é apagado e o chat começa vazio. A equipe mantém o histórico anterior no Inbox até a limpeza.
- Modo privado ou armazenamento bloqueado: o chat funciona igual, mas a conversa não sobrevive a um recarregamento.
- Canal pausado: se você pausou o canal, o chat não aparece mesmo que o visitante tenha um código guardado; ao retomar, a conversa continua.
O código não é um segredo forte: é uma chave de uma única conversa, nunca dá acesso a outras nem ao painel. Só funciona a partir das origens que você autorizou no widget, está sujeito aos mesmos limites de uso e é invalidado ao vencer, ao escolher Nova conversa e na limpeza da conversa.
Dados de contato obrigatórios
Por padrão o bot não conversa até ter telefone e e-mail: diante de qualquer mensagem responde um texto fixo (sem IA) e o chat mostra um mini formulário (telefone com seletor de país, em formato internacional, e e-mail). Assim que é preenchido, a primeira mensagem do visitante é processada sozinha, sem que ele a repita.
Os dados são declarados, não verificados: não identificam o visitante nem se unem a clientes existentes. São guardados cifrados e apagados junto com a conversa vencida.
Regras do bot por canal
Em Canais → Regras do bot por canal (proprietário e gerente) você escolhe o canal (Chat web ou WhatsApp) e define:
| Regra | O que faz | Chat web (padrão) | WhatsApp (padrão) |
|---|---|---|---|
| Dados exigidos | Nome, telefone e/ou e-mail antes de conversar | telefone e e-mail | nenhum (o telefone já chega do canal) |
| Quando pede | Desde a primeira mensagem, depois de algumas respostas, ou nunca | desde a primeira mensagem | nunca |
| Texto com que pede | Um texto fixo personalizável | o padrão | não se aplica |
| Limite de respostas | Teto de respostas do bot por conversa | 6 | sem teto |
| O que oferece ao chegar ao limite | Continuar pelo WhatsApp e/ou receber as informações por e-mail | ambos | nenhum |
| Estilo do bot no canal | Uma preferência de tom (até 500 caracteres) | respostas curtas | nenhuma |
São regras do projeto: o servidor as aplica antes de acionar a IA, mesmo que alguém use a API pública sem o widget. Ao chegar ao limite, o bot para de responder e de gastar IA, envia uma mensagem fixa com as opções e a conversa fica no Inbox como "precisa de acompanhamento", com os dados que o visitante deixou. Se não há WhatsApp conectado, essa opção não é oferecida.
Segurança
- A chave publicável só abre conversas anônimas: não dá acesso ao painel, à API privada nem a dados de clientes. Pode ser revogada quando quiser.
- O negócio sempre sai da chave; o widget nunca envia um identificador de negócio.
- Só os sites permitidos podem usar o chat. Sem cookies.
- A checagem da origem não é autenticação: só protege contra outros sites em um navegador. A proteção real são os limites de uso.
- Há tetos de mensagens por conversa, por hora e por dia. Ao esgotar, o chat pede que você aguarde e a IA não é acionada.
- O texto do visitante é tratado como dado não confiável, e o widget o mostra sempre como texto simples.
- O chat só responde: não envia mensagens proativas.
- Você pode pausar o bot ou o canal inteiro se precisar; com o canal pausado o widget se oculta.
API
Gestão (proprietário): GET|PUT|DELETE /v1/webchat-site. Regras por canal (proprietário e gerente): GET /v1/bot/channel-policies e PUT /v1/bot/channel-policies/{channel}. Os endpoints públicos do widget estão no contrato OpenAPI em /v1/public/webchat.