Skip to content

Releases: EvolutionAPI/evolution-api

v2.3.6

21 Oct 14:41

Choose a tag to compare

Features

  • Baileys, Chatwoot, OnWhatsapp Cache: Multiple implementations and fixes
    • Fixed cache for PN, LID and g.us numbers to send correct number
    • Fixed audio and document sending via Chatwoot in Baileys channel
    • Multiple fixes in Chatwoot integration
    • Fixed ignored messages when receiving leads

Fixed

  • Baileys: Fix buffer storage in database
    • Correctly save Uint8Array values to database
  • Baileys: Simplify logging of messageSent object
    • Fixed "this.isZero not is function" error

Chore

  • Version: Bump version to 2.3.6 and update Baileys dependency to 7.0.0-rc.6
  • Workflows: Update checkout step to include submodules
    • Added 'submodules: recursive' option to checkout step in multiple workflow files to ensure submodules are properly initialized during CI/CD processes
  • Manager: Update asset files and install process
    • Updated subproject reference in evolution-manager-v2 to the latest commit
    • Enhanced the manager_install.sh script to include npm install and build steps
    • Replaced old JavaScript asset file with a new version for improved performance
    • Added a new CSS file for consistent styling across the application

What's Changed

  • feat(baileys,chatwoot,on-whatsapp-cache): implementações e correções na baileys e chatwoot by @KokeroO in #2103
  • fix: Simplify logging of messageSent object by @KokeroO in #2105
  • fix( baileys.service ): Corrige ao salvar no DB valores Uint8Array by @KokeroO in #2107
  • chore: bump version to 2.3.6 and update baileys dependency to 7.0.0-rc.6 by @KokeroO in #2108

Full Changelog: 2.3.5...2.3.6

v2.3.5

15 Oct 12:59

Choose a tag to compare

Features

  • Chatwoot Enhancements: Comprehensive improvements to message handling, editing, deletion and i18n
  • Participants Data: Add participantsData field maintaining backward compatibility for group participants
  • LID to Phone Number: Convert LID to phoneNumber on group participants
  • Docker Configurations: Add Kafka and frontend services to Docker configurations

Fixed

  • Kafka Migration: Fixed PostgreSQL migration error for Kafka integration
    • Corrected table reference from "public"."Instance" to "Instance" in foreign key constraint
    • Fixed ERROR: relation "public.Instance" does not exist issue in migration 20250918182355_add_kafka_integration
    • Aligned table naming convention with other Evolution API migrations for consistency
    • Resolved database migration failure that prevented Kafka integration setup
  • Update Baileys Version: v7.0.0-rc.5 with compatibility fixes
    • Fixed assertSessions signature compatibility using type assertion
    • Fixed incompatibility in voice call (wavoip) with new Baileys version
    • Handle undefined status in update by defaulting to 'DELETED'
  • Chatwoot Improvements: Multiple fixes for enhanced reliability
    • Correct chatId extraction for non-group JIDs
    • Resolve webhook timeout on deletion with 5+ images
    • Improve error handling in Chatwoot messages
    • Adjust conversation verification logic and cache
    • Optimize conversation reopening logic and connection notification
    • Fix conversation reopening and connection loop
  • Baileys Message Handling: Enhanced message processing
    • Add warning log for messages not found
    • Fix message verification in Baileys service
    • Simplify linkPreview handling in BaileysStartupService
  • Media Validation: Fix media content validation
  • PostgreSQL Connection: Refactor connection with PostgreSQL and improve message handling

Code Quality & Refactoring

  • Exponential Backoff: Implement exponential backoff patterns and extract magic numbers to constants
  • TypeScript Build: Update TypeScript build process and dependencies

