Progresso:

✅ Limpeza do código geral da API
✅ Remoção de logs excessivamente verbosos
✅ Remoção da autenticação com JWT
✅ Remoção do MongoDB com Mongoose
✅ Padronização de todos os corpos de requisição para usar camelCase
✅ Alteração da configuração do arquivo .env, removido a versão yml e adicionado .env na raiz do repositório
✅ Remoção da conexão tipo móvel com Baileys
✅ Implementação do Postgres via Prisma ORM
✅ Implementação do MySQL via Prisma ORM
✅ Simplificação de payloads e endpoints
✅ Revisão e melhorias do Typebot
✅ Revisão e melhorias do Chatwoot
✅ Ajuste de busca para chats, mensagens e contatos
✅ Revisão da integração com a API oficial do WhatsApp
❌ Revisão da API oficial do WhatsApp com Chatwoot e Typebot
❌ Revisão de endpoints que não funcionam corretamente
❌ Implementação de armazenamento de arquivos com Minio e S3

Melhorias para o Typebot

✅ Agora pode cadastrar vários typebots
✅ Configuração de início por gatilho ou para todos
✅ Busca de sessão por typebot ou remoteJid
✅ Configuração de keepOpen (mantém a sessão mesmo finalizando o bot, para rodar uma vez por contato)
✅ Configuração de stopBotFromMe, permite eu interromper o bot caso eu mande mensagem no chat pelo celular.

 

 

OBS: Se o PostgreSQL iniciar antes do Prisma criar as tabelas, reinicie o contêiner da Evolution para que o Prisma possa gerar as tabelas corretamente!

Isso garantirá que o Prisma tenha a oportunidade de configurar as tabelas conforme necessário e evitará possíveis conflitos ou erros durante o processo de inicialização.

Stack para Download – Atualizada 12/06/2024

DOWNLOADdocker-compose
Ou Copia e Cola


version: "3.7"

## --------------------------- PACK TYPEBOT --------------------------- ##

