gabrieljablonski
e84875ca04
test: update outgoing message spec to reflect nil sender from WhatsApp
2026-02-01 14:48:59 -03:00
Gabriel Jablonski
b1aaf58097
fix(whatsapp): update conversation lookup to handle multiple contact inboxes in single conversation mode ( #197 )
...
* fix(whatsapp): update conversation lookup to handle multiple contact inboxes in single conversation mode
* fix(whatsapp): update conversation retrieval logic to ensure correct conversation is reopened
2026-01-25 19:51:56 -03:00
Gabriel Jablonski
ec8366aabd
fix(whatsapp): fix conversation duplication on race condition ( #193 )
...
* fix(whatsapp): update message source ID handling and improve Redis key formatting
* fix(whatsapp): prevent updating contact_inbox on identifier conflict
* fix(whatsapp): refactor conversation routing tests to use shared examples for better clarity and maintainability
2026-01-24 18:13:35 -03:00
Gabriel Jablonski
f54d113571
fix: whatsapp race condition ( #185 )
...
* feat: include external created at in whatsapp cloud message
* fix: whatsapp providers race condition
* refactor: remove redundant comments and streamline message processing lock acquisition
* fix: scope message source key by inbox.id to prevent race condition
* fix: scope message source key by inbox.id to prevent race condition
2026-01-15 22:16:32 -03:00
Gabriel Jablonski
14f43a6bc5
fix(zapi): contact race condition ( #149 )
2025-11-19 14:43:34 -03:00
Gabriel Jablonski
c041090675
feat(baileys): upgrade to v7 ( #143 )
...
* feat(baileys): upgrade to v7 (#139 )
* feat(baileys): v7
* chore(zapi): match baileys changes
* test: fix send on whatsapp spec
* chore: simplify logic and minor fixes
* fix: ensure contact avatar updates when profile picture changes
* chore: add beta release workflow
* feat: enhance contact update logic to handle conflicts in inbox updates (#140 )
* feat: update GitHub Actions workflow to trigger on release events and adjust GIT_REF handling
* fix: prevent unique constraint error when LID contact inbox already exists (#141 )
* fix: prevent unique constraint error when LID contact inbox already exists
* feat(baileys): handle ephemeral messages
2025-11-13 20:42:08 -03:00
Gabriel Jablonski
63a2c70667
fix(zapi): first connection issues, and merge existing contact on received message ( #138 )
...
* fix(zapi): pairing issues on first connection
* fix(zapi): handle existing contact when receiving new message
* refactor: simplify logic
2025-11-06 23:41:58 -03:00
Gabriel Jablonski
c234023a4a
feat(zapi): handle contact messages and ignore notifications ( #124 )
...
* chore: skip notification messages
* feat: contact card messages
* fix: notification message handling
* chore: reduce code duplication
* fix: improve contact name handling in attachment
* chore(zapi): promo banner with affiliate link (#126 )
* chore(zapi): promo banner with affiliate link
* chore: remove useless comment
* chore(zapi): add note about hardcoded affiliate link
* feat: provider.event_received for raw provider events (#127 )
* chore(zapi): promo banner with affiliate link
* chore: remove useless comment
* feat: provider.event_received for raw provider events
* feat: add provider_event_received handling in webhook listener
* feat(baileys): use senderLid as contact identifier (#128 )
* chore(zapi): promo banner with affiliate link
* chore: remove useless comment
* feat: provider.event_received for raw provider events
* feat(baileys): use senderLid as contact identifier
* fix: simplify webhook_data method by removing unnecessary fields
2025-10-26 10:48:06 -03:00
Gabriel Jablonski
8ff5834ee8
fix(zapi): support for LID-only conversations ( #123 )
...
* fix: ignore action events
* feat(zapi): allow updating instance ID
* feat: handle `chatLid` field
* test: break down handler specs into separate files
* feat: update send_message method to use recipient_id logic for zapi provider
* fix: use identifier instead of source_id for zapi
* test: fix specs
* feat: prioritize senderName over chatName for contact naming in received callback
2025-10-23 10:12:38 -03:00