What's Changed

  • Fix Chatwoot DB Connection Instability and Implement Stale Conversation Cache Handling by @Vitordotpy in #2017
  • fix(baileys): message update and i18n errors by @Vitordotpy in #2021
  • fix(chatwoot): Corrige Reabertura de Conversas e Loop de Mensagem de Conexão by @Vitordotpy in #2023
  • feat(chatwoot): comprehensive improvements to message handling, editing, deletion and i18n (translate messages) by @dersonbsb2022 in #2048
  • feat: convert LID to phoneNumber on GROUP_PARTICIPANTS_UPDATE webhook by @guispiller in #2025
  • fix/media content validation by @nolramaf in #2072
  • Implementations and corrections of previous commits in the chatwoot and baileys services by @KokeroO in #2076
  • Convert LIDs to PN by sending a call rejection message by @KokeroO in #2085
  • fix: correct the error of hardcoded prisma/kafka schema by @davidmnzs in #2083

New Contributors

Full Changelog: 2.3.4...2.3.5

v2.3.4

23 Sep 14:43

Choose a tag to compare

Features

  • Kafka Integration: Added Apache Kafka event integration for real-time event streaming

    • New Kafka controller, router, and schema for event publishing
    • Support for instance-specific and global event topics
    • Configurable SASL/SSL authentication and connection settings
    • Auto-creation of topics with configurable partitions and replication
    • Consumer group management for reliable event processing
    • Integration with existing event manager for seamless event distribution
  • Evolution Manager v2 Open Source: Evolution Manager v2 is now available as open source

    • Added as git submodule with HTTPS URL for easy access
    • Complete open source setup with Apache 2.0 license + Evolution API custom conditions
    • GitHub templates for issues, pull requests, and workflows
    • Comprehensive documentation and contribution guidelines
    • Docker support for development and production environments
    • CI/CD workflows for code quality, security audits, and automated builds
    • Multi-language support (English, Portuguese, Spanish, French)
    • Modern React + TypeScript + Vite frontend with Tailwind CSS
  • EvolutionBot Enhancements: Improved EvolutionBot functionality and message handling

    • Implemented splitMessages functionality for better message segmentation
    • Added linkPreview support for enhanced message presentation
    • Centralized split logic across chatbot services for consistency
    • Enhanced message formatting and delivery capabilities

Fixed

  • MySQL Schema: Fixed invalid default value errors for createdAt fields in Evoai and EvoaiSetting models

    • Changed @default(now()) to @default(dbgenerated("CURRENT_TIMESTAMP")) for MySQL compatibility
    • Added missing relation fields (N8n, N8nSetting, Evoai, EvoaiSetting) in Instance model
    • Resolved Prisma schema validation errors for MySQL provider
  • Prisma Schema Validation: Fixed instanceName field error in message creation

    • Removed invalid instanceName field from message objects before database insertion
    • Resolved Unknown argument 'instanceName' Prisma validation error
    • Streamlined message data structure to match Prisma schema requirements
  • Media Message Processing: Enhanced media handling across chatbot services

    • Fixed base64 conversion in EvoAI service for proper image processing
    • Converted ArrayBuffer to base64 string using Buffer.from().toString('base64')
    • Improved media URL handling and base64 encoding for better chatbot integration
    • Enhanced image message detection and processing workflow
  • Evolution Manager v2 Linting: Resolved ESLint configuration conflicts

    • Disabled conflicting Prettier rules in ESLint configuration
    • Added comprehensive rule overrides for TypeScript and React patterns
    • Fixed import ordering and code formatting issues
    • Updated security vulnerabilities in dependencies (Vite, esbuild)

Code Quality & Refactoring

  • Chatbot Services: Streamlined media message handling across all chatbot integrations

    • Standardized base64 and mediaUrl processing patterns
    • Improved code readability and maintainability in media handling logic
    • Enhanced error handling for media download and conversion processes
    • Unified image message detection across different chatbot services
  • Database Operations: Improved data consistency and validation

    • Enhanced Prisma schema compliance across all message operations
    • Removed redundant instance name references for better data integrity
    • Optimized message creation workflow with proper field validation

Environment Variables

  • Added comprehensive Kafka configuration options:
    • KAFKA_ENABLED, KAFKA_CLIENT_ID, KAFKA_BROKERS
    • KAFKA_CONSUMER_GROUP_ID, KAFKA_TOPIC_PREFIX
    • KAFKA_SASL_* and KAFKA_SSL_* for authentication
    • KAFKA_EVENTS_* for event type configuration