services:
  evolution2:
    image: atendai/evolution-api:v2.0.0-alpha # Imagem do serviço evolution-api
    networks:
      - evolution # Nome da rede interna
    environment: # Variáveis de ambiente para configurar o serviço
      - SERVER_URL=https://evolution.seusite.com.br # URL do servidor
      - LANGUAGE=pt-BR # Idioma configurado para pt-BR (português do Brasil)
      - AUTHENTICATION_TYPE=apikey # Tipo de autenticação configurada como apikey
      - AUTHENTICATION_API_KEY=16fdf9c0422199c901f2510ce980db37 # Chave de API para autenticação
      - AUTHENTICATION_EXPOSE_IN_FETCH_INSTANCES=false # Não expor a autenticação ao buscar instâncias
      - CONFIG_SESSION_PHONE_CLIENT=Evolution # Nome do cliente de telefone na sessão
      - CONFIG_SESSION_PHONE_NAME=Chrome # Nome do navegador de telefone na sessão
      - PROVIDER_ENABLED=false # Provedor desativado
      - PROVIDER_HOST=127.0.0.1 # Host do provedor configurado para localhost
      - PROVIDER_PORT=5656 # Porta do provedor
      - PROVIDER_PREFIX=evolution # Prefixo do provedor
      - WA_BUSINESS_TOKEN_WEBHOOK=evolution # Token de webhook do WhatsApp Business
      - WA_BUSINESS_URL=https://graph.facebook.com # URL da API do WhatsApp Business
      - WA_BUSINESS_VERSION=v18.0 # Versão da API do WhatsApp Business
      - WA_BUSINESS_LANGUAGE=pt_BR # Idioma configurado para pt_BR
      - QRCODE_LIMIT=30 # Limite de QR codes
      - QRCODE_COLOR=#000000 # Cor do QR code
      - RABBITMQ_ENABLED=false # RabbitMQ desativado
      - RABBITMQ_URI=amqp://USER:PASS@rabbit_mq:5672 # URI do RabbitMQ (desativado)
      - RABBITMQ_EXCHANGE_NAME=evolution # Nome da exchange do RabbitMQ (desativado)
      - RABBITMQ_GLOBAL_ENABLED=true # RabbitMQ global ativado
      - DATABASE_ENABLED=true # Banco de dados ativado
      - DATABASE_PROVIDER=postgresql # Provedor de banco de dados configurado para PostgreSQL
      - DATABASE_CONNECTION_URI=postgresql://evolution:evolution@postgres:5432/evolution?schema=public # URI de conexão do banco de dados PostgreSQL
      - DATABASE_CONNECTION_CLIENT_NAME=evolution # Nome do cliente de conexão do banco de dados
      - DATABASE_SAVE_DATA_INSTANCE=true # Salvar dados da instância no banco de dados
      - DATABASE_SAVE_DATA_NEW_MESSAGE=true # Salvar novos dados de mensagens no banco de dados
      - DATABASE_SAVE_MESSAGE_UPDATE=true # Salvar atualizações de mensagens no banco de dados
      - DATABASE_SAVE_DATA_CONTACTS=true # Salvar dados de contatos no banco de dados
      - DATABASE_SAVE_DATA_CHATS=true # Salvar dados de chats no banco de dados
      - CACHE_REDIS_ENABLED=false # Redis desativado
      - CACHE_REDIS_URI=redis://redis:6379/5 # URI do Redis (desativado)
      - CACHE_REDIS_PREFIX_KEY=evolution # Prefixo de chave do Redis (desativado)
      - CACHE_REDIS_TTL=604800 # Tempo de vida do cache do Redis (desativado)
      - CACHE_REDIS_SAVE_INSTANCES=false # Salvar instâncias no Redis (desativado)
      - CACHE_LOCAL_ENABLED=true # Cache local ativado
      - CACHE_LOCAL_TTL=604800 # Tempo de vida do cache local
      - TYPEBOT_ENABLED=true # Typebot ativado
      - TYPEBOT_API_VERSION=latest # Versão da API do Typebot configurada para a mais recente
      - CHATWOOT_ENABLED=true # Chatwoot ativado
      - CHATWOOT_MESSAGE_DELETE=true # Permitir deletar mensagens no Chatwoot
      - CHATWOOT_MESSAGE_READ=true # Permitir ler mensagens no Chatwoot
      - WEBHOOK_GLOBAL_ENABLED=false # Webhook global desativado
      - WEBHOOK_GLOBAL_URL='' # URL do webhook global (vazia)
      - WEBHOOK_GLOBAL_WEBHOOK_BY_EVENTS=false # Webhook global por eventos desativado
      - WEBHOOK_EVENTS_APPLICATION_STARTUP=false # Evento de inicialização da aplicação desativado
      - WEBHOOK_EVENTS_QRCODE_UPDATED=true # Evento de atualização do QR code ativado
      - WEBHOOK_EVENTS_MESSAGES_SET=true # Evento de configuração de mensagens ativado
      - WEBHOOK_EVENTS_MESSAGES_UPSERT=true # Evento de upsert de mensagens ativado
      - WEBHOOK_EVENTS_MESSAGES_EDITED=true # Evento de edição de mensagens ativado
      - WEBHOOK_EVENTS_MESSAGES_UPDATE=true # Evento de atualização de mensagens ativado
      - WEBHOOK_EVENTS_MESSAGES_DELETE=true # Evento de deleção de mensagens ativado
      - WEBHOOK_EVENTS_SEND_MESSAGE=true # Evento de envio de mensagens ativado
      - WEBHOOK_EVENTS_CONTACTS_SET=true # Evento de configuração de contatos ativado
      - WEBHOOK_EVENTS_CONTACTS_UPSERT=true # Evento de upsert de contatos ativado
      - WEBHOOK_EVENTS_CONTACTS_UPDATE=true # Evento de atualização de contatos ativado
      - WEBHOOK_EVENTS_PRESENCE_UPDATE=true # Evento de atualização de presença ativado
      - WEBHOOK_EVENTS_CHATS_SET=true # Evento de configuração de chats ativado
      - WEBHOOK_EVENTS_CHATS_UPSERT=true # Evento de upsert de chats ativado
      - WEBHOOK_EVENTS_CHATS_UPDATE=true # Evento de atualização de chats ativado
      - WEBHOOK_EVENTS_CHATS_DELETE=true # Evento de deleção de chats ativado
      - WEBHOOK_EVENTS_GROUPS_UPSERT=true # Evento de upsert de grupos ativado
      - WEBHOOK_EVENTS_GROUPS_UPDATE=true # Evento de atualização de grupos ativado
      - WEBHOOK_EVENTS_GROUP_PARTICIPANTS_UPDATE=true # Evento de atualização de participantes de grupos ativado
      - WEBHOOK_EVENTS_CONNECTION_UPDATE=true # Evento de atualização de conexão ativado
      - WEBHOOK_EVENTS_LABELS_EDIT=true # Evento de edição de etiquetas ativado
      - WEBHOOK_EVENTS_LABELS_ASSOCIATION=true # Evento de associação de etiquetas ativado
      - WEBHOOK_EVENTS_CALL=true # Evento de chamadas ativado
      - WEBHOOK_EVENTS_TYPEBOT_START=false # Evento de início do Typebot desativado
      - WEBHOOK_EVENTS_TYPEBOT_CHANGE_STATUS=false # Evento de mudança de status do Typebot desativado
      - WEBHOOK_EVENTS_ERRORS=false # Evento de erros desativado
      - WEBHOOK_EVENTS_ERRORS_WEBHOOK= # URL de webhook de erros (vazia)
      - DEL_INSTANCE=false # Deleção de instância desativada
      - DEL_TEMP_INSTANCES=false # Deleção de instâncias temporárias desativada

