Restructure omni services and add Chatwoot research snapshot

This commit is contained in:
Ruslan Bakiev
2026-02-21 11:11:27 +07:00
parent edea7a0034
commit b73babbbf6
7732 changed files with 978203 additions and 32 deletions

View File

@@ -0,0 +1,23 @@
# frozen_string_literal: true
FactoryBot.define do
factory :contact_inbox do
contact
inbox
after(:build) { |contact_inbox| contact_inbox.source_id ||= generate_source_id(contact_inbox) }
end
end
def generate_source_id(contact_inbox)
case contact_inbox.inbox.channel_type
when 'Channel::TwilioSms'
contact_inbox.inbox.channel.medium == 'sms' ? Faker::PhoneNumber.cell_phone_in_e164 : "whatsapp:#{Faker::PhoneNumber.cell_phone_in_e164}"
when 'Channel::Email'
"#{SecureRandom.uuid}@acme.inc"
when 'Channel::Whatsapp'
Faker::PhoneNumber.cell_phone_in_e164.delete('+')
else
SecureRandom.uuid
end
end