What's Changed

  • fix(docker): change private image to public image in docker-compose by @JamsMendez in #1989
  • fix(evolutionbot): Fixing the correct message sending method so that messages are split. by @dersonbsb2022 in #1986

New Contributors

Full Changelog: 2.3.3...2.3.4

v2.3.3

18 Sep 18:00

Choose a tag to compare

Features

  • Add extra fields to object sent to Flowise bot
  • Add Prometheus-compatible /metrics endpoint (gated by PROMETHEUS_METRICS)
  • Implement linkPreview support for Evolution Bot

Fixed

  • Address Path Traversal vulnerability in /assets endpoint by implementing security checks
  • Configure Husky and lint-staged for automated code quality checks on commits and pushes
  • Convert mediaKey from media messages to avoid bad decrypt errors
  • Improve code formatting for better readability in WhatsApp service files
  • Format messageGroupId assignment for improved readability
  • Improve linkPreview implementation based on PR feedback
  • Clean up code formatting for linkPreview implementation
  • Use 'unknown' as fallback for clientName label
  • Remove abort process when status is paused, allowing the chatbot return after the time expires and after being paused due to human interaction (stopBotFromMe)
  • Enhance message content sanitization in Baileys service and improve message retrieval logic in Chatwoot service
  • Integrate Typebot status change events for webhook in chatbot controller and service
  • Mimetype of videos video

Security

  • CRITICAL: Fixed Path Traversal vulnerability in /assets endpoint that allowed unauthenticated local file read
  • Customizable Websockets Security

Testing

  • Baileys Updates: v7.0.0-rc.3 (Link)

What's Changed

  • Revert "Ignore events that are not messages (like EPHEMERAL_SYNC_RESPONSE)" by @DavidsonGomes in #1919
  • feat: implement disable/enable linkPreview support for Evolution Bot by @dersonbsb2022 in #1908
  • fix: Prevent Duplicate Cron Jobs for Chatwoot Message Sync by @andres99x in #1906
  • fix: integrate Typebot status change events for webhook in chatbot controller e service by @josiasmaceda in #1927
  • fix: allowing the chatbot return after the time expires and after human interaction (stopBotFromMe) by @josiasmaceda in #1928
  • Customizable Websockets Security by @moothz in #1929
  • fix: convert mediaKey from media messages to avoid bad decrypt errors by @furious in #1948
  • feat: implement standardized error handling for WhatsApp API responses by @ricaelchiquetti in #1918
  • feat: add extra fields to object sent to Flowise bot by @Nocelli in #1951
  • Feat/prometheus metrics by @elizandropacheco in #1947
  • feat/add global SQS mode with single-queue-per-event and payload size control by @nolramaf in #1896
  • feat/validate video type before uploading to S3 by @nolramaf in #1897
  • Fix/Adjust remote message key handling in WhatsApp service to include alternative JID by @ricaelchiquetti in #1955

New Contributors

Full Changelog: 2.3.2...2.3.3

v2.3.2

02 Sep 16:33

Choose a tag to compare

Features

  • Add support to socks proxy

Fixed

  • Added key id into webhook payload in n8n service
  • Enhance RabbitMQ controller with improved connection management and shutdown procedures
  • Convert outgoing images to JPEG before sending with Chatwoot
  • Update baileys dependency to version 6.7.19

What's Changed

New Contributors

Full Changelog: 2.3.1...2.3.2

v2.3.1

29 Jul 12:21

Choose a tag to compare

Feature

  • Add BaileysMessageProcessor for improved message handling and integrate rxjs for asynchronous processing
  • Enhance message processing with retry logic for error handling

Fixed

  • Update Baileys Version
  • Update Dockerhub Repository and Delete Config Session Variable
  • Fixed sending variables in typebot
  • Add unreadMessages in the response
  • Phone number as message ID for Evo AI
  • Fix upload to s3 when media message
  • Simplify edited message check in BaileysStartupService
  • Avoid corrupting URLs with query strings
  • Removed CONFIG_SESSION_PHONE_VERSION environment variable

What's Changed

New Contributors

Full Changelog: 2.3.0...2.3.1

v2.3.0

17 Jun 20:03

Choose a tag to compare