## --------------------------- PACK TYPEBOT --------------------------- ##

    labels: # Labels para configuração do Traefik
      - traefik.enable=true # Traefik ativado
      - traefik.http.routers.evolution_v2.rule=Host(`evolution.seusite.com.br`) # Regra do Traefik para roteamento baseado no host
      - traefik.http.routers.evolution_v2.entrypoints=websecure # Pontos de entrada configurados para websecure
      - traefik.http.routers.evolution_v2.priority=1 # Prioridade do roteador configurada como 1
      - traefik.http.routers.evolution_v2.tls.certresolver=leresolver # Resolver TLS configurado para Let's Encrypt
      - traefik.http.routers.evolution_v2.service=evolution_v2 # Serviço do Traefik configurado para evolution_v2
      - traefik.http.services.evolution_v2.loadbalancer.server.port=8080 # Porta do servidor de balanceamento de carga configurada para 8080
      - traefik.http.services.evolution_v2.loadbalancer.passHostHeader=true # Passar cabeçalho do host ativado

## --------------------------- PACK TYPEBOT --------------------------- ##

  postgres:
    image: postgres:latest # Imagem do serviço PostgreSQL
    environment: # Variáveis de ambiente para configuração do PostgreSQL
      POSTGRES_DB: evolution # Nome do banco de dados
      POSTGRES_USER: evolution # Nome do usuário do banco de dados
      POSTGRES_PASSWORD: evolution # Senha do banco de dados
    networks:
      - evolution # Nome da rede interna
    volumes:
      - evolution_postgres_data:/var/lib/postgresql/data # Volume para persistência dos dados do PostgreSQL

## --------------------------- PACK TYPEBOT --------------------------- ##

volumes:
  evolution_postgres_data: # Volume para persistência dos dados do PostgreSQL

networks:
  evolution: # Nome da rede interna
    external: true # Configurado como rede externa

