Releases: aldinokemal/go-whatsapp-web-multidevice
v7.5.1
What's New in v7.5.1
📥 On-Demand Media Download
- Download Media API: New
GET /message/:id/download
endpoint for downloading media files- Organized Storage: Media files stored with chat/date organization for better management
- All Media Types: Support for images, videos, audio files, documents, and stickers
- Automatic File Handling: Smart filename generation and duplicate handling
- Storage Optimization: Efficient storage structure preventing file conflicts
📱 Enhanced Chat Messages UI
- Auto-Download Functionality: Media content automatically downloads and displays in chat interface
- Real Content Display: Shows actual media instead of "Media Available" labels
- Loading States: Visual feedback during media downloads
- Error Handling: Graceful error handling with retry functionality
- Batch Processing: Intelligent concurrency control (max 3 concurrent downloads)
- Performance Optimized: Efficient media loading without blocking UI
📦 Updated Dependencies & Security
- Latest MCP Support: Updated mcp-go to v0.39.1 for improved Model Context Protocol integration
- Better AI Integration: Enhanced compatibility with AI tools and agents
- Improved Stability: More reliable MCP server operations
- Updated Protocol Features: Latest MCP specification support
- Enhanced CLI Framework: Updated cobra to v1.10.1 for better command-line experience
- WhatsApp Protocol Updates: Latest whatsmeow library (v0.0.0-20250905121447-8d6da61ecbfa)
- Connection Stability: Improved WhatsApp Web connection reliability
- Protocol Compatibility: Latest WhatsApp Web protocol support
- Bug Fixes: Resolved edge cases in message handling
- Testing Framework: Updated testify to v1.11.1 for better testing capabilities
- Additional Dependencies: Updated protobuf, pflag, and added new indirect dependencies
🔧 Technical Improvements
- Context-Aware Group Creation: Updated group creation methods with proper context handling
- API Method Adjustments: Improved method signatures for better error handling
- Code Organization: Better separation of concerns in media handling logic
🎯 What This Means for You
For End Users
- Better Media Experience: Download and view media files directly from the web interface
- Improved Performance: Faster media loading with smart caching and organization
- Enhanced UI: More intuitive chat interface showing actual media content
- Reliable Downloads: Robust error handling ensures media downloads complete successfully
For Developers & Integrators
- New API Capability: Programmatically download media files from WhatsApp messages
- Better File Management: Organized storage structure makes media files easy to locate
- Enhanced Testing: Improved testing framework for more reliable development
- Latest Dependencies: Updated libraries provide better security and performance
For AI & Automation Users
- Improved MCP Integration: Better support for AI tools using Model Context Protocol
- Enhanced Reliability: More stable AI agent interactions
- Updated Protocol Support: Latest MCP features for advanced AI integrations
For System Administrators
- Better Resource Management: Improved concurrency control prevents system overload
- Enhanced Monitoring: Better error reporting and logging for media operations
- Storage Optimization: Organized file storage prevents disk space issues
- Updated Security: Latest dependency versions include security patches
🛠️ New API Endpoint
Media Download
# Download media from a specific message
GET /message/{message_id}/download?phone={phone_number}
# Response
{
"code": 200,
"message": "Success",
"results": {
"message_id": "BAE5158B7D2F4F2E",
"status": "downloaded",
"media_type": "image",
"filename": "image_2025-09-06_15-30-45.jpg",
"file_path": "/app/storages/media/120363402106XXXXX@g.us/2025/09/06/image_2025-09-06_15-30-45.jpg",
"file_size": 245760
}
}
Usage Examples
// Download media via API
const response = await fetch(`/message/${messageId}/download?phone=${phoneNumber}`, {
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
});
const data = await response.json();
if (data.code === 200) {
console.log('Media downloaded:', data.results.file_path);
}
📁 Media Storage Organization
Media files are now organized in a structured directory format:
storages/media/
├── {chat_id}/
│ ├── 2025/
│ │ ├── 09/
│ │ │ ├── 06/
│ │ │ │ ├── image_2025-09-06_15-30-45.jpg
│ │ │ │ ├── document_2025-09-06_15-45-12.pdf
│ │ │ │ └── video_2025-09-06_16-00-33.mp4
This organization provides:
- Easy Navigation: Find media by chat and date
- Storage Efficiency: Prevents filename conflicts
- Backup Simplicity: Easy to backup specific chats or date ranges
- Maintenance: Simple cleanup and management
📱 Enhanced UI Features
Auto-Download in Chat Messages
- Instant Media Loading: Media automatically downloads when viewing chat messages
- Progress Indicators: Visual feedback during download process
- Error Recovery: Automatic retry on failed downloads
- Concurrent Control: Smart batching prevents system overload
- Cache Management: Downloaded media is cached for faster subsequent access
User Experience Improvements
- Real Media Preview: See actual images, documents, and videos instead of placeholders
- Loading States: Clear indicators when media is being processed
- Error Messages: Helpful error messages with actionable guidance
- Responsive Design: Media displays properly across different screen sizes
Important Notes
✅ No Breaking Changes
- All existing APIs continue to work unchanged
- Backward compatible with previous versions
- No configuration changes required
- Existing media files remain accessible
✅ Enhanced Security
- Updated dependencies include latest security patches
- Media download requires proper authentication
- File access controls prevent unauthorized downloads
- Safe filename handling prevents directory traversal
🔧 Recommended Actions
- Update containers to benefit from improved media handling
- Try the new media download functionality in your chat interface
- Consider implementing the new download API in your integrations
- Update any automation that works with media files
💡 Performance Considerations
Media Download Optimization
- Concurrent Limits: Maximum 3 concurrent downloads prevent system overload
- Smart Caching: Downloaded media is cached to prevent duplicate downloads
- Storage Efficiency: Organized file structure improves access times
- Memory Management: Efficient handling of large media files
System Requirements
- Disk Space: Consider storage needs for media files
- Network Bandwidth: Media downloads may increase network usage
- CPU Usage: Media processing may temporarily increase CPU usage
Summary
Version 7.5.1 introduces powerful media download capabilities that significantly enhance the user experience when working with WhatsApp media files. The new on-demand download API, combined with the auto-download UI functionality, makes accessing and managing media content much more intuitive and efficient.
The comprehensive dependency updates, particularly the MCP and WhatsApp protocol libraries, ensure better compatibility with AI tools and more reliable WhatsApp Web connections. The organized media storage system provides a clean, maintainable structure for all downloaded files.
Whether you're using the web interface, building API integrations, or implementing AI-powered WhatsApp automation, this release provides the tools and reliability you need to work effectively with media content. The enhanced error handling, loading states, and concurrent processing controls ensure a smooth experience even when dealing with large volumes of media files.
What's Changed
- feat: add on-demand media download API and auto-download UI by @aldinokemal in #398
Full Changelog: v7.5.0...v7.5.1
v7.5.0
What's New in v7.5.0
🔗 Group Invite Link Management
- Get Group Invite Links: Retrieve invite links for groups you administer
- Admin-Only Access: Only group administrators can fetch invite links (security by design)
- RESTful API: New
GET /group/invite-link?group_id={id}
endpoint for programmatic access - Interactive Web UI: Point-and-click interface for easy invite link management
- Auto-Copy Functionality: One-click copying of invite links to clipboard
- Input Validation: Smart group ID correction and validation to prevent errors
- OpenAPI Documentation: Complete API specification with examples and schemas
🐳 Enhanced Container & CI/CD Support
- GitHub Container Registry: Official Docker images now published to ghcr.io
- Multi-Registry Support: Images available on both Docker Hub and GitHub Container Registry
- Improved Tagging: Better version tagging system for container deployments
- Automated Builds: CI/CD pipeline automatically builds and publishes images
- Enhanced Security: GHCR integration with GitHub's security scanning and access controls
📦 Updated Dependencies & Performance
- Latest WhatsApp Protocol: Updated whatsmeow library with latest features and fixes
- Better Reliability: Improved connection stability and message handling
- Enhanced Security: Latest protocol security improvements
- Bug Fixes: Resolved various edge cases in WhatsApp communication
- HTTP Performance: Updated fasthttp for better request handling performance
- Go Modules: All dependencies updated to latest stable versions for security and performance
🎯 What This Means for You
For Group Administrators
- Easy Link Sharing: Quickly get invite links for your groups without manual WhatsApp navigation
- Programmatic Access: Integrate invite link retrieval into your automation workflows
- Security First: Only administrators can access invite links, protecting your groups
- User-Friendly Interface: No technical knowledge required - simple web interface
For DevOps & System Administrators
- Container Deployment: Choose between Docker Hub or GitHub Container Registry
- Better CI/CD: More reliable automated deployments with improved tagging
- Enhanced Security: GHCR integration provides better access control and vulnerability scanning
- Future-Proof Infrastructure: Multi-registry support ensures deployment flexibility
For Developers & Integrators
- New API Capability: Build applications that can retrieve group invite links
- Consistent API Design: Query parameter approach follows established API patterns
- Complete Documentation: OpenAPI specs and examples for quick integration
- Reliable Dependencies: Updated libraries mean fewer bugs and better performance
For End Users
- Simplified Group Management: Get invite links without switching between applications
- Better Performance: Updated dependencies provide faster response times
- More Reliable Service: Improved WhatsApp protocol handling reduces connection issues
🛠️ New API Endpoint
Group Invite Link Retrieval
# Get invite link for a group (admin only)
GET /group/invite-link?group_id=120363402106XXXXX@g.us
# Response
{
"code": 200,
"message": "Success",
"results": {
"link": "https://chat.whatsapp.com/ABC123XYZ456DEF"
}
}
Authentication Required
- Must be logged in to WhatsApp Web
- Must be an administrator of the requested group
- Returns 403 Forbidden if not an admin
🐳 Container Registry Options
GitHub Container Registry (New!)
# Pull from GitHub Container Registry
docker pull ghcr.io/aldinokemal/go-whatsapp-web-multidevice:v7.5.0
docker pull ghcr.io/aldinokemal/go-whatsapp-web-multidevice:latest
Docker Hub (Existing)
# Still available on Docker Hub
docker pull aldinokemal2104/go-whatsapp-web-multidevice:v7.5.0
docker pull aldinokemal2104/go-whatsapp-web-multidevice:latest
📋 Usage Guide
Web Interface
- Navigate to your WhatsApp Web API dashboard
- Go to the "Groups" section
- Click "Get Invite Link"
- Enter the group ID (auto-corrected format)
- Click "Get Link" - the invite link will appear and can be copied
API Integration
// Example API call
const response = await fetch('/group/invite-link?group_id=' + encodeURIComponent(groupId), {
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
});
const data = await response.json();
if (data.code === 200) {
console.log('Invite link:', data.results.link);
}
Important Notes
✅ Security & Permissions
- Only group administrators can retrieve invite links
- Group ID validation prevents unauthorized access attempts
- All requests require valid WhatsApp Web session
✅ Backward Compatibility
- All existing functionality remains unchanged
- No breaking changes to existing APIs
- Existing Docker deployments continue to work
🔧 Recommended Actions
- Update containers to benefit from improved dependencies
- Consider using GHCR for enhanced security features
- Try the new group invite link functionality if you manage WhatsApp groups
- Update any automation to use the new API endpoint if needed
Summary
Version 7.5.0 introduces powerful group management capabilities with the new invite link API, while also enhancing the deployment and infrastructure experience. The ability to programmatically retrieve group invite links opens up new automation possibilities for group administrators, while the GitHub Container Registry support provides more deployment flexibility and security.
The updated dependencies, particularly the WhatsApp protocol library, ensure better reliability and performance. Whether you're managing a few groups or building large-scale WhatsApp integrations, this release provides the tools you need with the security and reliability you expect.
New Contributors
Full Changelog: v7.4.1...v7.5.0
v7.4.1
What's New in v7.4.1
🔧 Enhanced Code Quality & Security
- Type-Safe Environment Variables: Environment handling is now completely type-safe
- Compile-Time Safety: Configuration errors are caught during build instead of runtime
- Better Developer Experience: IDE auto-completion and error detection for environment variables
- Reduced Runtime Errors: No more surprises from misconfigured environment variables
- Cleaner Code: More maintainable and predictable configuration management
📝 Improved Documentation & User Experience
- Fixed Join Group Documentation: Corrected typos in group joining instructions
- Clearer Instructions: Users can now follow join group procedures without confusion
- Better API Documentation: More accurate examples and parameter descriptions
- Reduced Support Requests: Clear documentation means fewer user questions
🧪 Better Testing & Reliability
- Enhanced MarkAsRead Validation Tests: Improved test coverage for message reading functionality
- More Robust Testing: Better validation of read receipt handling
- Edge Case Coverage: Tests now handle more scenarios that could cause issues
- Improved Test Maintainability: Cleaner test code that's easier to understand and extend
🐛 Ghost Reply Issue Resolution
- Enhanced Ghost Reply Detection: Improved handling of phantom message replies
- Better Message Threading: More accurate detection of reply relationships
- Reduced False Positives: Fewer incorrectly identified ghost replies
- Improved User Experience: Cleaner conversation flow without phantom references
📦 Updated Dependencies & Security
- Latest Go Dependencies: Updated to the most recent versions for security and performance
- Security Patches: Latest fixes for any discovered vulnerabilities
- Performance Improvements: Faster execution and better memory usage
- Compatibility: Works with the latest Go toolchain and libraries
🎯 What This Means for You
For Developers & Contributors
- Easier Development: Type-safe environment variables prevent common configuration mistakes
- Better Code Quality: Enhanced testing means more reliable functionality
- Clearer Documentation: Fixed typos and improved examples make integration easier
For System Administrators
- More Reliable Deployments: Type-safe configuration reduces deployment errors
- Better Error Messages: Configuration issues are clearer and easier to debug
- Enhanced Security: Updated dependencies include the latest security fixes
For End Users
- Smoother Experience: Fixed ghost reply issues mean cleaner conversations
- Better Reliability: Improved testing means fewer unexpected behaviors
- Clearer Documentation: Fixed instructions make setup and usage easier
🛠️ Technical Improvements
Type-Safe Environment Variables
The application now uses compile-time type checking for all environment variables, preventing configuration errors before they reach production.
Enhanced Testing
- Improved validation test coverage
- Better edge case handling
- More maintainable test code
Ghost Reply Fixes
Enhanced detection and handling of phantom message replies that could disrupt conversation flow.
Important Notes
✅ No Breaking Changes
- All existing configurations continue to work
- No API changes or deprecated features
- Backward compatible with previous versions
🔧 Recommended Actions
- Update to benefit from improved security and reliability
- Review documentation for any setup procedures you use
- No configuration changes required
Summary
This maintenance release focuses on code quality, security, and reliability improvements. While there are no major new features, the enhanced type safety, improved testing, and bug fixes make the application more robust and easier to maintain. The documentation improvements also make it easier for new users to get started and for existing users to troubleshoot issues.
Full Changelog: v7.4.0...v7.4.1
v7.4.0
What's New in v7.4.0
🚀 Revolutionary Deployment Flexibility
- Subpath Deployment Support: You can now deploy the app on any path, not just the root!
- Works Behind Reverse Proxies: Perfect for deployments like
https://yoursite.com/whatsapp/
- Easy Configuration: Just set
APP_BASE_PATH=/your-path
or use--base-path
flag - Backward Compatible: Still works perfectly at root path (no changes needed for existing setups)
- All Assets Fixed: CSS, JavaScript, images, and API calls all work correctly with subpaths
- WebSocket Support: Even real-time features work properly with custom paths
- Works Behind Reverse Proxies: Perfect for deployments like
🎯 Smart Group Management Webhooks
- Group Participant Events: Get notified when people join, leave, or change roles in groups
- Join Events: Know when new members join or are added to groups
- Leave Events: Track when members leave or are removed from groups
- Admin Promotions: Get alerts when members are promoted to admin
- Admin Demotions: Monitor when admins are demoted to regular members
- Rich Event Data: Includes group ID, event type, affected user IDs, and timestamps
🔒 Enhanced Security & Reliability
- Better Webhook Security: Webhook URLs are no longer exposed in logs (prevents credential leaks)
- Improved Error Handling: Webhooks try all configured URLs instead of stopping at first failure
- Better HTTP Processing: Fixed issues with webhook delivery that could cause failures
- Unlimited Throughput: Removed rate limiting for maximum webhook delivery speed
- Context Management: Proper timeout and cancellation handling for all webhook operations
📦 Technical Improvements
- Updated Dependencies: Latest Go modules for better security and performance
- Cleaner Code Architecture: Better separation of concerns for webhook handling
- Enhanced Documentation: Comprehensive webhook examples and integration guides
- Resource Optimization: More efficient memory and network usage
🎯 What This Means for You
For DevOps & System Administrators
- Flexible Deployments: Deploy behind any reverse proxy (Traefik, NGINX, Apache) with custom paths
- Better Monitoring: Rich webhook events help you track group activities automatically
- Production Ready: Enhanced reliability and security for enterprise deployments
- Easy Migration: Existing setups work without any changes
For Developers & Integrators
- Group Event Automation: Build bots that respond to group membership changes
- Reliable Webhooks: Better delivery guarantees and error handling
- Rich Event Data: Detailed information about what happened and when
- Security Best Practices: No more sensitive data in logs
For End Users
- More Reliable Service: Better error handling means fewer disruptions
- Faster Performance: Optimized webhook processing doesn't slow down message handling
- Future-Proof: Your deployment can easily adapt to infrastructure changes
🛠️ New Configuration Options
Subpath Deployment
# Environment variable
APP_BASE_PATH=/whatsapp
# Command line flag
./whatsapp rest --base-path="/whatsapp"
# Works with any path
APP_BASE_PATH=/api/messaging/whatsapp
Webhook Events
Your webhook endpoint will now receive group events like this:
{
"event": "group.participants",
"payload": {
"chat_id": "120363402106XXXXX@g.us",
"type": "join",
"jids": ["6289685XXXXXX@s.whatsapp.net"]
},
"timestamp": "2025-08-03T10:30:00Z"
}
📋 Migration Guide
For Subpath Deployments
If you want to deploy on a custom path:
- Set
APP_BASE_PATH=/your-custom-path
in your environment - Update your reverse proxy config to forward to the new path
- That's it! Everything else works automatically
For Webhook Users
- Group events are automatically enabled if you have webhooks configured
- No changes needed to existing webhook endpoints
- New events will start arriving immediately after upgrade
Important Notes
✅ Fully Backward Compatible
- Existing deployments work without any changes
- All current webhook events continue to work
- No breaking changes to API or configuration
🔧 Production Tested
- Subpath deployment tested with real reverse proxy setups
- Webhook reliability improvements tested under high load
- Security enhancements verified to prevent credential exposure
Summary
This release is all about flexibility and reliability. The major highlight is subpath deployment support, which solves a common pain point for teams deploying behind reverse proxies. The group webhook events add powerful new automation capabilities, while security and reliability improvements make the whole system more robust.
Whether you're running a simple setup or a complex enterprise deployment, v7.4.0 adapts to your infrastructure needs while providing more insights into group activities.
Full Changelog: v7.3.1...v7.4.0
v7.3.1
What's New in v7.3.1
🛡️ Better Phone Number Checking
- Fixed Phone Number Format Issues: The app now properly checks if you're using the right phone number format
- No More Local Numbers: You can't use phone numbers that start with 0 anymore (like 08123456789)
- Use International Format: You must use international format (like 62123456789 for Indonesian numbers)
- Clear Error Messages: When you enter the wrong format, the app will tell you exactly what to fix
- Works Everywhere: This checking works for all types of messages - text, images, files, videos, contacts, and more
🔧 Bug Fixes
- Fixed App Crashes: Fixed a problem that could make the app crash when handling disappearing messages
- More Stable: The app is now more reliable and won't suddenly stop working
- Better Error Handling: When something goes wrong, the app handles it better instead of crashing
- Smoother Experience: You'll have fewer interruptions while using the app
📦 Updated Components
- Security Updates: Added the latest security improvements to keep your data safe
- Performance Improvements: The app runs faster and uses less memory
- Bug Fixes: Fixed various small issues that were reported by users
🎯 What This Means for You
- Easier to Use: Clear error messages help you fix phone number problems quickly
- More Reliable: The app crashes less and works more smoothly
- Better Security: Your messages and data are more secure
- Up-to-Date: Works with the latest WhatsApp features and improvements
Important Notes
If you were using phone numbers starting with 0 (like 08123456789), you need to change them to international format:
- ❌ Wrong: 08123456789
- ✅ Correct: 62123456789 (for Indonesian numbers)
- ✅ Correct: 1234567890 (for US numbers, no leading 0 anyway)
This change helps prevent message delivery problems and ensures your messages reach the right people.
Summary
This update makes the app more reliable and easier to use. The main improvements are better phone number checking (to prevent delivery issues) and fixes that make the app crash less often. We've also updated all the underlying components to the latest versions for better security and performance.
Full Changelog: v7.3.0...v7.3.1
v7.3.0
Changes
🚀 New Features
-
Enhanced Chat List & Messages UI: Complete UI overhaul with improved chat list and message components for better user experience
- Auto-Reply Improvements: Enhanced auto-reply functionality with better message handling and response management
- Advanced Chat Interface: Redesigned chat list interface with improved navigation and message display
- Message Component Enhancement: Upgraded message components with better styling and functionality
- Performance Optimizations: Improved loading times and responsiveness across chat interfaces
- Enhanced User Experience: Better visual feedback and interaction patterns throughout the chat UI
-
Large Groups Support: Comprehensive improvements for handling large WhatsApp groups
- Enhanced Group Performance: Optimized group message handling for groups with large member counts
- Memory Management: Improved memory usage when processing large group messages and member lists
- Better Stability: Enhanced stability and reliability when working with groups containing hundreds of members
- Optimized Loading: Faster group information retrieval and member list processing
-
WhatsApp Message Acknowledgment Events: Advanced message delivery status tracking
- Real-time ACK Events: Complete implementation of WhatsApp acknowledgment event handling
- Message Status Tracking: Enhanced tracking of message delivery, read, and acknowledgment statuses
- Event Broadcasting: Improved event system for real-time message status updates
- Webhook Integration: Enhanced webhook support for message acknowledgment events
- Status Indicators: Better visual indicators for message delivery and read status
🔧 Maintenance & Updates
- Issue #353 Resolution: Critical bug fixes and improvements for application stability
- Error Handling: Enhanced error handling and recovery mechanisms
- Performance Improvements: Optimized application performance and resource usage
- Stability Enhancements: Improved overall application stability and reliability
- Bug Fixes: Resolved multiple issues affecting user experience and functionality
📝 Files Changed
- UI Components: Major updates to chat list and message interface components
- Group Handling: Enhanced large group support with performance optimizations
- Event System: Improved acknowledgment event handling and status tracking
- Bug Fixes: Multiple stability and performance improvements
- Performance: Optimized memory usage and loading times for better user experience
🎯 Summary
- Enhanced User Interface: Complete overhaul of chat list and message components with improved auto-reply functionality
- Large Group Performance: Significant improvements for handling groups with large member counts
- Advanced Event Tracking: Comprehensive WhatsApp acknowledgment event support with real-time status updates
- Stability & Performance: Multiple bug fixes and optimizations for better overall application reliability
- Better User Experience: Improved visual feedback, loading times, and interaction patterns throughout the application
This release focuses on major UI improvements, enhanced support for large groups, advanced message acknowledgment tracking, and significant stability improvements. The enhanced chat interface provides better user experience while performance optimizations ensure reliable operation with large groups and high message volumes.
Contributors
🙏 Special Thanks to all contributors who made this release possible:
- @AlmogBaku - Thank you for the excellent work on large groups support and performance improvements!
- @cursor[bot] - Thank you for the automated contributions and bug fixes that helped improve stability!
Full Changelog: v7.2.1...v7.3.0
v7.2.1
Changes
🚀 New Features
- Enhanced Message Deletion with Webhook Integration: Complete message deletion handling with webhook notifications (3b3c82e)
- Updated handleDeleteForMe function with improved message retrieval and deletion capabilities
- Implemented forwardDeleteToWebhook function for real-time delete event notifications
- Added createDeletePayload function to structure delete event payloads with original message details
- Enhanced logging for better visibility during message deletion and webhook forwarding processes
- Improved webhook integration for delete operations with comprehensive event tracking
🔧 Maintenance & Updates
-
Major Chat Storage Refactoring: Complete architectural overhaul with domain-driven design principles (085f8fa)
- Domain-Driven Architecture Migration: Restructured chat storage system following clean architecture patterns
- Interface Abstraction: Moved models and interfaces from infrastructure to domain layer for better separation of concerns
- SQLite Repository Enhancement: Consolidated SQLite repository implementation with enhanced functionality and performance
- Code Cleanup: Removed unused interface methods (UpdateChatLastMessage, GetMessage, GetMediaInfo) and obsolete code
- Type Modernization: Replaced interface{} with any type alias throughout codebase for better readability
- Helper Methods: Added scanMessage, scanChat, getCount methods to reduce code duplication
- Dependency Injection: Updated all layers to use domain interfaces with proper abstraction
- Configuration Simplification: Removed CSV storage path references and streamlined configuration
- WhatsApp Client Management: Enhanced client management and removed obsolete remote logout handling
- Relogin & Webhook Fixes: Resolved critical issues with relogin functionality and webhook processing
-
JSON Serialization Enhancement: Improved data structure serialization capabilities (ab423b7)
- Added JSON tags to ExtractedMedia and EvtMessage structs for better API integration
- Enhanced clarity and usability of data structures for JSON API interactions
- Improved data serialization consistency across WhatsApp integration components
📝 Files Changed
- Major Refactoring: 20 files changed, 953 insertions(+), 1773 deletions(-)
- Architecture: Complete migration to domain-driven design with clean interfaces
- Enhanced: Message deletion handling with comprehensive webhook integration
- Improved: Chat storage architecture with better abstraction and performance
- Updated: WhatsApp integration with enhanced client management
- Simplified: Configuration and dependency management across all layers
- Optimized: Code structure with removal of unused methods and improved type safety
🎯 Summary
- Architectural Excellence: Complete migration to domain-driven design principles with clean architecture patterns
- Enhanced Reliability: Improved chat storage system with better abstraction and error handling
- Advanced Integration: Enhanced message deletion with comprehensive webhook notification system
- Code Quality: Major cleanup with removal of unused code and improved type safety
- Performance Optimization: Streamlined SQLite operations with consolidated repository implementation
- Better Maintainability: Simplified configuration and enhanced dependency injection across all layers
- Improved Stability: Fixed critical relogin and webhook processing issues
This release focuses on major architectural improvements with domain-driven design migration, enhanced message deletion capabilities with webhook integration, and significant code quality improvements. The refactoring provides better maintainability, performance, and reliability while fixing critical issues with relogin and webhook functionality.
Full Changelog: v7.2.0...v7.2.1
v7.2.0
Changes
🚀 New Features
-
Chat Storage Migration to SQLite: Complete migration from CSV to SQLite with enhanced WhatsApp integration (#333)
- Replaced CSV-based chat storage with robust SQLite database
- Enhanced WhatsApp chat integration with improved data persistence
- Better performance and reliability for chat data management
- Comprehensive database schema for chat storage optimization
- Enhanced chat data retrieval and management capabilities
-
Chat List API with SQLite Storage: Added comprehensive chat list functionality (#339)
- New chat list API endpoint with SQLite backend integration
- Enhanced chat data retrieval with improved query performance
- Better chat organization and management capabilities
- Optimized database operations for chat list functionality
- Complete chat history management with SQLite storage
-
Chat Pin/Unpin Functionality: Added chat pinning capabilities with UI component (#341)
- New chat pin/unpin API endpoints for better chat organization
- Complete ChatPinManager Vue.js component with intuitive interface
- Enhanced chat management with pin/unpin functionality
- Improved user experience for chat prioritization
- Full backend integration with WhatsApp pin/unpin operations
-
Message Read Status Management: Added UI component to mark messages as read (#337)
- New MessageRead Vue.js component with modal interface
- Enhanced message management with read status control
- Complete API integration for message read operations
- Improved user experience for message status handling
- Full backend support for message read functionality
-
Enhanced Group Information Features: Added comprehensive group info capabilities (#342, #343)
- Group Info for Domain Users: Implemented get group info functionality for domain user management
- Group Info from Invitation Links: Added ability to retrieve group information from invitation links
- Enhanced group management with comprehensive information retrieval
- Better group discovery and information access capabilities
- Complete group metadata management and access control
🔧 Maintenance & Updates
-
Logging Optimization: Reduced logging verbosity in ephemeral extraction (5fe12d2)
- Optimized WhatsApp ephemeral message extraction logging
- Reduced noise in application logs for better debugging
- Enhanced performance through reduced logging overhead
- Better log management and application monitoring
-
Image Optimization: Comprehensive image optimization across the project (#329, #344)
- Automated image optimization using ImgBot
- Reduced image file sizes for better performance
- Enhanced loading times and bandwidth optimization
- Improved overall application performance through optimized assets
-
Database Architecture: Major migration from CSV to SQLite for improved data management
- Enhanced data integrity and reliability
- Better query performance and data retrieval
- Improved scalability for chat storage operations
- Enhanced backup and recovery capabilities
📝 Files Changed
- Major database migration affecting multiple chat storage components
- New Components: Added ChatPinManager and MessageRead UI components
- Enhanced: Group management with comprehensive information retrieval
- Improved: Chat storage architecture with SQLite integration
- Added: Chat list API with enhanced functionality
- Updated: WhatsApp integration with improved chat management
- Optimized: Application logging and image assets
🎯 Summary
- Complete migration from CSV to SQLite for enhanced chat storage and performance
- Comprehensive chat management with pin/unpin functionality and enhanced UI
- Advanced message read status management with intuitive user interface
- Enhanced group information retrieval capabilities including invitation link support
- Improved application performance through optimized logging and image assets
- Better data integrity and reliability through SQLite database integration
- Enhanced user experience with new chat management features
This release focuses on major infrastructure improvements with the SQLite migration, enhanced chat management capabilities, and improved user experience through new UI components. The migration to SQLite provides better performance, reliability, and scalability for chat data management while new features enhance overall WhatsApp integration functionality.
Full Changelog: v7.1.0...v7.2.0
v7.1.0
Changes
🚀 New Features
-
WhatsApp Business Profile: Added comprehensive business profile endpoint for WhatsApp Business accounts (66d2449)
- New GET
/user/business-profile
endpoint to retrieve business profile information - Complete BusinessProfile request/response models with business data support
- Added AccountBusinessProfile Vue component for UI interaction
- Enhanced business hour time formatting utilities
- Updated API version to 6.6.0 with business profile support
- New GET
-
Chat Presence Typing Indicator: Added real-time typing indicator functionality (8de6fd5)
- New
/send/chat-presence
API endpoint with OpenAPI documentation - Support for both "start" and "stop" typing actions
- Complete frontend Vue.js component with modal interface
- Backend business logic with validation and WhatsApp integration
- Enhanced user experience with typing status notifications
- New
-
WebP Image Format Support: Added automatic WebP image conversion for message sending (32cce96)
- Automatic WebP image format detection and conversion to PNG
- Enhanced image processing with imaging library integration
- Improved filename extension handling for compatibility
- Better image format support for WhatsApp message sending
-
Auto-Mark Read Messages: Added configurable auto-read functionality for incoming messages (e49c31b)
- New
--auto-mark-read
command line flag for configuration - Environment variable
WHATSAPP_AUTO_MARK_READ
support - Implementation in message handler with default false behavior
- Maintains existing behavior while adding optional auto-read feature
- New
🔧 Maintenance & Updates
-
Architecture Refactoring: Major migration to global client pattern and interface segregation (2df6183)
- Replaced dependency injection with global client management pattern
- Segregated domain interfaces into focused, single-responsibility interfaces
- Added comprehensive session management and cleanup functionality
- Implemented remote logout detection and handling
- Added connection status endpoint for real-time client state monitoring
- Enhanced database and temporary file cleanup processes
- Updated all usecases to use centralized client access
-
API Documentation: Enhanced OpenAPI specification with new endpoints
- Added business profile endpoint documentation
- Updated chat presence typing indicator API docs
- Added 7 new API endpoints for user and group management
- Updated API version references and parameter descriptions
-
Dependencies: Updated whatsmeow dependency with business profile support
- Replaced whatsmeow with fork for enhanced business profile functionality
- Updated go.mod and go.sum with latest dependency versions
- Enhanced stability and performance with updated WhatsApp library
-
Documentation: Comprehensive README updates and gallery enhancements
- Added business profile gallery image with visual documentation
- Updated README with new API endpoints documentation
- Enhanced configuration documentation for auto-mark-read feature
- Updated badges and project information
📝 Files Changed
- 17 files changed (major refactoring)
- 520 additions, 257 deletions (architecture improvements)
- New Components: Added AccountBusinessProfile and SendChatPresence UI components
- Enhanced: Image processing with WebP format support
- Improved: Session management and client architecture
- Added: Business profile endpoint with complete functionality
- Updated: API documentation with 7 new endpoints
- Enhanced: Message handling with auto-read functionality
🎯 Summary
- Major architectural refactoring with global client pattern and interface segregation
- Business profile support for WhatsApp Business accounts with complete UI
- Real-time chat presence typing indicators for enhanced user experience
- WebP image format support with automatic PNG conversion
- Configurable auto-mark read functionality for incoming messages
- Enhanced API documentation with comprehensive endpoint coverage
- Improved session management and connection status monitoring
This release represents a significant architectural improvement with enhanced business account support, real-time features, and better image format handling. The major refactoring provides a more maintainable codebase while adding essential business features and improving user experience.
Full Changelog: v7.0.0...v7.1.0
v7.0.0
Changes
🚀 New Features
-
Video URL Support: Added capability to send video messages directly from URLs (#315)
- New
video_url
field in send video endpoint for remote video files - Enhanced video validation to accept either file upload or URL input
- Improved video download functionality with size limit validation and HTTP status checks
- Added comprehensive error handling for video URL processing
- Enhanced UI with video URL input field and explanatory text for upload alternatives
- New
-
Comprehensive Group Management: Complete group administration functionality (#319)
- New group management endpoints: set name, topic, photo, announce mode, and locked status
- Enhanced group participant management with add/remove capabilities
- Improved group creation and joining with link functionality
- Added group settings validation and error handling
- New UI components for all group management operations
- Enhanced group list display with admin identification
-
Enhanced Authentication: Improved logout process and QR auto-refresh functionality
- Automatic QR code refresh for better user experience
- Enhanced logout process with proper session cleanup
- Improved authentication flow reliability
- Better error handling during authentication states
🔧 Maintenance & Updates
-
Build System Migration: Migrated to GoReleaser for improved release management (#322)
- Replaced multiple GitHub Actions workflows with unified GoReleaser configuration
- Enhanced cross-platform build support (Linux, macOS, Windows)
- Improved release automation with checksums and multiple architectures
- Better asset naming and organization for releases
-
API Performance: Resolved send API duration issue (#316)
- Fixed timing issues in message sending operations
- Enhanced API response reliability and consistency
- Improved error handling and timeout management
- Better performance for bulk message operations
-
Test Coverage: Significantly enhanced test coverage for utils and validations
- Added comprehensive test suites for utility functions
- Enhanced validation testing with edge cases
- Improved code reliability and maintainability
- Added 480+ new test cases across multiple modules
-
Documentation & UI: Major improvements to README and user interface
- Added comprehensive gallery with 15 new screenshot images
- Enhanced README layout with improved formatting and navigation
- Updated UI color scheme and splash screen design
- Added project logo and improved visual branding
- Better user experience with enhanced form layouts
-
API Documentation: Updated OpenAPI specification with new endpoints
- Added group management endpoints documentation
- Enhanced API documentation for video URL functionality
- Improved parameter descriptions and examples
- Updated API version to v7.0.0
📝 Files Changed
- 79 files changed
- 3,986 additions, 479 deletions
- New Components: Added 5 new group management UI components
- Enhanced: Video and audio sending with URL support
- Improved: Authentication flow and session management
- Updated: Build system with GoReleaser migration
- Added: Comprehensive test coverage (480+ new tests)
- Enhanced: Documentation with gallery images and improved formatting
🎯 Summary
- Major feature: Video URL support for sending videos from remote URLs
- Complete group management functionality with admin controls
- Enhanced authentication with auto-refresh QR codes
- Migrated to GoReleaser for better release management
- Significantly improved test coverage and code reliability
- Enhanced documentation and user interface experience
This release represents a major milestone with comprehensive group management capabilities, video URL support, and significant improvements to the build system and documentation. The addition of extensive test coverage and UI enhancements makes this the most robust version yet.
Full Changelog: v6.2.0...v7.0.0