Configuracao
Configure canais de atendimento, storage, email e outras opcoes da NooviChat.
Canais de Atendimento
O NooviChat centraliza canais habilitados de comunicacao. Cada canal e configurado como uma "Inbox" no painel de administracao.
NooviConnect nativo, Cloud API ou UAZAPI
PopularWeb Chat
Widget para seu site
DisponivelMessenger e Instagram
DisponivelAPI
Canal customizado quando habilitado
ConfiguravelConfiguracao WhatsApp
Para integrar o WhatsApp, voce pode usar o NooviConnect nativo (recomendado) ou um provedor externo. O NooviChat suporta o NooviConnect nativo conforme a autorizacao operacional da sua licenca, a Cloud API oficial e o UAZAPI conforme a configuracao da instancia.
Via API Oficial (Cloud API)
# Variaveis de ambiente para WhatsApp Cloud API
WHATSAPP_CLOUD_BASE_URL=https://graph.facebook.com
WHATSAPP_CLOUD_API_VERSION=v17.0NooviConnect (WhatsApp nativo) e o Hub
O NooviConnect e o motor de WhatsApp nativo da NooviChat. Ele roda como um servico dedicado na mesma stack do NooviChat. Quem usa o Auto Instalador ja recebe tudo configurado. Em instalacoes manuais, adicione o servico nooviconnect a sua stack, ao lado de app e sidekiq:
# Adicione este servico a MESMA stack do app/sidekiq
nooviconnect:
image: nooviai/nooviconnect:latest
environment:
# Use a MESMA chave do app/sidekiq — o motor deriva a autenticacao sozinho
- SECRET_KEY_BASE=<a-mesma-do-app-e-sidekiq>
# Mesmo PostgreSQL do NooviChat (o motor cria o proprio schema de sessoes)
- POSTGRESQL_URL=postgresql://USUARIO:SENHA@HOST_POSTGRES:5432/BANCO
# URL interna do servico app, para o motor enviar as mensagens recebidas
- NOOVI_CHATWOOT_URL=http://<nome-do-servico-app>:3000
deploy:
replicas: 1 # a sessao do WhatsApp e unica — 2 replicas brigariam
# Sem volume: as sessoes ficam no PostgreSQL; a midia e efemeraO servico precisa se chamar nooviconnect: o app e o sidekiq o alcancam automaticamente em http://nooviconnect:3000 (zero configuracao). Nao e preciso definir nenhuma variavel de WhatsApp nos servicos app e sidekiq.
Depois de subir o servico, ative a feature "Hub WhatsApp" na conta desejada pelo Super Admin. O usuario abre o Hub WhatsApp, clica em Nova conexao e escaneia o QR Code para criar a sessao. O Hub reune Grupos, Canais, Transmissoes, Engajamento e Relatorios.
Migrando de uma versao antiga?
Versoes anteriores rodavam o motor embutido no proprio container do app. Ao migrar para o servico dedicado nooviconnect, as sessoes de WhatsApp precisam ser re-pareadas: abra o Hub WhatsApp e escaneie um novo QR Code.
Criar Inbox via API
curl -X POST \
"https://chat.seudominio.com/api/v1/accounts/{account_id}/inboxes" \
-H "api_access_token: YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "WhatsApp Comercial",
"channel": {
"type": "whatsapp",
"phone_number": "+5511999999999",
"provider": "whatsapp_cloud",
"provider_config": {
"api_key": "YOUR_WHATSAPP_API_KEY",
"phone_number_id": "YOUR_PHONE_NUMBER_ID",
"business_account_id": "YOUR_BUSINESS_ACCOUNT_ID"
}
}
}'Configuracao de SMTP Transacional
Configure SMTP para emails transacionais da instalacao. Email nao e canal de atendimento da oferta atual do NooviChat.
SMTP_ADDRESS=smtp.seudominio.com
SMTP_PORT=587
SMTP_USERNAME=notificacoes@seudominio.com
SMTP_PASSWORD=senha_smtp
SMTP_AUTHENTICATION=login
SMTP_ENABLE_STARTTLS_AUTO=true
MAILER_SENDER_EMAIL=notificacoes@seudominio.comWeb Chat Widget
Adicione o widget de chat ao seu site para atendimento em tempo real. Apos criar uma inbox do tipo "Web" no painel, copie o script de instalacao:
<script>
(function(d,t) {
var BASE_URL = "https://chat.seudominio.com";
var g = d.createElement(t), s = d.getElementsByTagName(t)[0];
g.src = BASE_URL + "/packs/js/sdk.js";
g.defer = true;
g.async = true;
s.parentNode.insertBefore(g, s);
g.onload = function() {
window.chatwootSDK.run({
websiteToken: 'SEU_WEBSITE_TOKEN',
baseUrl: BASE_URL
})
}
})(document, "script");
</script>Storage de Arquivos
Configure onde os arquivos enviados nas conversas serao armazenados.
Local (Padrao)
ACTIVE_STORAGE_SERVICE=localAmazon S3
ACTIVE_STORAGE_SERVICE=amazon
S3_BUCKET_NAME=seu-bucket
AWS_ACCESS_KEY_ID=sua-access-key
AWS_SECRET_ACCESS_KEY=sua-secret-key
AWS_REGION=us-east-1Configuracao de Email (SMTP)
Configure o SMTP para envio de notificacoes, convites e emails de confirmacao.
# Configuracao SMTP
MAILER_SENDER_EMAIL=noreply@seudominio.com
SMTP_ADDRESS=smtp.seudominio.com
SMTP_PORT=587
SMTP_USERNAME=noreply@seudominio.com
SMTP_PASSWORD=senha_smtp
SMTP_AUTHENTICATION=plain
SMTP_ENABLE_STARTTLS_AUTO=true
SMTP_DOMAIN=seudominio.comProvedores populares
Para Gmail use smtp.gmail.com:587. Para SendGrid use smtp.sendgrid.net:587 com API key como password.
SSL / HTTPS
Recomendamos usar um reverse proxy (Nginx, Traefik, Caddy) para terminacao SSL. Exemplo com Nginx:
server {
listen 443 ssl;
server_name chat.seudominio.com;
ssl_certificate /etc/ssl/certs/chat.crt;
ssl_certificate_key /etc/ssl/private/chat.key;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
}
location /cable {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}Logs e Monitoramento
Comandos uteis para monitorar a aplicacao:
# Ver logs em tempo real
docker compose logs -f noovichat
# Ver logs do Sidekiq (jobs em background)
docker compose logs -f sidekiq
# Verificar saude da aplicacao
curl http://localhost:3000/auth/sign_in
# Console Rails (debug)
docker compose exec noovichat bundle exec rails console