fix(inboxes): fix twilio webhook and finish setup edge cases

This commit is contained in:
Sojan Jose
2026-02-13 17:33:19 -08:00
parent 73420636bf
commit 537ea5a2a7
5 changed files with 46 additions and 17 deletions
@@ -129,6 +129,7 @@ describe('useInbox', () => {
});
expect(wrapper.vm.isATwilioChannel).toBe(true);
expect(wrapper.vm.isATwilioSMSChannel).toBe(true);
expect(wrapper.vm.isASmsInbox).toBe(true);
expect(wrapper.vm.isAWhatsAppChannel).toBe(false);
});
@@ -264,6 +265,7 @@ describe('useInbox', () => {
'isASmsInbox',
'isATelegramChannel',
'isATwilioChannel',
'isATwilioSMSChannel',
'isAWebWidgetInbox',
'isAWhatsAppChannel',
'isAMicrosoftInbox',
@@ -146,6 +146,7 @@ export const useInbox = (inboxId = null) => {
isASmsInbox,
isATelegramChannel,
isATwilioChannel,
isATwilioSMSChannel,
isAWebWidgetInbox,
isAWhatsAppChannel,
isAMicrosoftInbox,
@@ -33,7 +33,6 @@ const {
isASmsInbox,
isALineChannel,
isAnEmailChannel,
isAWhatsAppChannel,
isAFacebookInbox,
isATelegramChannel,
isATwilioWhatsAppChannel,
@@ -57,13 +56,6 @@ const shouldShowWhatsAppWebhookDetails = computed(() => {
);
});
const isWhatsAppEmbeddedSignup = computed(() => {
return (
isAWhatsAppCloudChannel.value &&
currentInbox.value.provider_config?.source === 'embedded_signup'
);
});
const isTwilioSmsInbox = computed(() => {
const phoneNumber = currentInbox.value?.phone_number;
const callbackUrl = currentInbox.value?.callback_webhook_url;
@@ -120,12 +112,6 @@ const message = computed(() => {
return t('INBOX_MGMT.FINISH.WEBSITE_SUCCESS');
}
if (isWhatsAppEmbeddedSignup.value) {
return `${t('INBOX_MGMT.FINISH.MESSAGE')}. ${t(
'INBOX_MGMT.FINISH.WHATSAPP_QR_INSTRUCTION'
)}`;
}
return t('INBOX_MGMT.FINISH.MESSAGE');
});
@@ -157,7 +143,7 @@ async function generateQRCode(platform, identifier) {
async function generateQRCodes() {
if (!currentInbox.value) return;
// WhatsApp (both Cloud and Twilio)
// WhatsApp
if (currentInbox.value.phone_number && isTwilioWhatsAppChannel.value) {
// For Twilio WhatsApp, phone_number format is "whatsapp:+1234567890"
// Extract just the phone number part for QR code generation
@@ -281,7 +267,7 @@ onMounted(() => {
:inbox-id="$route.params.inbox_id"
/>
<div
v-if="isAWhatsAppChannel && qrCodes.whatsapp"
v-if="isTwilioWhatsAppChannel && qrCodes.whatsapp"
class="flex flex-col gap-3 items-center mt-8"
>
<p class="mt-2 text-sm text-n-slate-9">