* fix: normalize lid addresses
* fix: parse lid properly in groups
* fix: swapped params
* fix: reuse ctx and better error handling
* fix: tags lid mapping
commit 9a21f32d73
Author: Aldino Kemal <aldinokemal2104@gmail.com>
Date: Sun May 25 10:32:50 2025 +0700
feat: add image sending functionality to WhatsApp MCP server
- Introduced a new tool for sending images to WhatsApp contacts or groups.
- Implemented handler functions to process image sending requests, including parameters for phone number, image URL, caption, and additional options.
- Enhanced the MCP server capabilities with image handling features.
commit 936069e068
Author: Aldino Kemal <aldinokemal2104@gmail.com>
Date: Sat May 24 18:47:36 2025 +0700
fix: update Send Poll image URL in README to include versioning for cache busting
commit 409742dfec
Author: Aldino Kemal <aldinokemal2104@gmail.com>
Date: Sat May 24 18:45:54 2025 +0700
refactor: reorganize HTTP REST API section in README for clarity
commit df1889ad5b
Author: Aldino Kemal <aldinokemal2104@gmail.com>
Date: Sat May 24 18:42:09 2025 +0700
docs: enhance README with additional MCP UI details and formatting improvements
commit 74b97f2dd6
Author: Aldino Kemal <aldinokemal2104@gmail.com>
Date: Sat May 24 18:31:44 2025 +0700
feat: update README to clarify download instructions and add command for service
commit c24991ddf0
Author: Aldino Kemal <aldinokemal2104@gmail.com>
Date: Sat May 24 18:29:01 2025 +0700
feat: enhance README with MCP server details and configuration
commit 8ef03eb1e4
Author: Aldino Kemal <aldinokemal2104@gmail.com>
Date: Sat May 24 18:03:41 2025 +0700
feat: enhance MCP server with new WhatsApp tools
- Added new tools for sending messages, contacts, links, and locations via WhatsApp.
- Updated the project structure documentation to include the new MCP server directory.
- Implemented corresponding handler functions for each new tool to process requests and return results.
commit dad99583e9
Author: Aldino Kemal <aldinokemal2104@gmail.com>
Date: Sat May 24 16:01:50 2025 +0700
feat: implement WhatsApp MCP server with SSE support
- Added a new command to start the WhatsApp MCP server using Server-Sent Events (SSE).
- Introduced configuration options for MCP server host and port.
- Implemented message sending functionality through the MCP server.
- Updated application version to v6.0.0.
- Added new dependencies for MCP server functionality in go.mod and go.sum.
commit efcdcec087
Author: Aldino Kemal <aldinokemal2104@gmail.com>
Date: Sat May 24 11:05:58 2025 +0700
feat: restructure folder
* fix: update deps & bug fix
fix(go.mod): update module dependencies to latest versions to ensure compatibility and security
fix(whatsapp.go): enhance event message handling by adding quoted message field and streamline message building and media extraction functions
* fix: make webhook call async and add retry mechanism
fix(init.go): wrap forwardToWebhook call in a goroutine to make it async
feat(webhook.go): add timestamp field to the webhook payload
fix(webhook.go): implement retry logic for submitWebhook with exponential backoff
* feat: update version
* feat: add max download size validation for media files
- settings.go: add WhatsappSettingMaxDownloadSize for file size
validation (500MB)
- utils.go: check file size before writing media to disk, returning
an error if it exceeds the max limit
* fix: improve error handling and logging
fix(utils.go): replace panic with logrus error logging and return false
fix(webhook.go): add logrus error logging when media download fails
fix(webhook.go): add logrus info and warning logging for webhook submission attempts
* fix: add omitempty tags to JSON fields to avoid empty values
refactor(webhook.go): restructure createPayload to check and add fields conditionally, improving clarity and preventing unnecessary fields
refactor(webhook.go): handle media extraction only when media is present, improving readability and maintainability
* fix: add nil check for device in whatsapp init
fix(init.go): add check for nil device and log error before panic
Ensure proper error handling when no device is found