pgAdmin

Stack pgAmin para Download 

DOWNLOADdocker-compose
Ou Copia e Cola

version: '3.7'

services:
  pgadmin:
    image: dpage/pgadmin4:latest
    volumes:
      - pgadmin_data:/var/lib/pgadmin
    environment:
      PGADMIN_DEFAULT_EMAIL: [email protected] # Troque pelo seu email
      PGADMIN_DEFAULT_PASSWORD: 'senha123' # Troque pela sua senha
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.pgadmin.rule=Host(`pgadmin.seusite.com.br`)" # Troque pelo seu dominio ou subdominio
      - "traefik.http.services.pgadmin.loadbalancer.server.port=80"
      - "traefik.http.routers.pgadmin.service=pgadmin"
      - "traefik.http.routers.pgadmin.tls.certresolver=leresolver"
      - "traefik.http.routers.pgadmin.entrypoints=websecure"
      - "traefik.http.routers.pgadmin.tls=true"
    networks:
      - evolution

networks:
  evolution:
    external: true

volumes:
  pgadmin_data:

Links Úteis:

Gerador Chave Hexadecimal
https://packtypebot.com.br/gerador/hexadecimal.php

PR para report:
https://github.com/EvolutionAPI/evolution-api/pull/635

Branch:
https://github.com/EvolutionAPI/evolution-api/tree/v2.0.0

Postman Novo:
https://www.postman.com/agenciadgcode/workspace/evolution-api/collection/26869335-be76bb57-f9ed-4489-b367-a0aeec46e400

Documentação:
https://doc.evolution-api.com/pt/get-started/introduction

Discord:
https://discord.gg/U66zvhV49B

Dockerhub
https://hub.docker.com/r/atendai/evolution-api/tags

Mudanças e novidades:
https://github.com/EvolutionAPI/evolution-api/blob/v2.0.0/CHANGELOG.md

 

📦 Pack Typebot

🚀 Bem-vindo ao Mundo da Automação com Typebot! 🤖

O Pack Typebot é a solução perfeita tanto para afiliados e produtores, como também para empresários e autônomos que desejam impulsionar seus negócios ou garantir uma renda extra.
😎 Ele oferece várias funcionalidades, confira logo abaixo:

✅ Área de Membros
✅ Atualizações frequentes

Conteúdo Incluso no Pack para Download:

🤑 Painel Micro-SaaS
🎯 Whaticket SaaS
🧩 Extensão Pack Typebot
💻 Painel Administrativo 3.0
📅 Painel de Agendamentos (Em breve)
🔄 URL Rotator
🔗 Typebot Link Manager
🗃️ Arquivos para montar sua própria API

Fluxos Personalizados:

🎰 Casa Lotérica (Com Resultado em tempo Real)
🍔 Delivery (Com Calculadora de Itens)
🏠 Imobiliária (Atendimento por IA)
🚗 Loja de Veículos (Com consulta tabela FIPE)
🍰 Doceria (Com Calculadora de Itens)
💈 Barbearia (Com sistema de Agendamento)
🦷 Clínica Dentaria (Atendimento por IA)
💆 Clínica de Estética
💼 Consultas de Dados (CNPJ, CEP, CORREIOS e muito mais…)
📶 Provedor de Internet
🏋️ Academia
⚖️ Advocacia
📺 IPTV
🎰 Igaming
🤖 ChatGPT

Extras Incríveis:

📦 Pacote com +500 Funis para estudo
🎥 Incluído +180 Vídeo Aulas
🏗️ + 30 Stacks para Portainer Versão Standalone
😍 Comunidade no Facebook para Membros
🎫 Suporte via Ticket
🎉 Bônus incríveis

Quer ver nossos fluxos de amostra acesse o link:
👉 https://app.afcode.com.br/packtypebot

Veja todo conteúdo que está incluso no Pack Typebot acessando o link:
👉 https://packtypebot.com.br/conteudo/