Feature

  • Add support to get Catalogs and Collections with new routes: '{{baseUrl}}/chat/fetchCatalogs' and '{{baseUrl}}/chat/fetchCollections'
  • Add NATS integration support to the event system
  • Add message location support meta
  • Add S3_SKIP_POLICY env variable to disable setBucketPolicy for incompatible providers
  • Add EvoAI integration with models, services, and routes
  • Add N8n integration with models, services, and routes

Fixed

  • Shell injection vulnerability
  • Update Baileys Version v6.7.18
  • Audio send duplicate from chatwoot
  • Chatwoot csat creating new conversation in another language
  • Refactor SQS controller to correct bug in sqs events by instance
  • Adjustin cloud api send audio and video
  • Preserve animation in GIF and WebP stickers
  • Preventing use conversation from other inbox for the same user
  • Ensure full WhatsApp compatibility for audio conversion (libopus, 48kHz, mono)
  • Enhance message fetching and processing logic
  • Added lid on whatsapp numbers router
  • Now if the CONFIG_SESSION_PHONE_VERSION variable is not filled in it automatically searches for the most updated version

What's Changed

  • Refactor edit and delete message functionality in BaileyStartupService by @GrimBit1 in #1195
  • Feat: Adicionei suporte para obter o Catálogos de Produtos e as Coleções de Produtos para a versão 2.2.3 by @wayre in #1201
  • Adicionado suporte para obter Catálogos e Coleções no WhatsApp Business by @wayre in #1214
  • feat: notconvertsticket for animated stickers by @joaosouz4dev in #1211
  • Fix instance creation on v2.2.3 by @rafwell in #1215
  • feat: add message location support whatsapp meta by @tmsdesarrollo3 in #1217
  • Fix audio send duplicate from chatwoot. by @mbap-dev in #1221
  • fix: chatwoot csat creating new conversation in another language by @tmsdesarrollo3 in #1226
  • 🐛 Fix: Add migration for missing wavoipToken column in MySQL build env (#1234) by @julianoaj in #1235
  • Refactor Editing Message events and update message handler by @GrimBit1 in #1237
  • fix: change mediaId optional chaining and list response message text obtain by @ygorsantana in #1240
  • hotfix(migration): add missing wavoipToken column in MySQL schema by @AndersonSilvaCavalcante in #1244
  • ✨ Feat: Remover a reação de uma mensagem. by @julianoaj in #1259
  • fix: Refactor SQS controller to correct bug in sqs events by instance by @fernandoralha in #1251
  • Fix: Expiration being useless on awaitUser false by @ygorsantana in #1264
  • fix: adjusting cloud api send audio and video by @pedroepif in #1287
  • Corrige validação de URL para permitir localhost e endereços IP by @jrCleber in #1290
  • Add eventos referente a instancia que estavam faltando by @rafwell in #1304
  • Corrigindo um bug no endpoint de findChats e permitindo paginação nos endpoints de findChats e findContacts by @pedro-php in #1334
  • Adicionando um novo webhook no endpoint de updateMessage by @pedro-php in #1343
  • Fix/animated stickers by @marceloapd in #1322
  • Adicionando um timestamp ao filename para possibilitar enviar o mesmo arquivo mais de uma vez na mesma conversa. by @alvestassio in #1344
  • Hotfix - shell injection vulnerability by @jeffersonfelixdev in #1354
  • feat(s3): add S3_SKIP_POLICY env variable to disable setBucketPolicy by @Deyvi-dev in #1362
  • Correção para quando enviar uma localização. by @ricocorreia1 in #1351
  • Corrigindo um bug ao atualizar o push name no evento MESSAGES_UPSERT e MESSAGES_UPDATE by @pedro-php in #1366
  • fix(api): modifica fetchChats para trazer mensagens de contatos não salvos by @leandrosroc in #1384
  • fix(audio): ensure full WhatsApp compatibility for audio conversion by @edisonmartinsmkt in #1425
  • Tornando Webhook mais seguro com JWT token by @victoreduardo in #1318
  • Corrigir utilização do linkPreview no WhatsApp Business API by @onerrogus in #1414
  • fix: Erro na criação de conversation quando já existe uma conversation de outro inbox para o mesmo usuário by @victoreduardo in #1415
  • fix mysql wavoip token by @paulocoutinhox in #1433
  • fix(chatwoot): avoid "undefined" caption on group audio messages by @edisonmartinsmkt in #1434
  • Defininando TTL no userDivicesCache igual usado no Baileys by @theeusmartins in #1332
  • fix: when you set jpegThumbnail, image not appear on app mobile by @Faelst in #1406
  • Update package.json by @icaro-andrade in #1422
  • fix(chatwoot): only fallback audio caption when audioMessage exists by @edisonmartinsmkt in #1435
  • Findchat group name treatment by @luiis716 in #1420
  • fix: remove postinstall script from package.json to fix GitHub Action by @gomessguii in #1450
  • Add N8n integration with models, services, and routes by @gomessguii in #1448
  • feat(whatsapp): enhance message fetching and processing logic by @gomessguii in #1449
  • feat(evoai): add EvoAI integration with models, services, and routes by @gomessguii in #1451
  • feat: updated manager to the last version with suport to n8n and EvoA… by @gomessguii in #1452
  • feat(evoai): add Evoai and EvoaiSetting tables with foreign key const… by @gomessguii in #1453
  • feat(channel): enhance pushName logic for messages by @gomessguii in #1457
  • Fixes issue #879 by @thiagoomatheus in #1456
  • fix: Deadlock errors and undefined arguments by @KokeroO in #1473
  • Fix-chatwoot-import by @AlexSzefezuk in #1481
  • Refatoração da funcionalidade de chatbots (em andamento) by @gomessguii in #1482
  • fix: melhora consistência e formatação dos chatbots (N8N e Evolution Bot) by @oriondesign2015 in #1484
  • chore: possibilita o envio de medias do tipo [svg, tiff] vindas do Chatwoot by @KokeroO in #1483
  • fix: Corrige envio da apiKey da instância nos payloads do Evolution Bot e N8N by @oriondesign2015 in #1485
  • fix: Corrige envio da apiKey da instância nos payloads do Flowise e do Dify by @oriondesign2015 in #1486
  • fix: Corrige o PR1481 by @KokeroO in #1490
  • corrige estrutura de if/else e bloco try/catch em chatwoot-import-helper.ts by @oriondesign2015 in #1493
  • fix: melhora a formatação e tratamento de erros na função getExistingSourceIds by @KokeroO in #1494
  • Inclusão do parâmetro frame_max para compatibilidade com RabbitMQ 4.1+ by @thrsouza in #1498
  • fix: Melhora o método createConversation (evita conversas criadas duplicadas Chatwoot) by @KokeroO in #1504
  • refactor: improve chatbot integrations by @gomessguii in #1508
  • fix: change service image version and change to latest config session phone version by @samuelterra22 in #1513
  • Update fetchStatusMessage to handle empty offset / page by @Daquisu in #1536
  • fix: adjustment in audio transcription with official api by @splusoficial in #1556
  • feat(audio): support LPCM and fix waveform distortion by @edisonmartinsmkt in #1574
  • refactor(chatwoot): Melhora e ajusta tratamento de números @lid by @KokeroO in https://github.com...
Read more

v2.2.3

03 Feb 14:53

Choose a tag to compare

Fixed

  • Fix cache in local file system
  • Update Baileys Version

What's Changed

New Contributors

Full Changelog: 2.2.2...2.2.3

v2.2.2

31 Jan 10:15

Choose a tag to compare

Features

  • Added prefix key to queue name in RabbitMQ

Fixed

  • Update Baileys Version

What's Changed

New Contributors

Full Changelog: 2.2.1...2.2.2

v2.2.1

22 Jan 17:41

Choose a tag to compare

Features

  • Retry system for send webhooks
  • Message filtering to support timestamp range queries
  • Chats filtering to support timestamp range queries

Fixed

  • Correction of webhook global
  • Fixed send audio with whatsapp cloud api
  • Refactor on fetch chats
  • Refactor on Evolution Channel

What's Changed

New Contributors

Full Changelog: 2.2.0...2.2.1