chatwoot/app/javascript/dashboard/components-next/message
Muhsin Keloth b686d14044
feat: Handle external echo messages from native apps (#13371)
When businesses use WhatsApp Business App (co-existence mode) or
Instagram App or TikTok alongside Chatwoot, messages sent from the
native apps were not synced properly back to Chatwoot. This left agents
with an incomplete conversation history and no visibility into responses
sent outside the dashboard. Additionally, if these echo messages did
arrive, they appeared as "Sent by: Bot" in the UI since they had no
sender, making it confusing for agents.

This PR subscribes to WhatsApp `smb_message_echoes` webhook events and
routes them through the existing service with an `outgoing_echo` flag,
mirroring how Instagram already handles echoes. On the Instagram side,
echo messages now also carry the `external_echo` content attribute and
`delivered` status.

On the frontend, messages with `externalEcho` are distinguished from bot
messages showing a "Native app" avatar and an advisory note encouraging
agents to reply from Chatwoot to maintain the service window.

<img width="1518" height="524" alt="CleanShot 2026-01-29 at 13 37 57@2x"
src="https://github.com/user-attachments/assets/5aa0b552-6382-441f-96aa-9a62ca716e4a"
/>


Fixes
https://linear.app/chatwoot/issue/CW-4204/display-messages-not-sent-from-chatwoot-in-case-of-outgoing-echo
Fixes
https://linear.app/chatwoot/issue/PLA-33/incoming-from-me-messages-from-whatsapp-business-app-are-not-falling
2026-02-02 15:52:53 +05:30
..
bubbles fix: Formatting issue with reply preview content (#13399) 2026-01-30 16:35:32 +05:30
chips feat: Advanced Search Backend (#12917) 2026-01-07 15:30:49 +05:30
fixtures feat: Add new message bubbles (#10481) 2024-12-12 17:42:22 -08:00
stories feat: Template types components (#12714) 2025-10-29 17:06:32 +05:30
constants.js feat: Display story replies with attachment and context label (#13356) 2026-01-28 16:47:04 +04:00
Message.vue feat: Handle external echo messages from native apps (#13371) 2026-02-02 15:52:53 +05:30
MessageError.vue feat: Retry failed messages within 24h (#12436) 2025-09-16 21:00:15 +05:30
MessageList.vue chore: Update theme colors and add new Inter variable fonts (#13347) 2026-01-28 14:36:04 -08:00
MessageMeta.vue feat: TikTok channel (#12741) 2025-12-17 07:54:50 -08:00
MessageStatus.vue feat: Add new message bubbles (#10481) 2024-12-12 17:42:22 -08:00
provider.js chore: Update message bubble orientation (#11348) 2025-05-06 13:21:52 +05:30
TranslationToggle.vue chore: Improve translation service with HTML and plain text support (#11305) 2025-04-16 17:59:06 +05:30