iachat/app/services/whatsapp/zapi_handlers/delivery_callback.rb
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

18 lines
574 B
Ruby

module Whatsapp::ZapiHandlers::DeliveryCallback
include Whatsapp::ZapiHandlers::Helpers
private
def process_delivery_callback
message = inbox.messages.find_by(source_id: processed_params[:messageId])
return unless message
external_created_at = processed_params[:momment] / 1000
if processed_params[:error].present?
message.update!(status: :failed, external_error: processed_params[:error], external_created_at: external_created_at)
else
message.update!(status: :delivered, external_created_at: external_created_at)
end
end
end