Gabriel Jablonski
fb6fec167b
chore: general improvements ( #204 )
...
* chore: update scheduled messages author association to nullable and adjust related specs
* chore: update sender handling for WhatsApp messages and add external sender name
2026-02-01 14:25:06 -03:00
Gabriel Jablonski
0de6001b97
feat: add message editing functionality with UI support ( #195 )
...
* feat: add message editing functionality with UI support
* feat: enhance message editing with content length validation and context menu adjustments
2026-01-24 23:25:11 -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
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
Gabriel Jablonski
4fc80ba4ee
feat(zapi): Z-API integration ( #115 )
...
* feat(zapi): connect flow and UI updates
* fix(zapi): re-add manage connection section
* feat(zapi): reply
* feat: send message
* fix: qrcode job logic
* test: qr code job specs
* chore: concurrent index
* chore: whatsapp model minor
* test: message window service specs
* chore: service refactor
* test: zapi service
* chore: zapi beta
* chore: minor fixes
* test: incoming message specs
* chore: minor fixes
* feat: handle status transitions
* test: refactor spec
* test: refactor spec
* chore(z-api): use feature flag
* chore: fix migration name
2025-10-15 16:23:04 -03:00