fix: Add delay to instagram/messenger echo events to prevent duplicate messages (#12032)

- Add 2-second delay to Facebook Messenger echo event processing to
prevent race condition
- Add 2-second delay to Instagram echo event processing for consistency
- Prevent duplicate messages when echo events arrive before send message
API completes processing

---------

Co-authored-by: Sojan Jose <sojan@pepalo.com>
This commit is contained in:
Muhsin Keloth
2025-07-24 21:11:02 +04:00
committed by GitHub
parent 8262123481
commit 87313ecc35
3 changed files with 39 additions and 2 deletions

View File

@@ -39,6 +39,8 @@ Rails.application.reloader.to_prepare do
end
Facebook::Messenger::Bot.on :message_echo do |message|
Webhooks::FacebookEventsJob.perform_later(message.to_json)
# Add delay to prevent race condition where echo arrives before send message API completes
# This avoids duplicate messages when echo comes early during API processing
Webhooks::FacebookEventsJob.set(wait: 2.seconds).perform_later(message.to_json)
end
end