From fc4ef1595bbe9a2a41b1d7c4ca28d6fe12ac3e66 Mon Sep 17 00:00:00 2001 From: Siddharth Ramesh Date: Mon, 12 Jul 2021 22:33:39 +0530 Subject: [PATCH] chore: Twilio to individual(SMS/Whatsapp) channels (#2566) --- .../dashboard/assets/images/channels/sms.png | Bin 0 -> 14570 bytes .../components/widgets/ChannelItem.vue | 10 +- .../dashboard/i18n/locale/en/inboxMgmt.json | 8 + .../dashboard/settings/inbox/ChannelList.vue | 3 +- .../settings/inbox/channel-factory.js | 6 +- .../dashboard/settings/inbox/channels/Sms.vue | 21 +++ .../settings/inbox/channels/Twilio.vue | 164 ++++++++---------- .../settings/inbox/channels/Whatsapp.vue | 22 +++ 8 files changed, 138 insertions(+), 96 deletions(-) create mode 100644 app/javascript/dashboard/assets/images/channels/sms.png create mode 100644 app/javascript/dashboard/routes/dashboard/settings/inbox/channels/Sms.vue create mode 100644 app/javascript/dashboard/routes/dashboard/settings/inbox/channels/Whatsapp.vue diff --git a/app/javascript/dashboard/assets/images/channels/sms.png b/app/javascript/dashboard/assets/images/channels/sms.png new file mode 100644 index 0000000000000000000000000000000000000000..a8cfa6428a2791998548f504e43fd2e9c08e43e4 GIT binary patch literal 14570 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 literal 0 HcmV?d00001 diff --git a/app/javascript/dashboard/components/widgets/ChannelItem.vue b/app/javascript/dashboard/components/widgets/ChannelItem.vue index 37b82436e..8e9f1455e 100644 --- a/app/javascript/dashboard/components/widgets/ChannelItem.vue +++ b/app/javascript/dashboard/components/widgets/ChannelItem.vue @@ -37,8 +37,12 @@ src="~dashboard/assets/images/channels/website.png" /> +

{{ channel.name }} @@ -72,7 +76,7 @@ export default { if (key === 'email') { return this.enabledFeatures.channel_email; } - return ['website', 'twilio', 'api'].includes(key); + return ['website', 'twilio', 'api', 'whatsapp', 'sms'].includes(key); }, }, methods: { diff --git a/app/javascript/dashboard/i18n/locale/en/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/en/inboxMgmt.json index 24463aac8..74203a4bb 100644 --- a/app/javascript/dashboard/i18n/locale/en/inboxMgmt.json +++ b/app/javascript/dashboard/i18n/locale/en/inboxMgmt.json @@ -126,6 +126,14 @@ "API": { "ERROR_MESSAGE": "We were not able to authenticate Twilio credentials, please try again" } + }, + "SMS": { + "TITLE": "SMS Channel via Twilio", + "DESC": "Start supporting your customers via SMS with Twilio integration." + }, + "WHATSAPP": { + "TITLE": "Whatsapp Channel via Twilio", + "DESC": "Start supporting your customers via Whatsapp with Twilio integration." }, "API_CHANNEL": { "TITLE": "API Channel", diff --git a/app/javascript/dashboard/routes/dashboard/settings/inbox/ChannelList.vue b/app/javascript/dashboard/routes/dashboard/settings/inbox/ChannelList.vue index ce19b918e..0ee3b8f03 100644 --- a/app/javascript/dashboard/routes/dashboard/settings/inbox/ChannelList.vue +++ b/app/javascript/dashboard/routes/dashboard/settings/inbox/ChannelList.vue @@ -42,7 +42,8 @@ export default { { key: 'website', name: 'Website' }, { key: 'facebook', name: 'Facebook' }, { key: 'twitter', name: 'Twitter' }, - { key: 'twilio', name: 'Twilio' }, + { key: 'whatsapp', name: 'WhatsApp via Twilio' }, + { key: 'sms', name: 'SMS via Twilio' }, { key: 'email', name: 'Email' }, { key: 'api', diff --git a/app/javascript/dashboard/routes/dashboard/settings/inbox/channel-factory.js b/app/javascript/dashboard/routes/dashboard/settings/inbox/channel-factory.js index 47c4e4e6e..0cf37f148 100644 --- a/app/javascript/dashboard/routes/dashboard/settings/inbox/channel-factory.js +++ b/app/javascript/dashboard/routes/dashboard/settings/inbox/channel-factory.js @@ -1,17 +1,19 @@ import Facebook from './channels/Facebook'; import Website from './channels/Website'; import Twitter from './channels/Twitter'; -import Twilio from './channels/Twilio'; import Api from './channels/Api'; import Email from './channels/Email'; +import Sms from './channels/Sms'; +import Whatsapp from './channels/Whatsapp'; const channelViewList = { facebook: Facebook, website: Website, twitter: Twitter, - twilio: Twilio, api: Api, email: Email, + sms: Sms, + whatsapp: Whatsapp, }; export default { diff --git a/app/javascript/dashboard/routes/dashboard/settings/inbox/channels/Sms.vue b/app/javascript/dashboard/routes/dashboard/settings/inbox/channels/Sms.vue new file mode 100644 index 000000000..5b5c9f09c --- /dev/null +++ b/app/javascript/dashboard/routes/dashboard/settings/inbox/channels/Sms.vue @@ -0,0 +1,21 @@ + + + diff --git a/app/javascript/dashboard/routes/dashboard/settings/inbox/channels/Twilio.vue b/app/javascript/dashboard/routes/dashboard/settings/inbox/channels/Twilio.vue index e6d4056c1..28d132ab0 100644 --- a/app/javascript/dashboard/routes/dashboard/settings/inbox/channels/Twilio.vue +++ b/app/javascript/dashboard/routes/dashboard/settings/inbox/channels/Twilio.vue @@ -1,90 +1,72 @@ +