beem-component 2.1.29 → 2.1.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Dockerfile +1 -1
- package/Jenkinsfile +20 -5
- package/dist/assets/voiceCallIcon.svg +5 -0
- package/dist/components/Alert/Alert.js +83 -0
- package/dist/components/Alert/Alert.stories.js +66 -0
- package/dist/components/BmCustomCardTitle/CustomCardTitle.js +181 -0
- package/dist/components/BmCustomCardTitle/CustomCardTitle.stories.js +92 -0
- package/dist/components/BmSelector/BmSelector.js +15 -2
- package/dist/components/BmSelector/BmSelector.stories.js +14 -1
- package/dist/components/BmTabv2/BmTabv2.js +51 -0
- package/dist/components/BmTabv2/BmTabv2.stories.js +73 -0
- package/dist/components/Card_v2/Card.js +38 -12
- package/dist/components/ChatComponents/ChatBody/chatBody.js +404 -104
- package/dist/components/DepartmentCard/DepartmentCard.js +99 -0
- package/dist/components/DepartmentCard/DepartmentCard.stories.js +53 -0
- package/dist/components/HorizontalCard/HorizontalCard.js +142 -0
- package/dist/components/HorizontalCard/HorizontalCard.stories.js +40 -0
- package/dist/components/InfoPanel/InfoPanel.js +54 -17
- package/dist/components/InfoPanel/InfoPanel.stories.js +56 -4
- package/dist/components/Modals/modal.js +26 -10
- package/dist/components/Modals/modals.stories.js +13 -6
- package/dist/components/ProfileIcon/ProfileIcon.js +5 -0
- package/dist/components/ResourceCard/ResourceCard.js +132 -0
- package/dist/components/ResourceCard/ResourceCard.stories.js +94 -0
- package/dist/components/globalStyles.js +1 -1
- package/dist/components/index.js +42 -0
- package/dist/components/text.js +11 -10
- package/dist/components/typography.js +3 -2
- package/package.json +2 -1
- package/public/index.html +1 -0
- package/src/App.js +805 -1412
- package/src/fonts/Inter-Black.woff2 +0 -0
- package/src/fonts/Inter-Bold.woff2 +0 -0
- package/src/fonts/Inter-ExtraBold.woff2 +0 -0
- package/src/fonts/Inter-ExtraLight.woff2 +0 -0
- package/src/fonts/Inter-Light.woff2 +0 -0
- package/src/fonts/Inter-Medium.woff2 +0 -0
- package/src/fonts/Inter-Regular.woff2 +0 -0
- package/src/fonts/Inter-SemiBold.woff2 +0 -0
- package/src/fonts/Inter-Thin.woff2 +0 -0
- package/src/fonts/Inter-VariableFont_opsz,wght.ttf +0 -0
- package/src/fonts/InterDisplay-Black.woff2 +0 -0
- package/src/fonts/InterDisplay-Bold.woff2 +0 -0
- package/src/fonts/InterDisplay-ExtraBold.woff2 +0 -0
- package/src/fonts/InterDisplay-ExtraLight.woff2 +0 -0
- package/src/fonts/InterDisplay-Light.woff2 +0 -0
- package/src/fonts/InterDisplay-Medium.woff2 +0 -0
- package/src/fonts/InterDisplay-SemiBold.woff2 +0 -0
- package/src/fonts/InterDisplay-Thin.woff2 +0 -0
- package/src/fonts.scss +4 -1
- package/src/lib/assets/voiceCallIcon.svg +5 -0
- package/src/lib/components/Alert/Alert.js +111 -0
- package/src/lib/components/Alert/Alert.stories.jsx +66 -0
- package/src/lib/components/BmCustomCardTitle/CustomCardTitle.js +162 -0
- package/src/lib/components/BmCustomCardTitle/CustomCardTitle.stories.jsx +92 -0
- package/src/lib/components/BmSelector/BmSelector.js +14 -1
- package/src/lib/components/BmSelector/BmSelector.stories.jsx +10 -0
- package/src/lib/components/BmTabv2/BmTabv2.js +109 -0
- package/src/lib/components/BmTabv2/BmTabv2.stories.jsx +51 -0
- package/src/lib/components/Card_v2/Card.js +46 -13
- package/src/lib/components/ChatComponents/ChatBody/chatBody.js +553 -57
- package/src/lib/components/DepartmentCard/DepartmentCard.js +130 -0
- package/src/lib/components/DepartmentCard/DepartmentCard.stories.jsx +38 -0
- package/src/lib/components/HorizontalCard/HorizontalCard.js +276 -0
- package/src/lib/components/HorizontalCard/HorizontalCard.stories.jsx +33 -0
- package/src/lib/components/InfoPanel/InfoPanel.js +35 -11
- package/src/lib/components/InfoPanel/InfoPanel.stories.jsx +42 -2
- package/src/lib/components/Modals/modal.js +17 -4
- package/src/lib/components/Modals/modals.stories.js +10 -6
- package/src/lib/components/ProfileIcon/ProfileIcon.js +4 -0
- package/src/lib/components/ResourceCard/ResourceCard.js +213 -0
- package/src/lib/components/ResourceCard/ResourceCard.stories.jsx +68 -0
- package/src/lib/components/globalStyles.js +2 -1
- package/src/lib/components/index.js +13 -0
- package/src/lib/components/text.js +17 -11
- package/src/lib/components/typography.js +1 -0
package/src/App.js
CHANGED
|
@@ -1,39 +1,31 @@
|
|
|
1
1
|
/* eslint-disable jsx-a11y/control-has-associated-label */
|
|
2
2
|
// * eslint-disable func-style *
|
|
3
3
|
/* eslint-disable jsx-a11y/media-has-caption */
|
|
4
|
-
import React
|
|
4
|
+
import React from 'react';
|
|
5
5
|
// import AbcIcon from '@mui/icons-material/Abc';
|
|
6
6
|
// import LocalOfferOutlinedIcon from '@mui/icons-material/LocalOfferOutlined';
|
|
7
|
-
import CalendarTodayIcon from '@mui/icons-material/CalendarToday';
|
|
8
|
-
import AccessTimeIcon from '@mui/icons-material/AccessTime';
|
|
9
|
-
// import PersonIcon from '@mui/icons-material/
|
|
7
|
+
// import CalendarTodayIcon from '@mui/icons-material/CalendarToday';
|
|
8
|
+
// import AccessTimeIcon from '@mui/icons-material/AccessTime';
|
|
9
|
+
// import PersonIcon from '@mui/icons-material/Per
|
|
10
|
+
// import BusinessIcon from '@mui/icons-material/Business';
|
|
11
|
+
|
|
12
|
+
// import CheckIcon from '@mui/icons-material/Check';
|
|
13
|
+
// import EditIcon from '@mui/icons-material/Edit';
|
|
14
|
+
// import DeleteIcon from '@mui/icons-material/Delete';
|
|
15
|
+
// import CalendarTodayIcon from '@mui/icons-material/CalendarToday';
|
|
10
16
|
// import { Tooltip } from '@mui/material';
|
|
11
|
-
import PeopleIcon from '@mui/icons-material/People';
|
|
12
|
-
import BusinessIcon from '@mui/icons-material/Business';
|
|
17
|
+
// import PeopleIcon from '@mui/icons-material/People';
|
|
18
|
+
// import BusinessIcon from '@mui/icons-material/Business';
|
|
13
19
|
|
|
14
20
|
import {
|
|
15
21
|
BmChat,
|
|
16
22
|
GlobalStyle,
|
|
17
|
-
BmTag,
|
|
18
|
-
BmChatAccordion,
|
|
19
|
-
BmAccordion,
|
|
20
|
-
BmChatForm,
|
|
21
|
-
// BmButton,
|
|
22
|
-
// BmButtonDropDown,
|
|
23
|
-
// BmBtnIcon,
|
|
24
|
-
BmContactCard,
|
|
25
|
-
// BmModal,
|
|
26
|
-
// BmContactCheckbox,
|
|
27
|
-
// BmCounter,
|
|
28
|
-
// BmProfileIcon,
|
|
29
|
-
BmProgressIndicator,
|
|
30
|
-
BmLabelWithIcon,
|
|
31
23
|
BmCardv2,
|
|
32
|
-
BmInfoPanel,
|
|
33
24
|
BmButton,
|
|
34
|
-
|
|
35
|
-
BmSelector,
|
|
25
|
+
BmProfileIcon,
|
|
36
26
|
} from './lib/components';
|
|
27
|
+
// import AlertBox from './lib/components/Alert/Alert';
|
|
28
|
+
|
|
37
29
|
// import ProgressIndicator from './lib/components/newProgress';
|
|
38
30
|
|
|
39
31
|
// const datsa = JSON.stringify({
|
|
@@ -54,43 +46,22 @@ import {
|
|
|
54
46
|
// },
|
|
55
47
|
// });
|
|
56
48
|
// console.log(datsa);
|
|
49
|
+
|
|
57
50
|
const Chat = () => {
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
// '{"dotgoV2":{"type":"quick_reply","content":{"type":"text","header":"","text":"We value your opinion! Would you be willing to take a short survey to help us improve?","caption":""},"options":[{"type":"text","title":"Give Feedback","postbackText":"bm-feedback|0|181661e8-9209-4665-ad19-680981136ae8"},{"type":"text","title":"No Thank you","postbackText":"dev-defined-postback2"}]}}',
|
|
62
|
-
'{"dotgoV2":{"type":"order","catalog":{"id":"3987644271555185","order":{"items":[{"id":"107","currency":"TZS","amount":"8000","quantity":"1"},{"id":"109","currency":"TZS","amount":"12000","quantity":"1"},{"id":"111","currency":"TZS","amount":"7000","quantity":"1"}]}},"forwarded":false,"frequently_forwarded":false}}',
|
|
63
|
-
// '{"dotgoV2":{"type":"product_details","subType":"product_list","catalogId":"3987644271555185","header":{"text":"Our Food Menu"},"body":{"text":"*Terms and Conditions for Delivery* \\n- Though we try our best to deliver your food in time, there might be delays\\n- Prices might differ from the ones on the website \\n- Packing charges will be added on the prices \\n- Minimum delivery order TZS 13,000"},"footer":{"text":"Powered by Beem"},"sections":[{"title":"South Indian","productList":[{"productId":95},{"productId":96},{"productId":97},{"productId":98},{"productId":99},{"productId":100},{"productId":101},{"productId":105}]},{"title":"Soups","productList":[{"productId":102},{"productId":103},{"productId":104}]},{"title":"Paratha","productList":[{"productId":106},{"productId":107},{"productId":108},{"productId":109}]},{"title":"Starters & Chaat","productList":[{"productId":110},{"productId":111}]},{"title":"Extras","productList":[{"productId":112},{"productId":113},{"productId":114}]},{"title":"Thali","productList":[{"productId":115},{"productId":116},{"productId":117},{"productId":118}]}]}}',
|
|
64
|
-
time: '2025-03-19T13:44:25.000Z',
|
|
65
|
-
direction: 'outbound',
|
|
66
|
-
message_type: 'order',
|
|
67
|
-
messageId: null,
|
|
68
|
-
is_live_agent: 0,
|
|
69
|
-
is_deleted: 0,
|
|
70
|
-
is_comment: 0,
|
|
71
|
-
channel: 'whatsapp',
|
|
72
|
-
sent_to_vendor: 1,
|
|
73
|
-
replyMessageId: '0499863a-e784-4404-ae8a-a95f617b9fbe',
|
|
74
|
-
agent_name: null,
|
|
75
|
-
df_agent_name: null,
|
|
76
|
-
resolve_time: null,
|
|
77
|
-
metadata: null,
|
|
78
|
-
statusDetails: {
|
|
79
|
-
statusCode: 3,
|
|
80
|
-
},
|
|
81
|
-
};
|
|
82
|
-
// {
|
|
83
|
-
// id: 59605,
|
|
51
|
+
// const metaQuickReply = [
|
|
52
|
+
// {
|
|
53
|
+
// id: 104342,
|
|
84
54
|
// message:
|
|
85
|
-
// '{\n
|
|
86
|
-
|
|
87
|
-
//
|
|
88
|
-
//
|
|
89
|
-
//
|
|
55
|
+
// '{\n "type":"list",\n "body":{\n "text":"Please select a service from the options below:"\n },\n "footer":{\n "text":"You can only select one option"\n },\n "action":{\n "button":"Choose Service",\n "sections":[\n {\n "title":"Financial Services",\n "rows":[\n {\n "id":"loan_services",\n "title":"Loan Services",\n "description":"Get personal or business loans"\n },\n {\n "id":"savings_services",\n "title":"Savings & Investments",\n "description":"Grow your money with our plans"\n }\n ]\n },\n {\n "title":"Customer Support",\n "rows":[\n {\n "id":"support_faq",\n "title":"FAQ",\n "description":"Common questions answered"\n },\n {\n "id":"contact_agent",\n "title":"Contact an Agent",\n "description":"Chat with a live support agent"\n }\n ]\n },\n {\n "title":"Promotions",\n "rows":[\n {\n "id":"discounts",\n "title":"Discounts & Offers",\n "description":"Check out latest promotions"\n }\n ]\n }\n ]\n }\n}',
|
|
56
|
+
|
|
57
|
+
// time: '2025-09-17T10:08:10.000Z',
|
|
58
|
+
// direction: 'inbound',
|
|
59
|
+
// message_type: 'interactive',
|
|
60
|
+
// messageId: 'ac498221-3dd9-4b09-ad2b-826c0d1e3e29',
|
|
90
61
|
// is_live_agent: 0,
|
|
91
62
|
// is_deleted: 0,
|
|
92
63
|
// is_comment: 0,
|
|
93
|
-
// channel: '
|
|
64
|
+
// channel: 'whatsapp',
|
|
94
65
|
// sent_to_vendor: 1,
|
|
95
66
|
// replyMessageId: null,
|
|
96
67
|
// agent_name: null,
|
|
@@ -100,238 +71,44 @@ const Chat = () => {
|
|
|
100
71
|
// statusDetails: {
|
|
101
72
|
// statusCode: 3,
|
|
102
73
|
// },
|
|
103
|
-
// };
|
|
104
|
-
const x = {
|
|
105
|
-
id: 64816,
|
|
106
|
-
message: 'Give Feedback',
|
|
107
|
-
time: '2025-02-13T11:19:42.000Z',
|
|
108
|
-
direction: 'inbound',
|
|
109
|
-
message_type: 'text',
|
|
110
|
-
messageId: null,
|
|
111
|
-
is_live_agent: 1,
|
|
112
|
-
is_deleted: 0,
|
|
113
|
-
is_comment: 0,
|
|
114
|
-
channel: 'whatsapp',
|
|
115
|
-
sent_to_vendor: 1,
|
|
116
|
-
replyMessageId: '035a7484-ee02-4829-8cb5-33c4623f1c8a',
|
|
117
|
-
agent_name: null,
|
|
118
|
-
df_agent_name: null,
|
|
119
|
-
resolve_time: null,
|
|
120
|
-
metadata: {
|
|
121
|
-
id: '6538d48e-1b17-45e8-8e44-be457d3695c0',
|
|
122
|
-
prev_message:
|
|
123
|
-
// '{"dotgoV2":{"type":"product_details","subType":"product_list","catalogId":"3987644271555185","header":{"text":"Our Food Menu"},"body":{"text":"*Terms and Conditions for Delivery* \\n- Though we try our best to deliver your food in time, there might be delays\\n- Prices might differ from the ones on the website \\n- Packing charges will be added on the prices \\n- Minimum delivery order TZS 13,000"},"footer":{"text":"Powered by Beem"},"sections":[{"title":"South Indian","productList":[{"productId":95},{"productId":96},{"productId":97},{"productId":98},{"productId":99},{"productId":100},{"productId":101},{"productId":105}]},{"title":"Soups","productList":[{"productId":102},{"productId":103},{"productId":104}]},{"title":"Paratha","productList":[{"productId":106},{"productId":107},{"productId":108},{"productId":109}]},{"title":"Starters & Chaat","productList":[{"productId":110},{"productId":111}]},{"title":"Extras","productList":[{"productId":112},{"productId":113},{"productId":114}]},{"title":"Thali","productList":[{"productId":115},{"productId":116},{"productId":117},{"productId":118}]}]}}',
|
|
124
|
-
// '{"dotgoV2":{"type":"quick_reply","content":{"type":"text","header":"HELOOOOOOOOOO", "url": "https://i.imgur.com/BZylAb1.jpeg","text":"We value your opinion! Would you be willing to take a short survey to help us improve?","caption":""},"options":[{"type":"text","title":"Give Feedback","postbackText":"bm-feedback|0|181661e8-9209-4665-ad19-680981136ae8"},{"type":"text","title":"No Thank you","postbackText":"dev-defined-postback2"}]}}',
|
|
125
|
-
// '{"dotgoV2":{"type":"quick_reply","content":{"type":"text","header":"","text":"Thank you we have received your order\\n\\n• 1 X 20\\" Zuri Wig Straight Mirna Caramel Brown - USD 505\\n• 1 X 14\\" Zuri Wig Straight Miss Van Platinum Blonde - USD 960\\n• 1 X 18\\" Zuri Wig Straight Miss Van Platinum Blonde - USD 960\\n• 1 X 10\\" Zuri Wig Straight Monroe Platinum Blonde - USD 505\\n\\n\\n*Proceed to payment to complete order process*","caption":""},"options":[{"type":"text","title":"Proceed to payment","postbackText":"option-defined-postback1"},{"type":"text","title":"Main menu","postbackText":"option-defined-postback2"}]}}',
|
|
126
|
-
'{"dotgoV2":{"type":"list","title":"","body":"Hey Abdallah,\\n\\n*Welcome to Zuri House Of Beauty* \\n\\nWe offer a range of styles designed by Black women for Black women. Our platform, brand, and financing solutions promote economic mobility for Black women entrepreneurs. \\n\\nHow can I assist you today?","globalButtons":[{"type":"text","title":"Browse Services"}],"items":[{"title":"Browse Services","subtitle":"","options":[{"type":"text","title":"View Products","description":"","postbackText":"section 1 row 1 postback payload"},{"type":"text","title":"Track Order","description":"Enter order id for status","postbackText":"section 1 row 1 postback payload"},{"type":"text","title":"Support","description":"","postbackText":"section 1 row 1 postback payload"},{"type":"text","title":"Feedback","description":"Give feedback","postbackText":"bm-feedback|0|bf5ff7a3-6425-484e-9b7b-6104ec774bff"},{"type":"text","title":"Ask us anything","description":"","postbackText":"section 1 row 1 postback payload"}]}]}}',
|
|
127
|
-
},
|
|
128
|
-
};
|
|
129
|
-
const steps = [
|
|
130
|
-
{ key: 'step1', label: 'Start' },
|
|
131
|
-
{ key: 'step2', label: 'Details' },
|
|
132
|
-
{ key: 'step3', label: 'Review' },
|
|
133
|
-
{ key: 'step4', label: 'Complete' },
|
|
134
|
-
];
|
|
135
|
-
|
|
136
|
-
const messages = [
|
|
137
|
-
{
|
|
138
|
-
id: 78741,
|
|
139
|
-
message:
|
|
140
|
-
'https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/0c8f668d-f5e6-4325-aa76-4d9af8dd79a7.docx',
|
|
141
|
-
time: '2025-04-03T05:55:39.000Z',
|
|
142
|
-
direction: 'inbound',
|
|
143
|
-
message_type:
|
|
144
|
-
'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
|
|
145
|
-
messageId: null,
|
|
146
|
-
is_live_agent: 0,
|
|
147
|
-
is_deleted: 0,
|
|
148
|
-
is_comment: 0,
|
|
149
|
-
channel: 'whatsapp',
|
|
150
|
-
sent_to_vendor: 1,
|
|
151
|
-
replyMessageId: null,
|
|
152
|
-
agent_name: null,
|
|
153
|
-
df_agent_name: null,
|
|
154
|
-
resolve_time: null,
|
|
155
|
-
metadata: null,
|
|
156
|
-
},
|
|
157
|
-
|
|
158
|
-
{
|
|
159
|
-
id: 78739,
|
|
160
|
-
message:
|
|
161
|
-
'https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/5f0c7de7-c42b-4a94-b1cd-9fe3554da93d.pdf',
|
|
162
|
-
time: '2025-04-03T05:50:02.000Z',
|
|
163
|
-
direction: 'inbound',
|
|
164
|
-
message_type: 'application/pdf',
|
|
165
|
-
messageId: null,
|
|
166
|
-
is_live_agent: 0,
|
|
167
|
-
is_deleted: 0,
|
|
168
|
-
is_comment: 0,
|
|
169
|
-
channel: 'whatsapp',
|
|
170
|
-
sent_to_vendor: 1,
|
|
171
|
-
replyMessageId: null,
|
|
172
|
-
agent_name: null,
|
|
173
|
-
df_agent_name: null,
|
|
174
|
-
resolve_time: null,
|
|
175
|
-
metadata: null,
|
|
176
|
-
},
|
|
177
|
-
];
|
|
178
|
-
// const msg = [
|
|
179
|
-
// {
|
|
180
|
-
// message: 'Me as user replying to the beem message',
|
|
181
|
-
// id: 20278,
|
|
182
|
-
// time: '2024-01-22T11:59:08.000Z',
|
|
183
|
-
// direction: 'inbound',
|
|
184
|
-
// message_type: 'text',
|
|
185
|
-
// messageId: null,
|
|
186
|
-
// is_live_agent: true,
|
|
187
|
-
// is_deleted: false,
|
|
188
|
-
// is_comment: false,
|
|
189
|
-
// channel: 'whatsapp',
|
|
190
|
-
// sent_to_vendor: true,
|
|
191
|
-
// replyMessageId: 'b0a6b554-0cc3-4e45-83b2-3cada229a82c',
|
|
192
|
-
// agent_name: null,
|
|
193
|
-
// df_agent_name: null,
|
|
194
|
-
// resolve_time: null,
|
|
195
|
-
// metadata: {
|
|
196
|
-
// id: 'b0a6b554-0cc3-4e45-83b2-3cada229a82c',
|
|
197
|
-
// prev_message: 'this is message from beem',
|
|
198
|
-
// },
|
|
199
|
-
// },
|
|
200
|
-
// {
|
|
201
|
-
// message: 'this is message from beem',
|
|
202
|
-
// id: 20277,
|
|
203
|
-
// time: '2024-01-22T11:56:41.000Z',
|
|
204
|
-
// direction: 'outbound',
|
|
205
|
-
// message_type: null,
|
|
206
|
-
// messageId: 'b0a6b554-0cc3-4e45-83b2-3cada229a82c',
|
|
207
|
-
// is_live_agent: true,
|
|
208
|
-
// is_deleted: false,
|
|
209
|
-
// is_comment: false,
|
|
210
|
-
// channel: 'whatsapp',
|
|
211
|
-
// sent_to_vendor: true,
|
|
212
|
-
// replyMessageId: null,
|
|
213
|
-
// agent_name: 'arl@beem.co.tz',
|
|
214
|
-
// df_agent_name: 'Dev arl',
|
|
215
|
-
// resolve_time: null,
|
|
216
|
-
// metadata: null,
|
|
217
|
-
// statusDetails: {
|
|
218
|
-
// statusCode: 3,
|
|
219
|
-
// },
|
|
220
|
-
// },
|
|
221
|
-
// {
|
|
222
|
-
// message: 'hi',
|
|
223
|
-
// id: 20276,
|
|
224
|
-
// time: '2024-01-22T11:20:21.000Z',
|
|
225
|
-
// direction: 'outbound',
|
|
226
|
-
// message_type: null,
|
|
227
|
-
// messageId: '86ffe4bd-145e-4f50-83ef-83248b05c43a',
|
|
228
|
-
// is_live_agent: true,
|
|
229
|
-
// is_deleted: false,
|
|
230
|
-
// is_comment: false,
|
|
231
|
-
// channel: 'whatsapp',
|
|
232
|
-
// sent_to_vendor: true,
|
|
233
|
-
// replyMessageId: null,
|
|
234
|
-
// agent_name: 'arl@beem.co.tz',
|
|
235
|
-
// df_agent_name: 'Dev arl',
|
|
236
|
-
// resolve_time: null,
|
|
237
|
-
// metadata: null,
|
|
238
|
-
// statusDetails: {
|
|
239
|
-
// statusCode: 3,
|
|
240
|
-
// },
|
|
241
|
-
// },
|
|
242
|
-
// {
|
|
243
|
-
// message: 'hi',
|
|
244
|
-
// id: 20270,
|
|
245
|
-
// time: '2024-01-22T10:19:57.000Z',
|
|
246
|
-
// direction: 'outbound',
|
|
247
|
-
// message_type: null,
|
|
248
|
-
// messageId: '0e165d59-8300-4cd2-883d-dcb076c6f235',
|
|
249
|
-
// is_live_agent: true,
|
|
250
|
-
// is_deleted: false,
|
|
251
|
-
// is_comment: false,
|
|
252
|
-
// channel: 'whatsapp',
|
|
253
|
-
// sent_to_vendor: true,
|
|
254
|
-
// replyMessageId: null,
|
|
255
|
-
// agent_name: 'arl@beem.co.tz',
|
|
256
|
-
// df_agent_name: 'Dev arl',
|
|
257
|
-
// resolve_time: null,
|
|
258
|
-
// metadata: null,
|
|
259
|
-
// statusDetails: {
|
|
260
|
-
// statusCode: 3,
|
|
261
|
-
// },
|
|
262
|
-
// },
|
|
263
|
-
// {
|
|
264
|
-
// message: 'oh i am good',
|
|
265
|
-
// id: 20269,
|
|
266
|
-
// time: '2024-01-22T10:04:05.000Z',
|
|
267
|
-
// direction: 'inbound',
|
|
268
|
-
// message_type: 'text',
|
|
269
|
-
// messageId: null,
|
|
270
|
-
// is_live_agent: true,
|
|
271
|
-
// is_deleted: false,
|
|
272
|
-
// is_comment: false,
|
|
273
|
-
// channel: 'whatsapp',
|
|
274
|
-
// sent_to_vendor: true,
|
|
275
|
-
// replyMessageId: null,
|
|
276
|
-
// agent_name: null,
|
|
277
|
-
// df_agent_name: null,
|
|
278
|
-
// resolve_time: null,
|
|
279
|
-
// metadata: {
|
|
280
|
-
// id: 'ABEGJVeCJwBSAhB3WfEzKswmhITnP0z8qo12',
|
|
281
|
-
// prev_message: 'how are you????????',
|
|
282
|
-
// },
|
|
283
74
|
// },
|
|
284
75
|
// {
|
|
285
|
-
//
|
|
286
|
-
|
|
287
|
-
//
|
|
76
|
+
// id: 104342,
|
|
77
|
+
|
|
78
|
+
// message:
|
|
79
|
+
// '{"type":"button","header":{"type":"image","image":{"link":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/cook.jpg"}},"body":{"text":"Hey there! This is a Breakfast bot. \\nWhat would you like to have?"},"action":{"buttons":[{"type":"reply","reply":{"id":"dev-defined-postback1","title":"Tea"}},{"type":"reply","reply":{"id":"dev-defined-postback2","title":"Coffee"}},{"type":"reply","reply":{"id":"dev-defined-postback3","title":"Chat with Agent"}}]}}',
|
|
80
|
+
|
|
81
|
+
// time: '2025-09-17T10:08:10.000Z',
|
|
288
82
|
// direction: 'inbound',
|
|
289
|
-
// message_type: '
|
|
290
|
-
// messageId:
|
|
291
|
-
// is_live_agent:
|
|
292
|
-
// is_deleted:
|
|
293
|
-
// is_comment:
|
|
83
|
+
// message_type: 'interactive',
|
|
84
|
+
// messageId: 'ac498221-3dd9-4b09-ad2b-826c0d1e3e29',
|
|
85
|
+
// is_live_agent: 0,
|
|
86
|
+
// is_deleted: 0,
|
|
87
|
+
// is_comment: 0,
|
|
294
88
|
// channel: 'whatsapp',
|
|
295
|
-
// sent_to_vendor:
|
|
89
|
+
// sent_to_vendor: 1,
|
|
296
90
|
// replyMessageId: null,
|
|
297
91
|
// agent_name: null,
|
|
298
92
|
// df_agent_name: null,
|
|
299
93
|
// resolve_time: null,
|
|
300
94
|
// metadata: null,
|
|
301
|
-
// },
|
|
302
|
-
// {
|
|
303
|
-
// message: 'hi\n',
|
|
304
|
-
// id: 20267,
|
|
305
|
-
// time: '2024-01-22T10:03:01.000Z',
|
|
306
|
-
// direction: 'outbound',
|
|
307
|
-
// message_type: null,
|
|
308
|
-
// messageId: 'f38be83c-92b1-47a7-9e6a-0d209da0ad86',
|
|
309
|
-
// is_live_agent: false,
|
|
310
|
-
// is_deleted: false,
|
|
311
|
-
// is_comment: false,
|
|
312
|
-
// channel: 'whatsapp',
|
|
313
|
-
// sent_to_vendor: true,
|
|
314
|
-
// replyMessageId: null,
|
|
315
|
-
// agent_name: 'arl@beem.co.tz',
|
|
316
|
-
// df_agent_name: 'Dev arl',
|
|
317
|
-
// resolve_time: null,
|
|
318
|
-
// metadata: null,
|
|
319
95
|
// statusDetails: {
|
|
320
96
|
// statusCode: 3,
|
|
321
97
|
// },
|
|
322
98
|
// },
|
|
323
99
|
// {
|
|
324
|
-
//
|
|
325
|
-
//
|
|
326
|
-
//
|
|
327
|
-
//
|
|
328
|
-
//
|
|
329
|
-
//
|
|
330
|
-
//
|
|
331
|
-
//
|
|
332
|
-
//
|
|
100
|
+
// id: 104342,
|
|
101
|
+
// message:
|
|
102
|
+
// '{\n "type":"button",\n "body":{\n "text":"Hey there! This is a Breakfast bot. \\nWhat would you like to have?"\n },\n "action":{\n "buttons":[\n {\n "type":"reply",\n "reply":{\n "id":"dev-defined-postback1",\n "title":"Tea"\n }\n },\n {\n "type":"reply",\n "reply":{\n "id":"dev-defined-postback2",\n "title":"Coffee"\n }\n },\n {\n "type":"reply",\n "reply":{\n "id":"dev-defined-postback3",\n "title":"Chat with Agent"\n }\n }\n ]\n }\n}',
|
|
103
|
+
// time: '2025-09-17T10:08:10.000Z',
|
|
104
|
+
// direction: 'inbound',
|
|
105
|
+
// message_type: 'interactive',
|
|
106
|
+
// messageId: 'ac498221-3dd9-4b09-ad2b-826c0d1e3e29',
|
|
107
|
+
// is_live_agent: 0,
|
|
108
|
+
// is_deleted: 0,
|
|
109
|
+
// is_comment: 0,
|
|
333
110
|
// channel: 'whatsapp',
|
|
334
|
-
// sent_to_vendor:
|
|
111
|
+
// sent_to_vendor: 1,
|
|
335
112
|
// replyMessageId: null,
|
|
336
113
|
// agent_name: null,
|
|
337
114
|
// df_agent_name: null,
|
|
@@ -341,36 +118,20 @@ const Chat = () => {
|
|
|
341
118
|
// statusCode: 3,
|
|
342
119
|
// },
|
|
343
120
|
// },
|
|
121
|
+
|
|
344
122
|
// {
|
|
345
|
-
//
|
|
346
|
-
//
|
|
347
|
-
//
|
|
348
|
-
//
|
|
349
|
-
// message_type: 'text',
|
|
350
|
-
// messageId: null,
|
|
351
|
-
// is_live_agent: false,
|
|
352
|
-
// is_deleted: false,
|
|
353
|
-
// is_comment: false,
|
|
354
|
-
// channel: 'whatsapp',
|
|
355
|
-
// sent_to_vendor: true,
|
|
356
|
-
// replyMessageId: null,
|
|
357
|
-
// agent_name: null,
|
|
358
|
-
// df_agent_name: null,
|
|
359
|
-
// resolve_time: null,
|
|
360
|
-
// metadata: null,
|
|
361
|
-
// },
|
|
362
|
-
// {
|
|
363
|
-
// message: 'thank you for chatting with us!!! -Dev',
|
|
364
|
-
// id: 20264,
|
|
365
|
-
// time: '2024-01-22T09:55:00.000Z',
|
|
123
|
+
// id: 104342,
|
|
124
|
+
// message:
|
|
125
|
+
// '{"dotgoV2":{"type":"quick_reply","content":{"type":"text","header":"","text":"We value your opinion! Would you be willing to take a short survey to help us improve?","caption":""},"options":[{"type":"text","title":"Give Feedback","postbackText":"bm-feedback|0|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"No Thank You","postbackText":"dev-defined-postback2"}]}}',
|
|
126
|
+
// time: '2025-09-17T10:08:10.000Z',
|
|
366
127
|
// direction: 'outbound',
|
|
367
|
-
// message_type:
|
|
368
|
-
// messageId:
|
|
369
|
-
// is_live_agent:
|
|
370
|
-
// is_deleted:
|
|
371
|
-
// is_comment:
|
|
128
|
+
// message_type: 'interactive',
|
|
129
|
+
// messageId: 'ac498221-3dd9-4b09-ad2b-826c0d1e3e29',
|
|
130
|
+
// is_live_agent: 0,
|
|
131
|
+
// is_deleted: 0,
|
|
132
|
+
// is_comment: 0,
|
|
372
133
|
// channel: 'whatsapp',
|
|
373
|
-
// sent_to_vendor:
|
|
134
|
+
// sent_to_vendor: 1,
|
|
374
135
|
// replyMessageId: null,
|
|
375
136
|
// agent_name: null,
|
|
376
137
|
// df_agent_name: null,
|
|
@@ -381,17 +142,18 @@ const Chat = () => {
|
|
|
381
142
|
// },
|
|
382
143
|
// },
|
|
383
144
|
// {
|
|
384
|
-
//
|
|
385
|
-
//
|
|
386
|
-
//
|
|
145
|
+
// id: 104342,
|
|
146
|
+
// message:
|
|
147
|
+
// '{"dotgoV2":{"type":"list","title":"Question 3 of 7","body":"No oh ny","globalButtons":[{"type":"text","title":"Responses"}],"items":[{"title":"Responses","subtitle":"","options":[{"type":"text","title":"1","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"2","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"3","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"4","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"5","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"6","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"7","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"8","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"9","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"10","postbackText":"bm-feedback|3|fd4858ed-0fbd-4da1-9453-ecf3a1371874"}]}]}}',
|
|
148
|
+
// time: '2025-09-17T10:08:10.000Z',
|
|
387
149
|
// direction: 'outbound',
|
|
388
|
-
// message_type: '
|
|
389
|
-
// messageId:
|
|
390
|
-
// is_live_agent:
|
|
391
|
-
// is_deleted:
|
|
392
|
-
// is_comment:
|
|
150
|
+
// message_type: 'interactive',
|
|
151
|
+
// messageId: 'ac498221-3dd9-4b09-ad2b-826c0d1e3e29',
|
|
152
|
+
// is_live_agent: 0,
|
|
153
|
+
// is_deleted: 0,
|
|
154
|
+
// is_comment: 0,
|
|
393
155
|
// channel: 'whatsapp',
|
|
394
|
-
// sent_to_vendor:
|
|
156
|
+
// sent_to_vendor: 1,
|
|
395
157
|
// replyMessageId: null,
|
|
396
158
|
// agent_name: null,
|
|
397
159
|
// df_agent_name: null,
|
|
@@ -402,56 +164,18 @@ const Chat = () => {
|
|
|
402
164
|
// },
|
|
403
165
|
// },
|
|
404
166
|
// {
|
|
405
|
-
//
|
|
406
|
-
//
|
|
407
|
-
//
|
|
408
|
-
//
|
|
409
|
-
// message_type: 'text',
|
|
410
|
-
// messageId: null,
|
|
411
|
-
// is_live_agent: false,
|
|
412
|
-
// is_deleted: false,
|
|
413
|
-
// is_comment: false,
|
|
414
|
-
// channel: 'whatsapp',
|
|
415
|
-
// sent_to_vendor: true,
|
|
416
|
-
// replyMessageId: null,
|
|
417
|
-
// agent_name: null,
|
|
418
|
-
// df_agent_name: null,
|
|
419
|
-
// resolve_time: null,
|
|
420
|
-
// metadata: {
|
|
421
|
-
// id: 'ABEGJVaCQwSAAhCt33VV1Zivq9-48AP8bs_t',
|
|
422
|
-
// prev_message: 'if it doesnt exists then to fetch',
|
|
423
|
-
// },
|
|
424
|
-
// },
|
|
425
|
-
// {
|
|
426
|
-
// message: 'how are you?',
|
|
427
|
-
// id: 20220,
|
|
428
|
-
// time: '2024-01-19T10:59:48.000Z',
|
|
429
|
-
// direction: 'inbound',
|
|
430
|
-
// message_type: 'text',
|
|
431
|
-
// messageId: null,
|
|
432
|
-
// is_live_agent: false,
|
|
433
|
-
// is_deleted: false,
|
|
434
|
-
// is_comment: false,
|
|
435
|
-
// channel: 'whatsapp',
|
|
436
|
-
// sent_to_vendor: true,
|
|
437
|
-
// replyMessageId: null,
|
|
438
|
-
// agent_name: null,
|
|
439
|
-
// df_agent_name: null,
|
|
440
|
-
// resolve_time: null,
|
|
441
|
-
// metadata: null,
|
|
442
|
-
// },
|
|
443
|
-
// {
|
|
444
|
-
// message: 'thank you for chatting with us!!! -Dev',
|
|
445
|
-
// id: 20217,
|
|
446
|
-
// time: '2024-01-19T09:55:00.000Z',
|
|
167
|
+
// id: 104342,
|
|
168
|
+
// message:
|
|
169
|
+
// '{"dotgoV2":{"type":"quick_reply","content":{"type":"image","header":"yest","url":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/cook.jpg","text":"We value your opinion! Would you be willing to take a short survey to help us improve?","caption":""},"options":[{"type":"text","title":"Give Feedback","postbackText":"bm-feedback|0|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"No Thank You","postbackText":"dev-defined-postback2"}]}}',
|
|
170
|
+
// time: '2025-09-17T10:08:10.000Z',
|
|
447
171
|
// direction: 'outbound',
|
|
448
|
-
// message_type:
|
|
449
|
-
// messageId:
|
|
450
|
-
// is_live_agent:
|
|
451
|
-
// is_deleted:
|
|
452
|
-
// is_comment:
|
|
172
|
+
// message_type: 'interactive',
|
|
173
|
+
// messageId: 'ac498221-3dd9-4b09-ad2b-826c0d1e3e29',
|
|
174
|
+
// is_live_agent: 0,
|
|
175
|
+
// is_deleted: 0,
|
|
176
|
+
// is_comment: 0,
|
|
453
177
|
// channel: 'whatsapp',
|
|
454
|
-
// sent_to_vendor:
|
|
178
|
+
// sent_to_vendor: 1,
|
|
455
179
|
// replyMessageId: null,
|
|
456
180
|
// agent_name: null,
|
|
457
181
|
// df_agent_name: null,
|
|
@@ -462,1179 +186,848 @@ const Chat = () => {
|
|
|
462
186
|
// },
|
|
463
187
|
// },
|
|
464
188
|
// {
|
|
465
|
-
//
|
|
466
|
-
//
|
|
467
|
-
// time: '
|
|
468
|
-
// direction: 'inbound',
|
|
469
|
-
// message_type: 'text',
|
|
470
|
-
// messageId: null,
|
|
471
|
-
// is_live_agent: true,
|
|
472
|
-
// is_deleted: false,
|
|
473
|
-
// is_comment: false,
|
|
474
|
-
// channel: 'whatsapp',
|
|
475
|
-
// sent_to_vendor: true,
|
|
476
|
-
// replyMessageId: null,
|
|
477
|
-
// agent_name: null,
|
|
478
|
-
// df_agent_name: null,
|
|
479
|
-
// resolve_time: null,
|
|
480
|
-
// metadata: null,
|
|
481
|
-
// },
|
|
482
|
-
// {
|
|
483
|
-
// message: 'hi',
|
|
484
|
-
// id: 20207,
|
|
485
|
-
// time: '2024-01-19T08:49:23.000Z',
|
|
189
|
+
// id: 104429,
|
|
190
|
+
// message: 'Give Feedback',
|
|
191
|
+
// time: '2025-09-18T02:48:51.000Z',
|
|
486
192
|
// direction: 'inbound',
|
|
487
193
|
// message_type: 'text',
|
|
488
|
-
// messageId:
|
|
489
|
-
//
|
|
490
|
-
//
|
|
491
|
-
//
|
|
194
|
+
// messageId:
|
|
195
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNBRTE0QjVENTkxM0ZDNDUxMkY3RTA0NEU4NzEyQzUA',
|
|
196
|
+
// is_live_agent: 1,
|
|
197
|
+
// is_deleted: 0,
|
|
198
|
+
// is_comment: 0,
|
|
492
199
|
// channel: 'whatsapp',
|
|
493
|
-
// sent_to_vendor:
|
|
494
|
-
// replyMessageId:
|
|
200
|
+
// sent_to_vendor: 1,
|
|
201
|
+
// replyMessageId: 'eaf92cdf-32c7-4524-a11e-dd9cdf37d717',
|
|
495
202
|
// agent_name: null,
|
|
496
203
|
// df_agent_name: null,
|
|
497
204
|
// resolve_time: null,
|
|
498
205
|
// metadata: null,
|
|
499
206
|
// },
|
|
500
207
|
// {
|
|
501
|
-
//
|
|
502
|
-
//
|
|
503
|
-
//
|
|
208
|
+
// id: 104429,
|
|
209
|
+
// message:
|
|
210
|
+
// '{"catalog_id":"3567267706900621","product_items":[{"id":182,"currency":"TZS","amount":10000,"quantity":1,"description":"1 Burger Kalimiz Burger Philly Beef","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/a6176a3a-a918-4623-b22d-99ceca7b9fad 1.jpg"},{"id":181,"currency":"TZS","amount":10000,"quantity":1,"description":"1 Burger Kalimiz Burger Bollywood Paneer","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/fed84589-31c5-4ea9-8505-75ceb4932906 1.jpg"}],"type":"order"}',
|
|
211
|
+
// time: '2025-09-18T02:48:51.000Z',
|
|
504
212
|
// direction: 'inbound',
|
|
505
|
-
// message_type: '
|
|
506
|
-
// messageId:
|
|
507
|
-
//
|
|
508
|
-
//
|
|
509
|
-
//
|
|
213
|
+
// message_type: 'order',
|
|
214
|
+
// messageId:
|
|
215
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNBRTE0QjVENTkxM0ZDNDUxMkY3RTA0NEU4NzEyQzUA',
|
|
216
|
+
// is_live_agent: 1,
|
|
217
|
+
// is_deleted: 0,
|
|
218
|
+
// is_comment: 0,
|
|
510
219
|
// channel: 'whatsapp',
|
|
511
|
-
// sent_to_vendor:
|
|
512
|
-
// replyMessageId:
|
|
220
|
+
// sent_to_vendor: 1,
|
|
221
|
+
// replyMessageId: 'eaf92cdf-32c7-4524-a11e-dd9cdf37d717',
|
|
513
222
|
// agent_name: null,
|
|
514
223
|
// df_agent_name: null,
|
|
515
224
|
// resolve_time: null,
|
|
516
225
|
// metadata: null,
|
|
517
226
|
// },
|
|
518
227
|
// {
|
|
519
|
-
//
|
|
520
|
-
//
|
|
521
|
-
//
|
|
522
|
-
//
|
|
523
|
-
//
|
|
524
|
-
//
|
|
525
|
-
//
|
|
526
|
-
//
|
|
527
|
-
//
|
|
228
|
+
// id: 104429,
|
|
229
|
+
// message:
|
|
230
|
+
// '{"dotgoV2":{"type":"order","catalog":{"id":"3567267706900621","order":{"items":[{"id":181,"currency":"TZS","amount":"10000","quantity":"1","description":"1 Burger Kalimiz Burger Bollywood Paneer","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/fed84589-31c5-4ea9-8505-75ceb4932906 1.jpg"},{"id":182,"currency":"TZS","amount":"10000","quantity":"1","description":"1 Burger Kalimiz Burger Philly Beef","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/a6176a3a-a918-4623-b22d-99ceca7b9fad 1.jpg"}]}},"forwarded":false,"frequently_forwarded":false}}',
|
|
231
|
+
// time: '2025-09-18T02:48:51.000Z',
|
|
232
|
+
// direction: 'outbound',
|
|
233
|
+
// message_type: 'order',
|
|
234
|
+
// messageId:
|
|
235
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNBRTE0QjVENTkxM0ZDNDUxMkY3RTA0NEU4NzEyQzUA',
|
|
236
|
+
// is_live_agent: 1,
|
|
237
|
+
// is_deleted: 0,
|
|
238
|
+
// is_comment: 0,
|
|
528
239
|
// channel: 'whatsapp',
|
|
529
|
-
// sent_to_vendor:
|
|
530
|
-
// replyMessageId:
|
|
240
|
+
// sent_to_vendor: 1,
|
|
241
|
+
// replyMessageId: 'eaf92cdf-32c7-4524-a11e-dd9cdf37d717',
|
|
531
242
|
// agent_name: null,
|
|
532
243
|
// df_agent_name: null,
|
|
533
244
|
// resolve_time: null,
|
|
534
245
|
// metadata: null,
|
|
535
246
|
// },
|
|
536
247
|
// {
|
|
537
|
-
//
|
|
538
|
-
|
|
539
|
-
//
|
|
540
|
-
//
|
|
541
|
-
//
|
|
542
|
-
//
|
|
543
|
-
//
|
|
544
|
-
//
|
|
545
|
-
//
|
|
248
|
+
// id: 104429,
|
|
249
|
+
|
|
250
|
+
// message:
|
|
251
|
+
// '{"dotgoV2":{"type":"product_details","subType":"product_list","catalogId":"3567267706900621","header":{"text":"View Menu"},"body":{"text":"Menu included \\n "},"footer":{"text":"sdefsdfsdf"},"sections":[{"title":"Title 1","productList":[{"productId":181},{"productId":182},{"productId":183}]}]}}',
|
|
252
|
+
// time: '2025-09-18T02:48:51.000Z',
|
|
253
|
+
// direction: 'outbound',
|
|
254
|
+
// message_type: 'interactive',
|
|
255
|
+
// messageId:
|
|
256
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNBRTE0QjVENTkxM0ZDNDUxMkY3RTA0NEU4NzEyQzUA',
|
|
257
|
+
// is_live_agent: 1,
|
|
258
|
+
// is_deleted: 0,
|
|
259
|
+
// is_comment: 0,
|
|
546
260
|
// channel: 'whatsapp',
|
|
547
|
-
// sent_to_vendor:
|
|
548
|
-
// replyMessageId:
|
|
261
|
+
// sent_to_vendor: 1,
|
|
262
|
+
// replyMessageId: 'eaf92cdf-32c7-4524-a11e-dd9cdf37d717',
|
|
549
263
|
// agent_name: null,
|
|
550
264
|
// df_agent_name: null,
|
|
551
265
|
// resolve_time: null,
|
|
552
266
|
// metadata: null,
|
|
553
267
|
// },
|
|
554
268
|
// {
|
|
555
|
-
//
|
|
556
|
-
//
|
|
557
|
-
// time: '
|
|
269
|
+
// id: 104704,
|
|
270
|
+
// message: '3',
|
|
271
|
+
// time: '2025-09-19T03:51:43.000Z',
|
|
558
272
|
// direction: 'inbound',
|
|
559
273
|
// message_type: 'text',
|
|
560
|
-
// messageId:
|
|
561
|
-
//
|
|
562
|
-
//
|
|
563
|
-
//
|
|
274
|
+
// messageId:
|
|
275
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNEMkRFMTEyQUI1OTMxQTQwMzc1Rjk1QjY4M0MyNjYA',
|
|
276
|
+
// is_live_agent: 1,
|
|
277
|
+
// is_deleted: 0,
|
|
278
|
+
// is_comment: 0,
|
|
564
279
|
// channel: 'whatsapp',
|
|
565
|
-
// sent_to_vendor:
|
|
566
|
-
// replyMessageId:
|
|
280
|
+
// sent_to_vendor: 1,
|
|
281
|
+
// replyMessageId: 'c39b331f-629d-4244-98a2-eeda660fcd7d',
|
|
567
282
|
// agent_name: null,
|
|
568
283
|
// df_agent_name: null,
|
|
569
284
|
// resolve_time: null,
|
|
570
|
-
// metadata:
|
|
285
|
+
// metadata: {
|
|
286
|
+
// id: 'c39b331f-629d-4244-98a2-eeda660fcd7d',
|
|
287
|
+
// prev_message:
|
|
288
|
+
// '{"type":"list","header":{"type":"text","text":"Question 1 of 7"},"body":{"text":"No wway"},"footer":{"text":"Responses"},"action":{"button":"Select an option","sections":[{"title":"Responses","rows":[{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|0","title":"1","description":""},{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|1","title":"2","description":""},{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|2","title":"3","description":""},{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|3","title":"4","description":""},{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|4","title":"5","description":""},{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|5","title":"6","description":""},{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|6","title":"7","description":""},{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|7","title":"8","description":""},{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|8","title":"9","description":""},{"id":"bm-feedback|1|fd4858ed-0fbd-4da1-9453-ecf3a1371874|9","title":"10","description":""}]}]}}',
|
|
289
|
+
// },
|
|
571
290
|
// },
|
|
572
291
|
// {
|
|
573
|
-
//
|
|
574
|
-
//
|
|
575
|
-
// time: '
|
|
576
|
-
// direction: '
|
|
292
|
+
// id: 104702,
|
|
293
|
+
// message: 'Give Feedback',
|
|
294
|
+
// time: '2025-09-19T03:51:23.000Z',
|
|
295
|
+
// direction: 'outbound',
|
|
577
296
|
// message_type: 'text',
|
|
578
|
-
// messageId:
|
|
579
|
-
//
|
|
580
|
-
//
|
|
581
|
-
//
|
|
297
|
+
// messageId:
|
|
298
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUM0RkMzNERFODBCQTI3RTdBMUQzMUY4MzEyQ0FBNzgA',
|
|
299
|
+
// is_live_agent: 1,
|
|
300
|
+
// is_deleted: 0,
|
|
301
|
+
// is_comment: 0,
|
|
582
302
|
// channel: 'whatsapp',
|
|
583
|
-
// sent_to_vendor:
|
|
584
|
-
// replyMessageId:
|
|
303
|
+
// sent_to_vendor: 1,
|
|
304
|
+
// replyMessageId: '283d451e-3fe2-478c-8d7a-433a703dbab4',
|
|
585
305
|
// agent_name: null,
|
|
586
306
|
// df_agent_name: null,
|
|
587
307
|
// resolve_time: null,
|
|
588
|
-
// metadata:
|
|
308
|
+
// metadata: {
|
|
309
|
+
// id: '283d451e-3fe2-478c-8d7a-433a703dbab4',
|
|
310
|
+
// prev_message:
|
|
311
|
+
// '{"dotgoV2":{"type":"quick_reply","content":{"type":"text","header":"","text":"We value your opinion! Would you be willing to take a short survey to help us improve?","caption":""},"options":[{"type":"text","title":"Give Feedback","postbackText":"bm-feedback|0|fd4858ed-0fbd-4da1-9453-ecf3a1371874"},{"type":"text","title":"No Thank You","postbackText":"dev-defined-postback2"}]}}',
|
|
312
|
+
// },
|
|
589
313
|
// },
|
|
590
314
|
// {
|
|
591
|
-
//
|
|
592
|
-
//
|
|
593
|
-
// time: '
|
|
315
|
+
// id: 104709,
|
|
316
|
+
// message: 'Test',
|
|
317
|
+
// time: '2025-09-19T04:16:06.000Z',
|
|
594
318
|
// direction: 'inbound',
|
|
595
319
|
// message_type: 'text',
|
|
596
|
-
// messageId:
|
|
597
|
-
//
|
|
598
|
-
//
|
|
599
|
-
//
|
|
320
|
+
// messageId:
|
|
321
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUMxQkQ0NzRGNjBBMkU2NDcwNjEzNTQ1NUJGMzYzNjIA',
|
|
322
|
+
// is_live_agent: 1,
|
|
323
|
+
// is_deleted: 0,
|
|
324
|
+
// is_comment: 0,
|
|
600
325
|
// channel: 'whatsapp',
|
|
601
|
-
// sent_to_vendor:
|
|
602
|
-
// replyMessageId:
|
|
326
|
+
// sent_to_vendor: 1,
|
|
327
|
+
// replyMessageId: 'f556a647-a115-453f-8461-c2caafc6aeaf',
|
|
603
328
|
// agent_name: null,
|
|
604
329
|
// df_agent_name: null,
|
|
605
330
|
// resolve_time: null,
|
|
606
|
-
// metadata:
|
|
331
|
+
// metadata: {
|
|
332
|
+
// id: 'f556a647-a115-453f-8461-c2caafc6aeaf',
|
|
333
|
+
// prev_message:
|
|
334
|
+
// '{"dotgoV2":{"type":"product_details","subType":"product_list","catalogId":"3567267706900621","header":{"text":"View Menu"},"body":{"text":"Menu included \\n "},"footer":{"text":"sdefsdfsdf"},"sections":[{"title":"Title 1","productList":[{"productId":182}]}]}}',
|
|
335
|
+
// },
|
|
607
336
|
// },
|
|
608
337
|
// {
|
|
609
|
-
//
|
|
610
|
-
//
|
|
611
|
-
// time: '
|
|
338
|
+
// id: 104729,
|
|
339
|
+
// message: 'Test',
|
|
340
|
+
// time: '2025-09-19T04:36:32.000Z',
|
|
612
341
|
// direction: 'inbound',
|
|
613
342
|
// message_type: 'text',
|
|
614
|
-
// messageId:
|
|
615
|
-
//
|
|
616
|
-
//
|
|
617
|
-
//
|
|
343
|
+
// messageId:
|
|
344
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUM1QTU1MTBBM0M2MkE1NUY3M0YyMzI1NkU1RTVEQjQA',
|
|
345
|
+
// is_live_agent: 0,
|
|
346
|
+
// is_deleted: 0,
|
|
347
|
+
// is_comment: 0,
|
|
618
348
|
// channel: 'whatsapp',
|
|
619
|
-
// sent_to_vendor:
|
|
620
|
-
// replyMessageId:
|
|
349
|
+
// sent_to_vendor: 1,
|
|
350
|
+
// replyMessageId:
|
|
351
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNFODBDNTNBREMyRDFCODNBNEM1NzI4QTgxNERGMTgA',
|
|
621
352
|
// agent_name: null,
|
|
622
353
|
// df_agent_name: null,
|
|
623
354
|
// resolve_time: null,
|
|
624
|
-
// metadata:
|
|
355
|
+
// metadata: {
|
|
356
|
+
// id: 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNFODBDNTNBREMyRDFCODNBNEM1NzI4QTgxNERGMTgA',
|
|
357
|
+
// prev_message:
|
|
358
|
+
// '{"catalog_id":"3567267706900621","product_items":[{"id":193,"currency":"TZS","amount":10000,"quantity":1,"description":"1 Salad Kalimiz Salad Assian Noodle Salad","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/384d26b3-87cd-407f-a9d3-7b2977ab0a22 1.jpg"}],"type":"order"}',
|
|
359
|
+
// },
|
|
625
360
|
// },
|
|
626
361
|
// {
|
|
627
|
-
//
|
|
628
|
-
//
|
|
629
|
-
// time: '
|
|
362
|
+
// id: 104729,
|
|
363
|
+
// message: 'Test',
|
|
364
|
+
// time: '2025-09-19T04:36:32.000Z',
|
|
630
365
|
// direction: 'inbound',
|
|
631
366
|
// message_type: 'text',
|
|
632
|
-
// messageId:
|
|
633
|
-
//
|
|
634
|
-
//
|
|
635
|
-
//
|
|
367
|
+
// messageId:
|
|
368
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUM1QTU1MTBBM0M2MkE1NUY3M0YyMzI1NkU1RTVEQjQA',
|
|
369
|
+
// is_live_agent: 0,
|
|
370
|
+
// is_deleted: 0,
|
|
371
|
+
// is_comment: 0,
|
|
636
372
|
// channel: 'whatsapp',
|
|
637
|
-
// sent_to_vendor:
|
|
638
|
-
// replyMessageId:
|
|
373
|
+
// sent_to_vendor: 1,
|
|
374
|
+
// replyMessageId:
|
|
375
|
+
// 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNFODBDNTNBREMyRDFCODNBNEM1NzI4QTgxNERGMTgA',
|
|
639
376
|
// agent_name: null,
|
|
640
377
|
// df_agent_name: null,
|
|
641
378
|
// resolve_time: null,
|
|
642
|
-
// metadata:
|
|
643
|
-
//
|
|
644
|
-
//
|
|
645
|
-
//
|
|
646
|
-
// id: 20147,
|
|
647
|
-
// time: '2024-01-18T09:57:52.000Z',
|
|
648
|
-
// direction: 'outbound',
|
|
649
|
-
// message_type: 'image/png',
|
|
650
|
-
// messageId: 'ea15131f-2c55-43a3-b166-c38a2c4314b1',
|
|
651
|
-
// is_live_agent: true,
|
|
652
|
-
// is_deleted: false,
|
|
653
|
-
// is_comment: false,
|
|
654
|
-
// channel: 'whatsapp',
|
|
655
|
-
// sent_to_vendor: true,
|
|
656
|
-
// replyMessageId: null,
|
|
657
|
-
// agent_name: 'arl@beem.co.tz',
|
|
658
|
-
// df_agent_name: 'Dev arl',
|
|
659
|
-
// resolve_time: null,
|
|
660
|
-
// metadata: null,
|
|
661
|
-
// statusDetails: {
|
|
662
|
-
// statusCode: 3,
|
|
379
|
+
// metadata: {
|
|
380
|
+
// id: 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNFODBDNTNBREMyRDFCODNBNEM1NzI4QTgxNERGMTgA',
|
|
381
|
+
// prev_message:
|
|
382
|
+
// '{"dotgoV2":{"type":"order","catalog":{"id":"3567267706900621","order":{"items":[{"id":181,"currency":"TZS","amount":"10000","quantity":"1","description":"1 Burger Kalimiz Burger Bollywood Paneer","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/fed84589-31c5-4ea9-8505-75ceb4932906 1.jpg"},{"id":182,"currency":"TZS","amount":"10000","quantity":"1","description":"1 Burger Kalimiz Burger Philly Beef","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/a6176a3a-a918-4623-b22d-99ceca7b9fad 1.jpg"}]}},"forwarded":false,"frequently_forwarded":false}}',
|
|
663
383
|
// },
|
|
664
384
|
// },
|
|
665
385
|
// ];
|
|
666
386
|
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
387
|
+
const metaQuickReply = [
|
|
388
|
+
{
|
|
389
|
+
id: 104759,
|
|
390
|
+
message: 'Second outbound',
|
|
391
|
+
time: '2025-09-20T05:22:38.000Z',
|
|
392
|
+
direction: 'inbound',
|
|
393
|
+
message_type: 'text',
|
|
394
|
+
messageId:
|
|
395
|
+
'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUM4M0JFNzM1QjI4QkQzQjcyQUE4ODdBQzJGMDBBQjQA',
|
|
396
|
+
is_live_agent: 0,
|
|
397
|
+
is_deleted: 0,
|
|
398
|
+
is_comment: 0,
|
|
399
|
+
channel: 'whatsapp',
|
|
400
|
+
sent_to_vendor: 1,
|
|
401
|
+
replyMessageId: '36222689-a3e0-4597-8872-9af486fd1fd7',
|
|
402
|
+
agent_name: null,
|
|
403
|
+
df_agent_name: null,
|
|
404
|
+
resolve_time: null,
|
|
405
|
+
metadata: {
|
|
406
|
+
id: '36222689-a3e0-4597-8872-9af486fd1fd7',
|
|
407
|
+
prev_message: 'second outbound initiated',
|
|
408
|
+
},
|
|
409
|
+
},
|
|
410
|
+
{
|
|
411
|
+
id: 104758,
|
|
412
|
+
message: 'Bounce',
|
|
413
|
+
time: '2025-09-20T05:19:44.000Z',
|
|
414
|
+
direction: 'inbound',
|
|
415
|
+
message_type: 'text',
|
|
416
|
+
messageId:
|
|
417
|
+
'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUMxMjAyOUQ0MDQ4MUVBNDM4NTdGNTE2NTlFMUY3REUA',
|
|
418
|
+
is_live_agent: 0,
|
|
419
|
+
is_deleted: 0,
|
|
420
|
+
is_comment: 0,
|
|
421
|
+
channel: 'whatsapp',
|
|
422
|
+
sent_to_vendor: 1,
|
|
423
|
+
replyMessageId:
|
|
424
|
+
'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUM2M0Y2OUI3RkU0RDI2MjFBMDVGRDg1N0RBQkQyMEUA',
|
|
425
|
+
agent_name: null,
|
|
426
|
+
df_agent_name: null,
|
|
427
|
+
resolve_time: null,
|
|
428
|
+
metadata: {
|
|
429
|
+
id: 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUM2M0Y2OUI3RkU0RDI2MjFBMDVGRDg1N0RBQkQyMEUA',
|
|
430
|
+
prev_message: 'Refeto secomd',
|
|
431
|
+
},
|
|
432
|
+
},
|
|
433
|
+
{
|
|
434
|
+
id: 104757,
|
|
435
|
+
message: 'Chai',
|
|
436
|
+
time: '2025-09-20T05:15:05.000Z',
|
|
437
|
+
direction: 'inbound',
|
|
438
|
+
message_type: 'text',
|
|
439
|
+
messageId:
|
|
440
|
+
'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNFNzhDMkRBOUU5OEVDQzhBNThCODhDMzg2RTNCREEA',
|
|
441
|
+
is_live_agent: 0,
|
|
442
|
+
is_deleted: 0,
|
|
443
|
+
is_comment: 0,
|
|
444
|
+
channel: 'whatsapp',
|
|
445
|
+
sent_to_vendor: 1,
|
|
446
|
+
replyMessageId: '65352cb5-3800-4e78-aaba-f01dc9aadd58',
|
|
447
|
+
agent_name: null,
|
|
448
|
+
df_agent_name: null,
|
|
449
|
+
resolve_time: null,
|
|
450
|
+
metadata: {
|
|
451
|
+
id: '65352cb5-3800-4e78-aaba-f01dc9aadd58',
|
|
452
|
+
prev_message:
|
|
453
|
+
'{\n "type":"button",\n "header":{\n "type":"image",\n "image":{\n "link":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/cook.jpg"\n }\n },\n "body":{\n "text":"Hey there! This is a Breakfast bot. \\nWhat would you like to have?"\n },\n "action":{\n "buttons":[\n {\n "type":"reply",\n "reply":{\n "id":"dev-defined-postback1",\n "title":"Tea"\n }\n },\n {\n "type":"reply",\n "reply":{\n "id":"dev-defined-postback2",\n "title":"Coffee"\n }\n },\n {\n "type":"reply",\n "reply":{\n "id":"dev-defined-postback3",\n "title":"Chat with Agent"\n }\n }\n ]\n }\n}',
|
|
454
|
+
},
|
|
455
|
+
},
|
|
456
|
+
{
|
|
457
|
+
id: 104756,
|
|
458
|
+
message: 'Price',
|
|
459
|
+
time: '2025-09-20T05:11:36.000Z',
|
|
460
|
+
direction: 'inbound',
|
|
461
|
+
message_type: 'text',
|
|
462
|
+
messageId:
|
|
463
|
+
'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUNFMkM5NTA0NzU2MTU2RjA2MTEwRDBDM0QxOTQxODIA',
|
|
464
|
+
is_live_agent: 0,
|
|
465
|
+
is_deleted: 0,
|
|
466
|
+
is_comment: 0,
|
|
467
|
+
channel: 'whatsapp',
|
|
468
|
+
sent_to_vendor: 1,
|
|
469
|
+
replyMessageId:
|
|
470
|
+
'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUMwMzk1RjQxQjg1RTU5QzAwM0M5Q0FFMTg2NEFCNDgA',
|
|
471
|
+
agent_name: null,
|
|
472
|
+
df_agent_name: null,
|
|
473
|
+
resolve_time: null,
|
|
474
|
+
metadata: {
|
|
475
|
+
id: 'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUMwMzk1RjQxQjg1RTU5QzAwM0M5Q0FFMTg2NEFCNDgA',
|
|
476
|
+
prev_message:
|
|
477
|
+
'{"catalog_id":"3567267706900621","product_items":[{"id":193,"currency":"TZS","amount":10000,"quantity":2,"description":"1 Salad Kalimiz Salad Assian Noodle Salad","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/384d26b3-87cd-407f-a9d3-7b2977ab0a22 1.jpg"}],"type":"order"}',
|
|
478
|
+
},
|
|
479
|
+
},
|
|
480
|
+
{
|
|
481
|
+
id: 104755,
|
|
482
|
+
message: 'Test',
|
|
483
|
+
time: '2025-09-20T05:11:22.000Z',
|
|
484
|
+
direction: 'inbound',
|
|
485
|
+
message_type: 'text',
|
|
486
|
+
messageId:
|
|
487
|
+
'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUMxMERENThDNDk0QjExNTE5MUFFNjgwM0M1OUU3NTMA',
|
|
488
|
+
is_live_agent: 0,
|
|
489
|
+
is_deleted: 0,
|
|
490
|
+
is_comment: 0,
|
|
491
|
+
channel: 'whatsapp',
|
|
492
|
+
sent_to_vendor: 1,
|
|
493
|
+
replyMessageId: '47a32fc1-7684-47e7-bff7-6eb0951663cb',
|
|
494
|
+
agent_name: null,
|
|
495
|
+
df_agent_name: null,
|
|
496
|
+
resolve_time: null,
|
|
497
|
+
metadata: {
|
|
498
|
+
id: '47a32fc1-7684-47e7-bff7-6eb0951663cb',
|
|
499
|
+
prev_message:
|
|
500
|
+
'{"dotgoV2":{"type":"product_details","subType":"product_list","catalogId":"3567267706900621","header":{"text":"View Menu"},"body":{"text":"Menu included \\n "},"footer":{"text":"sdefsdfsdf"},"sections":[{"title":"Title 1","productList":[{"productId":181}]}]}}',
|
|
501
|
+
},
|
|
502
|
+
},
|
|
503
|
+
{
|
|
504
|
+
id: 104754,
|
|
505
|
+
message:
|
|
506
|
+
'{"dotgoV2":{"type":"quick_reply","content":{"type":"text","header":"","text":"Successfully end the session.","caption":""},"options":[{"type":"text","title":"Main Menu","postbackText":"dev-defined-postback1"}]}}',
|
|
507
|
+
time: '2025-09-20T02:20:00.000Z',
|
|
508
|
+
direction: 'outbound',
|
|
509
|
+
message_type: 'interactive',
|
|
510
|
+
messageId: null,
|
|
511
|
+
is_live_agent: 1,
|
|
512
|
+
is_deleted: 0,
|
|
513
|
+
is_comment: 0,
|
|
514
|
+
channel: 'whatsapp',
|
|
515
|
+
sent_to_vendor: 1,
|
|
516
|
+
replyMessageId: null,
|
|
517
|
+
agent_name: null,
|
|
518
|
+
df_agent_name: null,
|
|
519
|
+
resolve_time: null,
|
|
520
|
+
metadata: null,
|
|
521
|
+
statusDetails: {
|
|
522
|
+
statusCode: 3,
|
|
523
|
+
},
|
|
524
|
+
},
|
|
525
|
+
{
|
|
526
|
+
id: 104752,
|
|
527
|
+
message:
|
|
528
|
+
'{"dotgoV2":{"type":"product_details","subType":"product_list","catalogId":"3567267706900621","header":{"text":"View Menu"},"body":{"text":"Menu included \\n "},"footer":{"text":"sdefsdfsdf"},"sections":[{"title":"Title 1","productList":[{"productId":181}]}]}}',
|
|
529
|
+
time: '2025-09-19T08:24:49.000Z',
|
|
530
|
+
direction: 'outbound',
|
|
531
|
+
message_type: 'interactive',
|
|
532
|
+
messageId: '47a32fc1-7684-47e7-bff7-6eb0951663cb',
|
|
533
|
+
is_live_agent: 0,
|
|
534
|
+
is_deleted: 0,
|
|
535
|
+
is_comment: 0,
|
|
536
|
+
channel: 'whatsapp',
|
|
537
|
+
sent_to_vendor: 1,
|
|
538
|
+
replyMessageId: null,
|
|
539
|
+
agent_name: 'mustafa.s@beem.africa',
|
|
540
|
+
df_agent_name: 'Mustafa Saifuddin',
|
|
541
|
+
resolve_time: null,
|
|
542
|
+
metadata: null,
|
|
543
|
+
statusDetails: {
|
|
544
|
+
statusCode: 3,
|
|
545
|
+
},
|
|
546
|
+
},
|
|
547
|
+
{
|
|
548
|
+
id: 104751,
|
|
549
|
+
message:
|
|
550
|
+
'{"catalog_id":"3567267706900621","product_items":[{"id":193,"currency":"TZS","amount":10000,"quantity":2,"description":"1 Salad Kalimiz Salad Assian Noodle Salad","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/384d26b3-87cd-407f-a9d3-7b2977ab0a22 1.jpg"}],"type":"order"}',
|
|
551
|
+
time: '2025-09-19T06:30:24.000Z',
|
|
552
|
+
direction: 'inbound',
|
|
553
|
+
message_type: 'order',
|
|
554
|
+
messageId:
|
|
555
|
+
'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUMwMzk1RjQxQjg1RTU5QzAwM0M5Q0FFMTg2NEFCNDgA',
|
|
556
|
+
is_live_agent: 0,
|
|
557
|
+
is_deleted: 0,
|
|
558
|
+
is_comment: 0,
|
|
559
|
+
channel: 'whatsapp',
|
|
560
|
+
sent_to_vendor: 1,
|
|
561
|
+
replyMessageId: null,
|
|
562
|
+
agent_name: null,
|
|
563
|
+
df_agent_name: null,
|
|
564
|
+
resolve_time: null,
|
|
565
|
+
metadata: null,
|
|
566
|
+
},
|
|
567
|
+
{
|
|
568
|
+
id: 104750,
|
|
569
|
+
message:
|
|
570
|
+
'{"catalog_id":"3567267706900621","product_items":[{"id":193,"currency":"TZS","amount":10000,"quantity":1,"description":"1 Salad Kalimiz Salad Assian Noodle Salad","imgURL":"https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/384d26b3-87cd-407f-a9d3-7b2977ab0a22 1.jpg"}],"type":"order"}',
|
|
571
|
+
time: '2025-09-19T06:29:51.000Z',
|
|
572
|
+
direction: 'inbound',
|
|
573
|
+
message_type: 'order',
|
|
574
|
+
messageId:
|
|
575
|
+
'wamid.HBgMMjU1NzgyMjcwMDUyFQIAEhggQUM1RDIwQjEyQTY1N0FFMDQzMkU1QUI0MTBENTIyRDkA',
|
|
576
|
+
is_live_agent: 0,
|
|
577
|
+
is_deleted: 0,
|
|
578
|
+
is_comment: 0,
|
|
579
|
+
channel: 'whatsapp',
|
|
580
|
+
sent_to_vendor: 1,
|
|
581
|
+
replyMessageId: null,
|
|
582
|
+
agent_name: null,
|
|
583
|
+
df_agent_name: null,
|
|
584
|
+
resolve_time: null,
|
|
585
|
+
metadata: null,
|
|
586
|
+
},
|
|
587
|
+
{
|
|
588
|
+
id: 104749,
|
|
589
|
+
message:
|
|
590
|
+
'{"dotgoV2":{"type":"product_details","subType":"product_list","catalogId":"3567267706900621","header":{"text":"View Menu"},"body":{"text":"Menu included \\n "},"footer":{"text":"sdefsdfsdf"},"sections":[{"title":"Title 1","productList":[{"productId":193}]}]}}',
|
|
591
|
+
time: '2025-09-19T06:29:35.000Z',
|
|
592
|
+
direction: 'outbound',
|
|
593
|
+
message_type: 'interactive',
|
|
594
|
+
messageId: '5f8f5ccc-3a34-44f1-acd6-92c7cad311c8',
|
|
595
|
+
is_live_agent: 0,
|
|
596
|
+
is_deleted: 0,
|
|
597
|
+
is_comment: 0,
|
|
598
|
+
channel: 'whatsapp',
|
|
599
|
+
sent_to_vendor: 1,
|
|
600
|
+
replyMessageId: null,
|
|
601
|
+
agent_name: 'mustafa.s@beem.africa',
|
|
602
|
+
df_agent_name: 'Mustafa Saifuddin',
|
|
603
|
+
resolve_time: null,
|
|
604
|
+
metadata: null,
|
|
605
|
+
statusDetails: {
|
|
606
|
+
statusCode: 3,
|
|
607
|
+
},
|
|
608
|
+
},
|
|
609
|
+
{
|
|
610
|
+
id: 109370,
|
|
611
|
+
message:
|
|
612
|
+
'{ "dotgoV2": { "type": "image", "caption": "To register for AzamTV MAX, you need to download the AzamTV MAX App from Google Play Store or Apple App Store. \\n\\nOnce you have downloaded the App, follow these steps to register: \\n1. Open the App and click on REGISTER. \\n2. Enter your mobile number. \\n3. Enter the OTP sent to your mobile number. \\n4. Enter your details (Name, Surname, Email, Password) \\n5. Click on REGISTER. \\n\\nDo you need any further assistance?", "originalUrl": "https://imgur.com/JyXrxLv.png", "previewUrl": "https://imgur.com/JyXrxLv.png" }}',
|
|
613
|
+
time: '2025-10-06T10:53:38.000Z',
|
|
614
|
+
direction: 'outbound',
|
|
615
|
+
message_type: 'interactive',
|
|
616
|
+
messageId: '121302f4-50ca-48c3-a32a-2d570064a000',
|
|
617
|
+
is_live_agent: 0,
|
|
618
|
+
is_deleted: 0,
|
|
619
|
+
is_comment: 0,
|
|
620
|
+
channel: 'whatsapp',
|
|
621
|
+
sent_to_vendor: 1,
|
|
622
|
+
replyMessageId: null,
|
|
623
|
+
agent_name: null,
|
|
624
|
+
df_agent_name: null,
|
|
625
|
+
resolve_time: null,
|
|
626
|
+
metadata: null,
|
|
627
|
+
statusDetails: {
|
|
628
|
+
statusCode: 3,
|
|
629
|
+
},
|
|
630
|
+
},
|
|
631
|
+
{
|
|
632
|
+
id: 109414,
|
|
633
|
+
message: 'Reply',
|
|
634
|
+
time: '2025-10-06T11:31:15.000Z',
|
|
635
|
+
direction: 'inbound',
|
|
636
|
+
message_type: 'text',
|
|
637
|
+
messageId: null,
|
|
638
|
+
is_live_agent: 0,
|
|
639
|
+
is_deleted: 0,
|
|
640
|
+
is_comment: 0,
|
|
641
|
+
channel: 'whatsapp',
|
|
642
|
+
sent_to_vendor: 1,
|
|
643
|
+
replyMessageId: '121302f4-50ca-48c3-a32a-2d570064a000',
|
|
644
|
+
agent_name: null,
|
|
645
|
+
df_agent_name: null,
|
|
646
|
+
resolve_time: null,
|
|
647
|
+
metadata: {
|
|
648
|
+
id: '121302f4-50ca-48c3-a32a-2d570064a000',
|
|
649
|
+
prev_message:
|
|
650
|
+
'{ "dotgoV2": { "type": "image", "caption": "To register for AzamTV MAX, you need to download the AzamTV MAX App from Google Play Store or Apple App Store. \\n\\nOnce you have downloaded the App, follow these steps to register: \\n1. Open the App and click on REGISTER. \\n2. Enter your mobile number. \\n3. Enter the OTP sent to your mobile number. \\n4. Enter your details (Name, Surname, Email, Password) \\n5. Click on REGISTER. \\n\\nDo you need any further assistance?", "originalUrl": "https://imgur.com/JyXrxLv.png", "previewUrl": "https://imgur.com/JyXrxLv.png" }}',
|
|
651
|
+
},
|
|
652
|
+
},
|
|
653
|
+
{
|
|
654
|
+
id: 109469,
|
|
655
|
+
message: 'Image reply',
|
|
656
|
+
time: '2025-10-06T11:38:34.000Z',
|
|
657
|
+
direction: 'inbound',
|
|
658
|
+
message_type: 'text',
|
|
659
|
+
messageId: null,
|
|
660
|
+
is_live_agent: 1,
|
|
661
|
+
is_deleted: 0,
|
|
662
|
+
is_comment: 0,
|
|
663
|
+
channel: 'whatsapp',
|
|
664
|
+
sent_to_vendor: 1,
|
|
665
|
+
replyMessageId: null,
|
|
666
|
+
agent_name: null,
|
|
667
|
+
df_agent_name: null,
|
|
668
|
+
resolve_time: null,
|
|
669
|
+
metadata: {
|
|
670
|
+
id: 'wamid.HBgMMjU1Njg3MzQ5NTgxFQIAEhgUM0E1NTVGOThBMzk0NTM1OTgyQTMA',
|
|
671
|
+
prev_message:
|
|
672
|
+
'https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/081c00de-cc02-44f2-bd91-5cf3a5a73d09.jpeg',
|
|
673
|
+
},
|
|
674
|
+
},
|
|
675
|
+
// {
|
|
676
|
+
// id: 109370,
|
|
677
|
+
// message:
|
|
678
|
+
// '{"call_id":"1764099020.52","time_start":"2025-11-25 22:30:20","call_from":"004","call_to":"0782270052","call_duration":2,"talk_duration":129,"src_trunk_name":"","dst_trunk_name":"drtest3cx","pin_code":"","status":"ANSWERED","type":"Outbound","recording":"","did_number":"","did_name":"","agent_ring_time":0,"uid":"202511252230209719F","call_note_id":"20251125223020-33142","enb_call_note":16}',
|
|
679
|
+
// time: '2025-10-06T10:53:38.000Z',
|
|
680
|
+
// direction: 'outbound',
|
|
681
|
+
// message_type: 'call',
|
|
682
|
+
// messageId: '121302f4-50ca-48c3-a32a-2d570064a000',
|
|
683
|
+
// is_live_agent: 0,
|
|
684
|
+
// is_deleted: 0,
|
|
685
|
+
// is_comment: 0,
|
|
686
|
+
// channel: 'voice_call',
|
|
687
|
+
// sent_to_vendor: 1,
|
|
688
|
+
// replyMessageId: null,
|
|
689
|
+
|
|
690
|
+
// agent_name: null,
|
|
691
|
+
// df_agent_name: null,
|
|
692
|
+
// resolve_time: null,
|
|
693
|
+
// metadata: null,
|
|
694
|
+
// statusDetails: {
|
|
695
|
+
// statusCode: 3,
|
|
696
|
+
// },
|
|
697
|
+
// },
|
|
698
|
+
// {
|
|
699
|
+
// id: 109370,
|
|
700
|
+
// message:
|
|
701
|
+
// '{"call_id":"1764099020.52","time_start":"2025-11-25 22:30:20","call_from":"004","call_to":"0782270052","call_duration":2,"talk_duration":129,"src_trunk_name":"","dst_trunk_name":"drtest3cx","pin_code":"","status":"NO ANSWER","type":"Outbound","recording":"","did_number":"","did_name":"","agent_ring_time":0,"uid":"202511252230209719F","call_note_id":"20251125223020-33142","enb_call_note":16}',
|
|
702
|
+
// time: '2025-10-06T10:53:38.000Z',
|
|
703
|
+
// direction: 'outbound',
|
|
704
|
+
// message_type: 'call',
|
|
705
|
+
// messageId: '121302f4-50ca-48c3-a32a-2d570064a000',
|
|
706
|
+
// is_live_agent: 0,
|
|
707
|
+
// is_deleted: 0,
|
|
708
|
+
// is_comment: 0,
|
|
709
|
+
// channel: 'voice_call',
|
|
710
|
+
// sent_to_vendor: 1,
|
|
711
|
+
// replyMessageId: null,
|
|
712
|
+
|
|
713
|
+
// agent_name: null,
|
|
714
|
+
// df_agent_name: null,
|
|
715
|
+
// resolve_time: null,
|
|
716
|
+
// metadata: null,
|
|
717
|
+
// statusDetails: {
|
|
718
|
+
// statusCode: 3,
|
|
719
|
+
// },
|
|
720
|
+
// },
|
|
721
|
+
{
|
|
722
|
+
id: 109373,
|
|
723
|
+
message:
|
|
724
|
+
'{"type":"call","status":"in_progress","call_started_at":"2026-01-01T09:35:00.000Z","message":"Call in progress"}',
|
|
725
|
+
time: '2025-10-06T10:53:38.000Z',
|
|
726
|
+
direction: 'outbound',
|
|
727
|
+
message_type: 'interactive',
|
|
728
|
+
messageId: '121302f4-50ca-48c3-a32a-2d570064a000',
|
|
729
|
+
is_live_agent: 0,
|
|
730
|
+
is_deleted: 0,
|
|
731
|
+
is_comment: 0,
|
|
732
|
+
channel: 'voice_call',
|
|
733
|
+
sent_to_vendor: 1,
|
|
734
|
+
replyMessageId: null,
|
|
735
|
+
|
|
736
|
+
agent_name: null,
|
|
737
|
+
df_agent_name: null,
|
|
738
|
+
resolve_time: null,
|
|
739
|
+
metadata: null,
|
|
740
|
+
statusDetails: {
|
|
741
|
+
statusCode: 3,
|
|
742
|
+
},
|
|
743
|
+
},
|
|
744
|
+
{
|
|
745
|
+
id: 109373,
|
|
746
|
+
message:
|
|
747
|
+
'{"type":"call","status":"answered","call_started_at":"2026-01-01T09:35:00.000Z","message":{"call_id":"1764099020.52","time_start":"2025-11-25 22:30:20","call_from":"004","call_to":"0782270052","call_duration":2,"talk_duration":129,"src_trunk_name":"","dst_trunk_name":"drtest3cx","pin_code":"","status":"NO ANSWER","type":"Outbound","recording":"","did_number":"","did_name":"","agent_ring_time":0,"uid":"202511252230209719F","call_note_id":"20251125223020-33142","enb_call_note":16}}',
|
|
748
|
+
time: '2025-10-06T10:53:38.000Z',
|
|
749
|
+
direction: 'inbound',
|
|
750
|
+
message_type: 'interactive',
|
|
751
|
+
messageId: '121302f4-50ca-48c3-a32a-2d570064a000',
|
|
752
|
+
is_live_agent: 0,
|
|
753
|
+
is_deleted: 0,
|
|
754
|
+
is_comment: 0,
|
|
755
|
+
channel: 'voice_call',
|
|
756
|
+
sent_to_vendor: 1,
|
|
757
|
+
replyMessageId: null,
|
|
758
|
+
|
|
759
|
+
agent_name: null,
|
|
760
|
+
df_agent_name: null,
|
|
761
|
+
resolve_time: null,
|
|
762
|
+
metadata: null,
|
|
763
|
+
statusDetails: {
|
|
764
|
+
statusCode: 3,
|
|
765
|
+
},
|
|
766
|
+
},
|
|
767
|
+
{
|
|
768
|
+
id: 109373,
|
|
769
|
+
message:
|
|
770
|
+
'{"type":"call","status":"no answer","call_started_at":"2026-01-01T09:35:00.000Z","message":{"call_id":"1764099020.52","time_start":"2025-11-25 22:30:20","call_from":"004","call_to":"0782270052","call_duration":2,"talk_duration":129,"src_trunk_name":"","dst_trunk_name":"drtest3cx","pin_code":"","status":"NO ANSWER","type":"Outbound","recording":"","did_number":"","did_name":"","agent_ring_time":0,"uid":"202511252230209719F","call_note_id":"20251125223020-33142","enb_call_note":16}}',
|
|
771
|
+
time: '2025-10-06T10:53:38.000Z',
|
|
772
|
+
direction: 'inbound',
|
|
773
|
+
message_type: 'interactive',
|
|
774
|
+
messageId: '121302f4-50ca-48c3-a32a-2d570064a000',
|
|
775
|
+
is_live_agent: 0,
|
|
776
|
+
is_deleted: 0,
|
|
777
|
+
is_comment: 0,
|
|
778
|
+
channel: 'voice_call',
|
|
779
|
+
sent_to_vendor: 1,
|
|
780
|
+
replyMessageId: null,
|
|
781
|
+
|
|
782
|
+
agent_name: null,
|
|
783
|
+
df_agent_name: null,
|
|
784
|
+
resolve_time: null,
|
|
785
|
+
metadata: null,
|
|
786
|
+
statusDetails: {
|
|
787
|
+
statusCode: 3,
|
|
788
|
+
},
|
|
789
|
+
},
|
|
790
|
+
{
|
|
791
|
+
id: 109373,
|
|
792
|
+
message:
|
|
793
|
+
'{"type":"call","status":"no answer","call_started_at":"2026-01-01T09:35:00.000Z","message":{"call_id":"1764099020.52","time_start":"2025-11-25 22:30:20","call_from":"004","call_to":"0782270052","call_duration":2,"talk_duration":129,"src_trunk_name":"","dst_trunk_name":"drtest3cx","pin_code":"","status":"NO ANSWER","type":"Outbound","recording":"","did_number":"","did_name":"","agent_ring_time":0,"uid":"202511252230209719F","call_note_id":"20251125223020-33142","enb_call_note":16}}',
|
|
794
|
+
time: '2025-10-06T10:53:38.000Z',
|
|
795
|
+
direction: 'outbound',
|
|
796
|
+
message_type: 'interactive',
|
|
797
|
+
messageId: '121302f4-50ca-48c3-a32a-2d570064a000',
|
|
798
|
+
is_live_agent: 0,
|
|
799
|
+
is_deleted: 0,
|
|
800
|
+
is_comment: 0,
|
|
801
|
+
channel: 'voice_call',
|
|
802
|
+
sent_to_vendor: 1,
|
|
803
|
+
replyMessageId: null,
|
|
804
|
+
|
|
805
|
+
agent_name: null,
|
|
806
|
+
df_agent_name: null,
|
|
807
|
+
resolve_time: null,
|
|
808
|
+
metadata: null,
|
|
809
|
+
statusDetails: {
|
|
810
|
+
statusCode: 3,
|
|
811
|
+
},
|
|
812
|
+
},
|
|
813
|
+
];
|
|
814
|
+
const isJson = (itemOg) => {
|
|
815
|
+
let item = itemOg;
|
|
816
|
+
item = typeof item !== 'string' ? JSON.stringify(item) : item;
|
|
817
|
+
|
|
818
|
+
try {
|
|
819
|
+
item = JSON.parse(item);
|
|
820
|
+
} catch (e) {
|
|
821
|
+
return false;
|
|
822
|
+
}
|
|
823
|
+
return typeof item === 'object' && item !== null;
|
|
824
|
+
};
|
|
825
|
+
const renderJsonMessageMeta = (msg) => {
|
|
728
826
|
let parsedMessage;
|
|
827
|
+
|
|
729
828
|
try {
|
|
730
|
-
parsedMessage = JSON.parse(
|
|
829
|
+
parsedMessage = JSON.parse(msg.message);
|
|
731
830
|
} catch (error) {
|
|
732
831
|
console.error('Error parsing JSON:', error);
|
|
733
832
|
return null;
|
|
734
833
|
}
|
|
735
834
|
|
|
736
|
-
console.log(message.message_type);
|
|
737
835
|
const dotGoV2Content = parsedMessage?.dotgoV2;
|
|
836
|
+
const finalMessage = dotGoV2Content || parsedMessage;
|
|
837
|
+
const connector = dotGoV2Content ? 'dotgo_v2' : 'dotgo_v3';
|
|
738
838
|
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
if (items.length === 0) {
|
|
742
|
-
return 0;
|
|
743
|
-
}
|
|
744
|
-
|
|
745
|
-
// Use reduce to calculate total
|
|
746
|
-
const totalValue = items.reduce((total, item) => {
|
|
747
|
-
return total + item.amount * item.quantity;
|
|
748
|
-
}, 0);
|
|
839
|
+
const calculateOrderSummary = (items) => {
|
|
840
|
+
if (!items || items.length === 0) return 0;
|
|
749
841
|
|
|
842
|
+
const totalValue = items.reduce(
|
|
843
|
+
(sum, item) => sum + item.amount * item.quantity,
|
|
844
|
+
0
|
|
845
|
+
);
|
|
750
846
|
const currency = items[0]?.currency || '';
|
|
751
|
-
const count = items.length;
|
|
752
847
|
const formattedTotal = totalValue.toLocaleString('en-US');
|
|
753
848
|
|
|
754
|
-
return {
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
};
|
|
761
|
-
// const [checkboxVisibility, setCheckboxVisibility] = useState([]);
|
|
849
|
+
return {
|
|
850
|
+
amount: `${currency} ${formattedTotal}`,
|
|
851
|
+
count: items.length,
|
|
852
|
+
items,
|
|
853
|
+
};
|
|
854
|
+
};
|
|
762
855
|
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
// setCheckboxVisibility(updatedVisibility); // Update the state
|
|
768
|
-
// };
|
|
856
|
+
if (msg.message_type === 'order' && finalMessage?.type === 'order') {
|
|
857
|
+
const items = dotGoV2Content
|
|
858
|
+
? finalMessage?.catalog?.order?.items || []
|
|
859
|
+
: finalMessage?.product_items || [];
|
|
769
860
|
|
|
770
|
-
|
|
771
|
-
const parsedMessage = {
|
|
772
|
-
dotgoV2: {
|
|
773
|
-
type: 'order',
|
|
774
|
-
catalog: {
|
|
775
|
-
id: '1828458897997668',
|
|
776
|
-
order: {
|
|
777
|
-
items: [
|
|
778
|
-
{
|
|
779
|
-
id: '147',
|
|
780
|
-
currency: 'USD',
|
|
781
|
-
amount: '960',
|
|
782
|
-
quantity: '1',
|
|
783
|
-
},
|
|
784
|
-
{
|
|
785
|
-
id: '144',
|
|
786
|
-
currency: 'USD',
|
|
787
|
-
amount: '505',
|
|
788
|
-
quantity: '1',
|
|
789
|
-
},
|
|
790
|
-
{
|
|
791
|
-
id: '145',
|
|
792
|
-
currency: 'USD',
|
|
793
|
-
amount: '505',
|
|
794
|
-
quantity: '1',
|
|
795
|
-
},
|
|
796
|
-
{
|
|
797
|
-
id: '148',
|
|
798
|
-
currency: 'USD',
|
|
799
|
-
amount: '505',
|
|
800
|
-
quantity: '1',
|
|
801
|
-
},
|
|
802
|
-
{
|
|
803
|
-
id: '149',
|
|
804
|
-
currency: 'USD',
|
|
805
|
-
amount: '505',
|
|
806
|
-
quantity: '1',
|
|
807
|
-
},
|
|
808
|
-
{
|
|
809
|
-
id: '146',
|
|
810
|
-
currency: 'USD',
|
|
811
|
-
amount: '960',
|
|
812
|
-
quantity: '1',
|
|
813
|
-
},
|
|
814
|
-
],
|
|
815
|
-
},
|
|
816
|
-
},
|
|
817
|
-
forwarded: false,
|
|
818
|
-
frequently_forwarded: false,
|
|
819
|
-
},
|
|
820
|
-
};
|
|
821
|
-
const dotGoV2Content = parsedMessage?.dotgoV2;
|
|
822
|
-
const items = dotGoV2Content?.catalog?.order?.items || [];
|
|
823
|
-
if (items.length === 0) {
|
|
824
|
-
return { amount: 0, type: 'order', count: 0 };
|
|
825
|
-
}
|
|
861
|
+
const summary = calculateOrderSummary(items);
|
|
826
862
|
|
|
827
|
-
|
|
828
|
-
return total + item.amount * item.quantity;
|
|
829
|
-
}, 0);
|
|
863
|
+
if (summary === 0) return { amount: 0, type: 'order', count: 0 };
|
|
830
864
|
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
865
|
+
return {
|
|
866
|
+
message: dotGoV2Content
|
|
867
|
+
? { ...summary, type: 'order' }
|
|
868
|
+
: { ...summary, type: 'order', product_items: items },
|
|
869
|
+
connector,
|
|
870
|
+
};
|
|
871
|
+
}
|
|
872
|
+
if (finalMessage?.type === 'call') {
|
|
873
|
+
return {
|
|
874
|
+
message: finalMessage,
|
|
875
|
+
connector: 'yeastar',
|
|
876
|
+
};
|
|
877
|
+
}
|
|
834
878
|
|
|
879
|
+
console.log(finalMessage);
|
|
835
880
|
return {
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
count,
|
|
839
|
-
items: [
|
|
840
|
-
{
|
|
841
|
-
id: 147,
|
|
842
|
-
currency: 'USD',
|
|
843
|
-
amount: '960',
|
|
844
|
-
quantity: '1',
|
|
845
|
-
description: '18" Zuri Wig Straight Miss Van Platinum Blonde',
|
|
846
|
-
imgURL:
|
|
847
|
-
'https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/Miss Van.jpg',
|
|
848
|
-
},
|
|
849
|
-
{
|
|
850
|
-
id: 144,
|
|
851
|
-
currency: 'USD',
|
|
852
|
-
amount: '505',
|
|
853
|
-
quantity: '1',
|
|
854
|
-
description: '10" Zuri Wig Straight Mirna Caramel Brown',
|
|
855
|
-
imgURL:
|
|
856
|
-
'https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/Wig Mirna.jpg',
|
|
857
|
-
},
|
|
858
|
-
{
|
|
859
|
-
id: 145,
|
|
860
|
-
currency: 'USD',
|
|
861
|
-
amount: '505',
|
|
862
|
-
quantity: '1',
|
|
863
|
-
description: '20" Zuri Wig Straight Mirna Caramel Brown',
|
|
864
|
-
imgURL:
|
|
865
|
-
'https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/Wig Mirna.jpg',
|
|
866
|
-
},
|
|
867
|
-
{
|
|
868
|
-
id: 148,
|
|
869
|
-
currency: 'USD',
|
|
870
|
-
amount: '505',
|
|
871
|
-
quantity: '1',
|
|
872
|
-
description: '10" Zuri Wig Straight Monroe Platinum Blonde',
|
|
873
|
-
imgURL:
|
|
874
|
-
'https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/monroe-wig-14.jpg',
|
|
875
|
-
},
|
|
876
|
-
{
|
|
877
|
-
id: 149,
|
|
878
|
-
currency: 'USD',
|
|
879
|
-
amount: '505',
|
|
880
|
-
quantity: '1',
|
|
881
|
-
description: '14" Zuri Wig Straight Monroe Platinum Blonde',
|
|
882
|
-
imgURL:
|
|
883
|
-
'https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/monroe-wig-14.jpg',
|
|
884
|
-
},
|
|
885
|
-
{
|
|
886
|
-
id: 146,
|
|
887
|
-
currency: 'USD',
|
|
888
|
-
amount: '960',
|
|
889
|
-
quantity: '1',
|
|
890
|
-
description: '14" Zuri Wig Straight Miss Van Platinum Blonde',
|
|
891
|
-
imgURL:
|
|
892
|
-
'https://bm-chatbot-images.s3.eu-west-1.amazonaws.com/Miss Van.jpg',
|
|
893
|
-
},
|
|
894
|
-
],
|
|
881
|
+
message: finalMessage,
|
|
882
|
+
connector,
|
|
895
883
|
};
|
|
896
884
|
};
|
|
897
885
|
|
|
898
|
-
const
|
|
899
|
-
|
|
900
|
-
const dotGoV2Content = parsedMessage?.dotgoV2;
|
|
901
|
-
console.log({ parsedMessage });
|
|
902
|
-
console.log({ dotGoV2Content });
|
|
903
|
-
return dotGoV2Content;
|
|
904
|
-
};
|
|
905
|
-
// console.log(data);
|
|
906
|
-
const image =
|
|
907
|
-
'https://media4.giphy.com/media/v1.Y2lkPTc5MGI3NjExc2w1ZnI0OW5xdHk4eXU3bXg3ODFmMmxpZThnYmF2bnNudDN4dXlmaiZlcD12MV9naWZzX3NlYXJjaCZjdD1n/sGsoN9tI8a1k04pNcf/giphy.webp';
|
|
908
|
-
|
|
909
|
-
// State to manage the visibility of checkboxes
|
|
910
|
-
|
|
911
|
-
// Handler function for the checkbox change event
|
|
912
|
-
|
|
913
|
-
const [currentStep, setCurrentStep] = useState(1);
|
|
886
|
+
const renderMetadataJsonMessage = (metadata) => {
|
|
887
|
+
let parsedMessage;
|
|
914
888
|
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
// {
|
|
922
|
-
// label: '10:00 AM - 10:30 AM',
|
|
923
|
-
// value: { startDate: '10:00 AM', endDate: '10:30 AM' },
|
|
924
|
-
// },
|
|
925
|
-
// {
|
|
926
|
-
// label: '10:30 AM - 11:10 AM',
|
|
927
|
-
// value: { startDate: '10:30 AM', endDate: '11:00 AM' },
|
|
928
|
-
// },
|
|
929
|
-
// ];
|
|
930
|
-
// console.log({ selected });
|
|
889
|
+
try {
|
|
890
|
+
parsedMessage = JSON.parse(metadata.prev_message);
|
|
891
|
+
} catch (error) {
|
|
892
|
+
console.error('Error parsing JSON:', error);
|
|
893
|
+
return null;
|
|
894
|
+
}
|
|
931
895
|
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
timeSlot: '09:00 - 09:30',
|
|
937
|
-
name: 'Jane Smith',
|
|
938
|
-
phone: '+1234567890',
|
|
939
|
-
email: 'jane.smith@example.com',
|
|
940
|
-
};
|
|
941
|
-
const slots = [
|
|
942
|
-
{
|
|
943
|
-
id: 'slot-1',
|
|
944
|
-
label: '10:00 AM - 10:30 AM',
|
|
945
|
-
value: { startDate: '10:00 AM', endDate: '10:30 AM' },
|
|
946
|
-
},
|
|
947
|
-
{
|
|
948
|
-
id: 'slot-2',
|
|
949
|
-
label: '10:30 AM - 11:10 AM',
|
|
950
|
-
value: { startDate: '10:30 AM', endDate: '11:10 AM' },
|
|
951
|
-
},
|
|
952
|
-
];
|
|
896
|
+
const dotGoV2Content = parsedMessage?.dotgoV2;
|
|
897
|
+
const finalMessage = dotGoV2Content || parsedMessage;
|
|
898
|
+
const connector = dotGoV2Content ? 'dotgo_v2' : 'dotgo_v3';
|
|
899
|
+
console.log({ finalMessage });
|
|
953
900
|
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
<>
|
|
958
|
-
<GlobalStyle />
|
|
959
|
-
<BmSelector
|
|
960
|
-
data={slots}
|
|
961
|
-
selectedDataId={selectedSlotId}
|
|
962
|
-
onChange={setSelectedSlotId}
|
|
963
|
-
icon={AccessTimeIcon}
|
|
964
|
-
themeColor="#33B1BA"
|
|
965
|
-
/>
|
|
901
|
+
const calculateOrderSummary = (items) => {
|
|
902
|
+
console.log({ items });
|
|
903
|
+
if (!items || items.length === 0) return 0;
|
|
966
904
|
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
905
|
+
const totalValue = items.reduce(
|
|
906
|
+
(sum, item) => sum + item.amount * item.quantity,
|
|
907
|
+
0
|
|
908
|
+
);
|
|
909
|
+
const currency = items[0]?.currency || '';
|
|
910
|
+
const formattedTotal = totalValue.toLocaleString('en-US');
|
|
970
911
|
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
912
|
+
console.log({ formattedTotal });
|
|
913
|
+
return {
|
|
914
|
+
amount: `${currency} ${formattedTotal}`,
|
|
915
|
+
count: items.length,
|
|
916
|
+
items,
|
|
917
|
+
};
|
|
918
|
+
};
|
|
977
919
|
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
>
|
|
983
|
-
Previous
|
|
984
|
-
</button>
|
|
985
|
-
<button
|
|
986
|
-
type="button"
|
|
987
|
-
onClick={() =>
|
|
988
|
-
setCurrentStep((prev) => Math.min(prev + 1, steps.length - 1))
|
|
989
|
-
}
|
|
990
|
-
>
|
|
991
|
-
Next
|
|
992
|
-
</button>
|
|
993
|
-
</div> */}
|
|
994
|
-
</div>
|
|
995
|
-
<BmCardv2 borderColor="#33B1BA" borderWidth="1.5px">
|
|
996
|
-
<BmCardv2.Header>
|
|
997
|
-
<BmCardv2.Title>Profile</BmCardv2.Title>
|
|
998
|
-
<BmCardv2.Description>
|
|
999
|
-
Manage your settings below
|
|
1000
|
-
</BmCardv2.Description>
|
|
1001
|
-
</BmCardv2.Header>
|
|
1002
|
-
<BmCardv2.Content>
|
|
1003
|
-
<BmInfoPanel>
|
|
1004
|
-
<BmInfoPanel.Section
|
|
1005
|
-
title="Appointment Details"
|
|
1006
|
-
icon={CalendarTodayIcon}
|
|
1007
|
-
backgroundColor="#fcba03"
|
|
1008
|
-
iconColor="#fcba03"
|
|
1009
|
-
>
|
|
1010
|
-
<BmInfoPanel.SectionSummary
|
|
1011
|
-
iconColor="#33B1BA"
|
|
1012
|
-
textColor="#fcba03"
|
|
1013
|
-
icon={CalendarTodayIcon}
|
|
1014
|
-
title={formData.departmentName}
|
|
1015
|
-
subtitle="Department"
|
|
1016
|
-
// iconBackgroundColor
|
|
1017
|
-
/>
|
|
1018
|
-
<BmInfoPanel.SectionSummary
|
|
1019
|
-
icon={BusinessIcon}
|
|
1020
|
-
title={formData.departmentName}
|
|
1021
|
-
subtitle="Department"
|
|
1022
|
-
/>
|
|
1023
|
-
</BmInfoPanel.Section>
|
|
1024
|
-
</BmInfoPanel>
|
|
1025
|
-
<BmInfoPanel>
|
|
1026
|
-
{/* <BmInfoPanel.Section
|
|
1027
|
-
title="Appointment Details"
|
|
1028
|
-
icon={CalendarTodayIcon}
|
|
1029
|
-
background_color="rgba(51, 177, 186, 0.05)"
|
|
1030
|
-
>
|
|
1031
|
-
<BmInfoPanel.Row label="Type" value={appointmentDetails.title} />
|
|
1032
|
-
<BmInfoPanel.Row
|
|
1033
|
-
label="Department"
|
|
1034
|
-
value={formData.departmentName}
|
|
1035
|
-
/>
|
|
1036
|
-
<BmInfoPanel.Row label="Resource" value={formData.resourceName} />
|
|
1037
|
-
<BmInfoPanel.Row
|
|
1038
|
-
label="Duration"
|
|
1039
|
-
value={appointmentDetails.duration}
|
|
1040
|
-
/>
|
|
1041
|
-
<BmInfoPanel.Row
|
|
1042
|
-
label="Date"
|
|
1043
|
-
value={formData.date.toDateString()}
|
|
1044
|
-
/>
|
|
1045
|
-
<BmInfoPanel.Row
|
|
1046
|
-
label="Time"
|
|
1047
|
-
value={formData.timeSlot.split(' - ')[1]}
|
|
1048
|
-
/>
|
|
1049
|
-
</BmInfoPanel.Section> */}
|
|
920
|
+
if (finalMessage?.type === 'order') {
|
|
921
|
+
const items = dotGoV2Content
|
|
922
|
+
? finalMessage?.catalog?.order?.items || []
|
|
923
|
+
: finalMessage?.product_items || [];
|
|
1050
924
|
|
|
1051
|
-
|
|
1052
|
-
title="Personal Information"
|
|
1053
|
-
icon={PersonIcon}
|
|
1054
|
-
showDivider
|
|
1055
|
-
>
|
|
1056
|
-
<BmInfoPanel.Row label="Name" value={formData.name} />
|
|
1057
|
-
<BmInfoPanel.Row label="Phone" value={formData.phone} />
|
|
1058
|
-
<BmInfoPanel.Row label="Email" value={formData.email} />
|
|
1059
|
-
</BmInfoPanel.Section>
|
|
1060
|
-
<BmInfoPanel.Section
|
|
1061
|
-
title="Personal Information"
|
|
1062
|
-
icon={PersonIcon}
|
|
1063
|
-
showDivider
|
|
1064
|
-
>
|
|
1065
|
-
<BmInfoPanel.Row label="Name" value={formData.name} />
|
|
1066
|
-
<BmInfoPanel.Row label="Phone" value={formData.phone} />
|
|
1067
|
-
<BmInfoPanel.Row label="Email" value={formData.email} />
|
|
1068
|
-
</BmInfoPanel.Section> */}
|
|
1069
|
-
</BmInfoPanel>
|
|
1070
|
-
</BmCardv2.Content>
|
|
1071
|
-
<BmCardv2.Footer>
|
|
1072
|
-
<BmButton
|
|
1073
|
-
width="100%"
|
|
1074
|
-
size="medium"
|
|
1075
|
-
borderColor="#33b1ba33"
|
|
1076
|
-
color="#000000"
|
|
1077
|
-
variant="secondary"
|
|
1078
|
-
type="button"
|
|
1079
|
-
onClick={() => setCurrentStep((prev) => Math.max(prev - 1, 0))}
|
|
1080
|
-
>
|
|
1081
|
-
Cancel
|
|
1082
|
-
</BmButton>
|
|
1083
|
-
<BmButton
|
|
1084
|
-
width="100%"
|
|
1085
|
-
size="medium"
|
|
1086
|
-
type="button"
|
|
1087
|
-
onClick={() =>
|
|
1088
|
-
setCurrentStep((prev) => Math.min(prev + 1, steps.length - 1))
|
|
1089
|
-
}
|
|
1090
|
-
>
|
|
1091
|
-
Save
|
|
1092
|
-
</BmButton>
|
|
1093
|
-
</BmCardv2.Footer>
|
|
1094
|
-
</BmCardv2>
|
|
1095
|
-
</div>
|
|
1096
|
-
<div>
|
|
1097
|
-
<BmLabelWithIcon
|
|
1098
|
-
textColor="#fcba03"
|
|
1099
|
-
icon={PeopleIcon}
|
|
1100
|
-
iconColor="#fffff"
|
|
1101
|
-
iconSize="16px"
|
|
1102
|
-
>
|
|
1103
|
-
<p>yooo</p> <h4>Team: Engineering</h4>
|
|
1104
|
-
</BmLabelWithIcon>
|
|
925
|
+
const summary = calculateOrderSummary(items);
|
|
1105
926
|
|
|
1106
|
-
|
|
1107
|
-
<BmSelectionNotice color="#ff6600">
|
|
1108
|
-
This is a <strong>warning</strong> notice.
|
|
1109
|
-
</BmSelectionNotice>
|
|
1110
|
-
</div>
|
|
1111
|
-
<div style={{ padding: '2rem' }}>
|
|
1112
|
-
<h1>Progress Indicator Demo</h1>
|
|
927
|
+
if (summary === 0) return { amount: 0, type: 'order', count: 0 };
|
|
1113
928
|
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
929
|
+
return {
|
|
930
|
+
message: dotGoV2Content
|
|
931
|
+
? { ...summary, type: 'order' }
|
|
932
|
+
: { ...summary, type: 'order', product_items: items },
|
|
933
|
+
connector,
|
|
934
|
+
};
|
|
935
|
+
}
|
|
1120
936
|
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
Previous
|
|
1127
|
-
</button>
|
|
1128
|
-
<button
|
|
1129
|
-
type="button"
|
|
1130
|
-
onClick={() =>
|
|
1131
|
-
setCurrentStep((prev) => Math.min(prev + 1, steps.length - 1))
|
|
1132
|
-
}
|
|
1133
|
-
>
|
|
1134
|
-
Next
|
|
1135
|
-
</button>
|
|
1136
|
-
</div>
|
|
1137
|
-
</div>
|
|
1138
|
-
<BmChat.Details
|
|
1139
|
-
key={85279}
|
|
1140
|
-
state="inbound"
|
|
1141
|
-
session="bot"
|
|
1142
|
-
displayTime={<p>12:00pm</p>}
|
|
1143
|
-
status="sent"
|
|
1144
|
-
type="interactive"
|
|
1145
|
-
sessionTimeline={{ message: <p>12:00pm</p> }}
|
|
1146
|
-
style={{ margin: '-0.6% 0 0 0' }}
|
|
1147
|
-
>
|
|
1148
|
-
{renderOrderJsonMessage()}
|
|
1149
|
-
</BmChat.Details>
|
|
1150
|
-
<BmChat.Details
|
|
1151
|
-
state="outbound"
|
|
1152
|
-
session="bot"
|
|
1153
|
-
sessionTimeline={{ message: <p>12:00pm</p> }}
|
|
1154
|
-
displayTime={<p>12:00pm</p>}
|
|
1155
|
-
status="sent"
|
|
1156
|
-
// type="interactive"
|
|
1157
|
-
metadata={renderJsonMessagex()}
|
|
1158
|
-
isInteractive="true"
|
|
1159
|
-
>
|
|
1160
|
-
<p>{x.message}</p>
|
|
1161
|
-
</BmChat.Details>
|
|
1162
|
-
<BmChat.Details
|
|
1163
|
-
state="outbound"
|
|
1164
|
-
session="bot"
|
|
1165
|
-
sessionTimeline={{ message: <p>12:00pm</p> }}
|
|
1166
|
-
displayTime={<p>12:00pm</p>}
|
|
1167
|
-
status="sent"
|
|
1168
|
-
// type="interactive"
|
|
1169
|
-
isInteractive="true"
|
|
1170
|
-
>
|
|
1171
|
-
<p style={{ whiteSpace: 'pre-line' }}>
|
|
1172
|
-
{`*Order placed successfully!*
|
|
937
|
+
return {
|
|
938
|
+
message: finalMessage,
|
|
939
|
+
connector,
|
|
940
|
+
};
|
|
941
|
+
};
|
|
1173
942
|
|
|
1174
|
-
|
|
943
|
+
const determineMetadataMessageType = (metadata) => {
|
|
944
|
+
if (metadata && metadata?.prev_message) {
|
|
945
|
+
if (isJson(metadata?.prev_message) === true) {
|
|
946
|
+
return renderMetadataJsonMessage(metadata);
|
|
947
|
+
}
|
|
948
|
+
return { message: { type: 'text', text: metadata.prev_message } };
|
|
949
|
+
}
|
|
950
|
+
};
|
|
951
|
+
const determineMetadataIsInteractive = (metadata) => {
|
|
952
|
+
if (metadata && metadata?.prev_message) {
|
|
953
|
+
if (isJson(metadata?.prev_message) === true) {
|
|
954
|
+
return true;
|
|
955
|
+
}
|
|
956
|
+
return false;
|
|
957
|
+
}
|
|
958
|
+
};
|
|
959
|
+
return (
|
|
960
|
+
<>
|
|
961
|
+
<GlobalStyle />
|
|
1175
962
|
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
,3 X 16" Zuri Wig Straight Feza Caramel Brown @ USD 808`}
|
|
1179
|
-
</p>
|
|
1180
|
-
</BmChat.Details>
|
|
1181
|
-
<BmChatAccordion Open expandIconPosition="left">
|
|
1182
|
-
<BmChatAccordion.Title
|
|
1183
|
-
// trailingIcon={<AbcIcon />}
|
|
1184
|
-
// leadingIcon={<AbcIcon />}
|
|
1185
|
-
>
|
|
1186
|
-
<h3>tesxcxcxt</h3>
|
|
1187
|
-
</BmChatAccordion.Title>
|
|
1188
|
-
<BmChatAccordion.Body>
|
|
1189
|
-
<div
|
|
1190
|
-
style={{
|
|
1191
|
-
marginTop: '.8571rem',
|
|
1192
|
-
border: '.0714rem solid black',
|
|
1193
|
-
borderRadius: '.4286rem',
|
|
1194
|
-
padding: '.4286rem',
|
|
1195
|
-
}}
|
|
1196
|
-
>
|
|
1197
|
-
<p>defdsfsdfsd</p>
|
|
1198
|
-
<p>dsfsdfsdfdsfdsfsdf</p>
|
|
1199
|
-
</div>
|
|
1200
|
-
</BmChatAccordion.Body>
|
|
1201
|
-
</BmChatAccordion>
|
|
1202
|
-
<BmAccordion>
|
|
1203
|
-
<BmAccordion.Title>
|
|
1204
|
-
<h3>Information</h3>
|
|
1205
|
-
</BmAccordion.Title>
|
|
1206
|
-
<BmAccordion.Body>
|
|
1207
|
-
{/* <BmChatForm> */}
|
|
1208
|
-
<div>
|
|
1209
|
-
<BmChatForm.Group>
|
|
1210
|
-
<BmChatForm.Label>
|
|
1211
|
-
<h4>Account No.</h4>
|
|
1212
|
-
</BmChatForm.Label>
|
|
1213
|
-
<BmChatForm.Input placeholder="Enter here" />
|
|
1214
|
-
</BmChatForm.Group>
|
|
1215
|
-
<BmChatForm.Group>
|
|
1216
|
-
<BmChatForm.Label>
|
|
1217
|
-
<h4>Preferred Language</h4>
|
|
1218
|
-
</BmChatForm.Label>
|
|
1219
|
-
<BmChatForm.Input placeholder="Enter here" />
|
|
1220
|
-
</BmChatForm.Group>
|
|
1221
|
-
</div>
|
|
1222
|
-
{/* </BmChatForm> */}
|
|
1223
|
-
</BmAccordion.Body>
|
|
1224
|
-
</BmAccordion>
|
|
1225
|
-
<BmTag
|
|
1226
|
-
// variant="danger"
|
|
1227
|
-
// textColor="#17b26a"
|
|
1228
|
-
bgColor="#17b26a"
|
|
1229
|
-
// color="black"
|
|
1230
|
-
closeButton
|
|
1231
|
-
dot
|
|
1232
|
-
// size="xsmall"
|
|
1233
|
-
>
|
|
1234
|
-
<p>Pending</p>
|
|
1235
|
-
</BmTag>
|
|
1236
|
-
<BmTag dot>
|
|
1237
|
-
<p>Bot</p>
|
|
1238
|
-
</BmTag>
|
|
1239
|
-
</div>
|
|
1240
|
-
<BmChat>
|
|
1241
|
-
<BmChat.Body>
|
|
963
|
+
{metaQuickReply.map((msg, idx) => {
|
|
964
|
+
return msg.message_type !== 'text' ? (
|
|
1242
965
|
<BmChat.Details
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
966
|
+
key={msg.id || idx} // Prefer a stable unique id if available
|
|
967
|
+
state={msg.direction}
|
|
968
|
+
session="bot"
|
|
969
|
+
displayTime={<p>12:10pm</p>}
|
|
1246
970
|
status="sent"
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
}}
|
|
971
|
+
type={msg.message_type}
|
|
972
|
+
callLog={msg.message_type === 'call'}
|
|
973
|
+
sessionTimeline={{ message: '12:00pm' }}
|
|
974
|
+
style={{ margin: '-0.6% 0 0 0' }}
|
|
975
|
+
metadata={determineMetadataMessageType(msg.metadata)}
|
|
976
|
+
isInteractive={determineMetadataIsInteractive(msg.metadata)}
|
|
1251
977
|
>
|
|
1252
|
-
|
|
1253
|
-
Inbound Text kjflksdjfskld jsdlkfjsdlkf jsdlk jfsdlkjf lkjfljflsj
|
|
1254
|
-
ljfljfsjfsofoewjfwej owe we fwofj kwefoweo fiweo ieoi joi fweo
|
|
1255
|
-
fweof welkf jwelfk jweoi fejwof wejfl kwejf oiwej foewijf lwekjf
|
|
1256
|
-
oewi fjlwej foMessage 1 sdkfjdslkjf lksdfj sodifj owijfiwoe
|
|
1257
|
-
jfwoegh woj fpieojwoighjwoei hgwoihgwoij giej
|
|
1258
|
-
foewifjweokjgwlgkjwqeli jgowegihweogwhelgkjwe goiwhroihjg oewjfwle
|
|
1259
|
-
fjwelfjweoighwoei ghwei gjqepif jopqejfkljgwoighwoi ghwoiejh goiwg
|
|
1260
|
-
howej lkwejgwogihwelo kjwoei gjiejf pqeif jpqeofjeiow ghorwughwlkj
|
|
1261
|
-
fiepofj peqwjfpoqejf pioewj gurehglowjk gfwqefjwpoiegpwogijwrp
|
|
1262
|
-
ogjwpo gjwp kfpoewkf opwegjkpwoj wig hioqwe
|
|
1263
|
-
jfqepijfopqekfqpoefkqpoekfqpoe jpqoe jgiqeghj quioehgqoeijg
|
|
1264
|
-
qekfjqepofk poqef pqoe fjepiof jqeifh qeif h
|
|
1265
|
-
</p>
|
|
978
|
+
{renderJsonMessageMeta(msg)}
|
|
1266
979
|
</BmChat.Details>
|
|
980
|
+
) : (
|
|
1267
981
|
<BmChat.Details
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
displayTime={<p>12:00pm</p>}
|
|
1271
|
-
status="sent"
|
|
1272
|
-
fileName={<p>chat.png</p>}
|
|
1273
|
-
src="https://i.postimg.cc/ydq8vSx3/cyberpunk-2077-samurai-minimalist-uhdpaper-com-4-K-5-1333-min-2.jpg"
|
|
1274
|
-
sessionDetails={{
|
|
1275
|
-
message: <h3>Session Message</h3>,
|
|
1276
|
-
time: <p>12:00pm</p>,
|
|
1277
|
-
}}
|
|
1278
|
-
/>
|
|
1279
|
-
<BmChat.Details
|
|
1280
|
-
state="inbound"
|
|
1281
|
-
session="live"
|
|
1282
|
-
displayTime={<p>10:00am</p>}
|
|
1283
|
-
status="failed"
|
|
1284
|
-
fileName={<p>file.csv</p>}
|
|
1285
|
-
file={image}
|
|
1286
|
-
/>
|
|
1287
|
-
<BmChat.Details
|
|
1288
|
-
state="outbound"
|
|
982
|
+
key={msg.id || idx} // Prefer a stable unique id if available
|
|
983
|
+
state={msg.direction}
|
|
1289
984
|
session="bot"
|
|
1290
|
-
displayTime={<p>12:
|
|
985
|
+
displayTime={<p>12:10pm</p>}
|
|
1291
986
|
status="sent"
|
|
987
|
+
type="text"
|
|
988
|
+
sessionTimeline={{ message: '12:00pm' }}
|
|
989
|
+
style={{ margin: '-0.6% 0 0 0' }}
|
|
990
|
+
metadata={determineMetadataMessageType(msg.metadata)}
|
|
991
|
+
isInteractive={determineMetadataIsInteractive(msg.metadata)}
|
|
1292
992
|
>
|
|
1293
|
-
<p>
|
|
993
|
+
<p>{msg.message}</p>
|
|
1294
994
|
</BmChat.Details>
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
<BmIcons icon={<EmojiEmotionsIcon />} size="xlarge" />
|
|
1319
|
-
<BmIcons icon={<AttachFileIcon />} size="xlarge" />
|
|
1320
|
-
<BmIcons icon={<QuickreplyIcon />} size="xlarge" />
|
|
1321
|
-
<BmInput placeholder="Enter Message" style={{ flex: '1' }} />
|
|
1322
|
-
<BmIcons icon={<SendIcon />} size="xlarge" />
|
|
1323
|
-
</div>
|
|
1324
|
-
</BmChat.Footer> */}
|
|
1325
|
-
{/* <div className="w-20">
|
|
1326
|
-
<BmButton size="xsmall" variant="neutral">
|
|
1327
|
-
Hello
|
|
1328
|
-
</BmButton>
|
|
1329
|
-
<BmButton size="xsmall" variant="secondary">
|
|
1330
|
-
Hello
|
|
1331
|
-
</BmButton>
|
|
1332
|
-
<BmButton size="xsmall" variant="primary">
|
|
1333
|
-
Hello
|
|
1334
|
-
</BmButton>
|
|
1335
|
-
<BmButton size="xsmall" variant="destructive">
|
|
1336
|
-
Hello
|
|
1337
|
-
</BmButton>
|
|
1338
|
-
<BmButton size="xsmall" variant="tertiary">
|
|
1339
|
-
Hello
|
|
1340
|
-
</BmButton>
|
|
1341
|
-
<BmButton size="xsmall" variant="success">
|
|
1342
|
-
Hello
|
|
1343
|
-
</BmButton>
|
|
1344
|
-
<BmButton variant="success">Test</BmButton>
|
|
1345
|
-
<div style={{ width: '30%' }}>
|
|
1346
|
-
<BmButtonDropDown size="xsmall">Test</BmButtonDropDown>
|
|
1347
|
-
</div>
|
|
1348
|
-
<BmBtnIcon icon={<AbcIcon />} size="xsmall" />
|
|
1349
|
-
</div>
|
|
1350
|
-
<br />
|
|
1351
|
-
<div style={{ width: '50%' }}>
|
|
1352
|
-
<BmButton size="xsmall" color="black" variant="neutral">
|
|
1353
|
-
Hello
|
|
995
|
+
);
|
|
996
|
+
})}
|
|
997
|
+
<BmCardv2 borderColor="#d62a2af" borderWidth="1.5px" contentHeight="0">
|
|
998
|
+
<BmCardv2.Header>
|
|
999
|
+
<BmCardv2.Title>Appointment Summary</BmCardv2.Title>
|
|
1000
|
+
<BmCardv2.Description>
|
|
1001
|
+
This BmCardv2 shows a quick overview of your booking.
|
|
1002
|
+
</BmCardv2.Description>
|
|
1003
|
+
</BmCardv2.Header>
|
|
1004
|
+
<BmCardv2.Content>
|
|
1005
|
+
<p>
|
|
1006
|
+
<strong>Type:</strong> Consultation
|
|
1007
|
+
</p>
|
|
1008
|
+
<p>
|
|
1009
|
+
<strong>Date:</strong> June 24, 2025
|
|
1010
|
+
</p>
|
|
1011
|
+
<p>
|
|
1012
|
+
<strong>Doctor:</strong> Dr. Smith
|
|
1013
|
+
</p>
|
|
1014
|
+
</BmCardv2.Content>
|
|
1015
|
+
<BmCardv2.Footer>
|
|
1016
|
+
<BmButton width="100%" size="medium" variant="primary">
|
|
1017
|
+
Edit
|
|
1354
1018
|
</BmButton>
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
<BmButton size="large" variant="destructive">
|
|
1364
|
-
Hello
|
|
1365
|
-
</BmButton> */}
|
|
1366
|
-
{/* <BmButton size="small" variant="tertiary">
|
|
1367
|
-
Hello
|
|
1019
|
+
<BmButton
|
|
1020
|
+
borderColor="#000000"
|
|
1021
|
+
width="100%"
|
|
1022
|
+
size="medium"
|
|
1023
|
+
variant="secondary"
|
|
1024
|
+
color="#000000"
|
|
1025
|
+
>
|
|
1026
|
+
Cancel
|
|
1368
1027
|
</BmButton>
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
<BmChat.Details
|
|
1373
|
-
state="outbound"
|
|
1374
|
-
session="bot"
|
|
1375
|
-
sessionTimeline={{ message: <p>12:00pm</p> }}
|
|
1376
|
-
displayTime={<p>12:00pm</p>}
|
|
1377
|
-
status="sent"
|
|
1378
|
-
type="interactive"
|
|
1379
|
-
>
|
|
1380
|
-
{renderJsonMessage()}
|
|
1381
|
-
{/* {{
|
|
1382
|
-
type: 'list',
|
|
1383
|
-
title: 'Great 😁!',
|
|
1384
|
-
body: 'Please choose how you would want to redeem your points today in store purchase?',
|
|
1385
|
-
msgid: 'redeemPoints',
|
|
1386
|
-
globalButtons: [
|
|
1387
|
-
{
|
|
1388
|
-
type: 'text',
|
|
1389
|
-
title: 'Redeem Points',
|
|
1390
|
-
},
|
|
1391
|
-
],
|
|
1392
|
-
items: [
|
|
1393
|
-
{
|
|
1394
|
-
title: 'first Section',
|
|
1395
|
-
subtitle: 'first Subtitle',
|
|
1396
|
-
options: [
|
|
1397
|
-
{
|
|
1398
|
-
type: 'text',
|
|
1399
|
-
title: '1000 pts for 10000Tsh',
|
|
1400
|
-
description: '',
|
|
1401
|
-
postbackText: 'section 1 row 1 postback payload',
|
|
1402
|
-
},
|
|
1403
|
-
{
|
|
1404
|
-
type: 'text',
|
|
1405
|
-
title: '5000 pts for 5000Tsh',
|
|
1406
|
-
description: '',
|
|
1407
|
-
postbackText: 'section 1 row 2 postback payload',
|
|
1408
|
-
},
|
|
1409
|
-
{
|
|
1410
|
-
type: 'text',
|
|
1411
|
-
title: '10000 pts for 100000Tsh',
|
|
1412
|
-
description: '',
|
|
1413
|
-
postbackText: 'section 1 row 3 postback payload',
|
|
1414
|
-
},
|
|
1415
|
-
{
|
|
1416
|
-
type: 'text',
|
|
1417
|
-
title: 'Back',
|
|
1418
|
-
description: '',
|
|
1419
|
-
postbackText: 'section 1 row 4 postback payload',
|
|
1420
|
-
},
|
|
1421
|
-
],
|
|
1422
|
-
},
|
|
1423
|
-
],
|
|
1424
|
-
}} */}
|
|
1425
|
-
{/* <p>
|
|
1426
|
-
Outbound Text Message that i wanteds to send but i could not send
|
|
1427
|
-
it as whatsapp was down for almost one whole hour but i wonder how
|
|
1428
|
-
wide this message will look and will we have to match it if it
|
|
1429
|
-
goes this wide mhhhhhh interesting
|
|
1430
|
-
</p> */}
|
|
1431
|
-
</BmChat.Details>
|
|
1432
|
-
|
|
1433
|
-
<BmChat.Details
|
|
1434
|
-
state="inbound"
|
|
1435
|
-
session="bot"
|
|
1436
|
-
sessionTimeline={{ message: <p>12:00pm</p> }}
|
|
1437
|
-
displayTime={<p>12:00pm</p>}
|
|
1438
|
-
status="sent"
|
|
1439
|
-
type="interactive"
|
|
1440
|
-
>
|
|
1441
|
-
{{
|
|
1442
|
-
type: 'quick_reply',
|
|
1443
|
-
msgid: 'redeemMenu',
|
|
1444
|
-
content: {
|
|
1445
|
-
type: 'text',
|
|
1446
|
-
url: 'https://i.imgur.com/BZylAb1.jpeg',
|
|
1447
|
-
header: 'HELOOOOOOOOOO',
|
|
1448
|
-
text: 'In Beem Rewards You can redeem or check points that you have accumulated anytime.\n\nSo, what do you want to do today?',
|
|
1449
|
-
caption: '',
|
|
1450
|
-
},
|
|
1451
|
-
options: [
|
|
1452
|
-
{
|
|
1453
|
-
type: 'text',
|
|
1454
|
-
title: 'Reedem points',
|
|
1455
|
-
postbackText: 'FMCG-defined-postback1',
|
|
1456
|
-
},
|
|
1457
|
-
{
|
|
1458
|
-
type: 'text',
|
|
1459
|
-
title: 'Check points',
|
|
1460
|
-
postbackText: 'FMCG-defined-postback2',
|
|
1461
|
-
},
|
|
1462
|
-
{
|
|
1463
|
-
type: 'text',
|
|
1464
|
-
title: 'Back',
|
|
1465
|
-
postbackText: 'FMCG-defined-postback3',
|
|
1466
|
-
},
|
|
1467
|
-
],
|
|
1468
|
-
}}
|
|
1469
|
-
{/* <p>
|
|
1470
|
-
Outbound Text Message that i wanteds to send but i could not send
|
|
1471
|
-
it as whatsapp was down for almost one whole hour but i wonder how
|
|
1472
|
-
wide this message will look and will we have to match it if it
|
|
1473
|
-
goes this wide mhhhhhh interesting
|
|
1474
|
-
</p> */}
|
|
1475
|
-
</BmChat.Details>
|
|
1476
|
-
<BmChat.Details
|
|
1477
|
-
state="inbound"
|
|
1478
|
-
session="bot"
|
|
1479
|
-
sessionTimeline={{ message: <p>12:00pm</p> }}
|
|
1480
|
-
displayTime={<p>12:00pm</p>}
|
|
1481
|
-
status="sent"
|
|
1482
|
-
type="interactive"
|
|
1483
|
-
>
|
|
1484
|
-
{{
|
|
1485
|
-
type: 'quick_reply',
|
|
1486
|
-
msgid: 'SaifeeBot',
|
|
1487
|
-
content: {
|
|
1488
|
-
type: 'image',
|
|
1489
|
-
header: 'HELOOOOOOOOOO',
|
|
1490
|
-
url: 'https://i.postimg.cc/ydq8vSx3/cyberpunk-2077-samurai-minimalist-uhdpaper-com-4-K-5-1333-min-2.jpg',
|
|
1491
|
-
text: 'Hello! Welcome to *Saifee Hdkfj kdfj kdfj dkjf kdjf idofj idjf dkf jdif jdkf djf idf jdkf jd dkfjdkjf dkofjosdfj sdoif joewif jwoeifj wefj welkf jweloifjweoifjwo ff wfj fwe gjwpiogw gjwo gwg jwegf ei jwk jgwi jgwijgejgweoi gg wjgewo we jwgjlwejg gjwoj gwoj gwejogwogwogwekgjwgijwoig jweoijg oiw if jdkf jdif jdkfj dkf jifjoiewrfj okwj ospital* Please select your preferred language \n \nHabari! Karibu *Hospitali ya Saifee* Tafadhali chagua lugha unayopendelea',
|
|
1492
|
-
caption: 'Powered by Beem',
|
|
1493
|
-
},
|
|
1494
|
-
options: [
|
|
1495
|
-
{
|
|
1496
|
-
type: 'text',
|
|
1497
|
-
title: 'English',
|
|
1498
|
-
postbackText: 'dev-defined-postback1',
|
|
1499
|
-
},
|
|
1500
|
-
{
|
|
1501
|
-
type: 'text',
|
|
1502
|
-
title: 'Swahili',
|
|
1503
|
-
postbackText: 'dev-defined-postback2',
|
|
1504
|
-
},
|
|
1505
|
-
],
|
|
1506
|
-
}}
|
|
1507
|
-
|
|
1508
|
-
{/* <p>
|
|
1509
|
-
Outbound Text Message that i wanteds to send but i could not send
|
|
1510
|
-
it as whatsapp was down for almost one whole hour but i wonder how
|
|
1511
|
-
wide this message will look and will we have to match it if it
|
|
1512
|
-
goes this wide mhhhhhh interesting
|
|
1513
|
-
</p> */}
|
|
1514
|
-
</BmChat.Details>
|
|
1515
|
-
|
|
1516
|
-
<BmContactCard />
|
|
1517
|
-
</BmChat>
|
|
1518
|
-
{/* <BmChat>
|
|
1519
|
-
<BmChat.Body>
|
|
1520
|
-
{msg.map((ms, index) => (
|
|
1521
|
-
<BmContactCard isVisible={checkboxVisibility[index]}>
|
|
1522
|
-
<BmContactCard.Profile>
|
|
1523
|
-
<BmProfileIcon
|
|
1524
|
-
hoverEnabled
|
|
1525
|
-
hoverText="dfk dsflksd;"
|
|
1526
|
-
size="medium"
|
|
1527
|
-
multiChannel="#b6fc03"
|
|
1528
|
-
/>
|
|
1529
|
-
</BmContactCard.Profile>
|
|
1530
|
-
<BmContactCard.Details>
|
|
1531
|
-
<BmContactCard.SubDetails>
|
|
1532
|
-
<h3>Contact Names</h3>
|
|
1533
|
-
<BmContactCheckbox
|
|
1534
|
-
isVisible={checkboxVisibility[index]}
|
|
1535
|
-
onChange={(event) =>
|
|
1536
|
-
handleCheckboxChange(index, event.target.checked)
|
|
1537
|
-
}
|
|
1538
|
-
checked={checkboxVisibility[index]}
|
|
1539
|
-
/>
|
|
1540
|
-
</BmContactCard.SubDetails>
|
|
1541
|
-
<BmContactCard.SubDetails>
|
|
1542
|
-
<p>Message text</p>
|
|
1543
|
-
<BmCounter>10</BmCounter>
|
|
1544
|
-
</BmContactCard.SubDetails>
|
|
1545
|
-
<BmContactCard.SubDetails>
|
|
1546
|
-
<BmTag variant="success">{ms.id}</BmTag>
|
|
1547
|
-
<p>10:00 am</p>
|
|
1548
|
-
</BmContactCard.SubDetails>
|
|
1549
|
-
</BmContactCard.Details>
|
|
1550
|
-
</BmContactCard>
|
|
1551
|
-
))}
|
|
1552
|
-
</BmChat.Body>
|
|
1553
|
-
</BmChat> */}
|
|
1554
|
-
<BmChat>
|
|
1555
|
-
<BmChat.Body>
|
|
1556
|
-
{messages.map((ms) => {
|
|
1557
|
-
console.log(ms);
|
|
1558
|
-
return (
|
|
1559
|
-
<BmChat.Details
|
|
1560
|
-
key={ms.id}
|
|
1561
|
-
state={ms.direction}
|
|
1562
|
-
session="bot"
|
|
1563
|
-
sessionTimeline={{ message: <p>12:00pm</p> }}
|
|
1564
|
-
displayTime={<p>12:00pm</p>}
|
|
1565
|
-
status="sent"
|
|
1566
|
-
extension="pdf"
|
|
1567
|
-
file={ms.message}
|
|
1568
|
-
link={ms.message}
|
|
1569
|
-
fileName={<p>File</p>}
|
|
1570
|
-
type="pdf"
|
|
1571
|
-
style={{ margin: '-0.6% 0 0 0' }}
|
|
1572
|
-
>
|
|
1573
|
-
<p>
|
|
1574
|
-
<a href={ms.message}> </a>
|
|
1575
|
-
</p>
|
|
1576
|
-
</BmChat.Details>
|
|
1577
|
-
);
|
|
1578
|
-
})}
|
|
1579
|
-
</BmChat.Body>
|
|
1580
|
-
</BmChat>
|
|
1581
|
-
<BmChat>
|
|
1582
|
-
<BmChat.Body>
|
|
1583
|
-
{messages.map((ms) => {
|
|
1584
|
-
console.log(ms);
|
|
1585
|
-
return (
|
|
1586
|
-
<BmChat.Details
|
|
1587
|
-
key={ms.id}
|
|
1588
|
-
state={ms.direction}
|
|
1589
|
-
session="bot"
|
|
1590
|
-
sessionTimeline={{ message: <p>12:00pm</p> }}
|
|
1591
|
-
displayTime={<p>12:00pm</p>}
|
|
1592
|
-
status="sent"
|
|
1593
|
-
file={ms.message}
|
|
1594
|
-
link={ms.message}
|
|
1595
|
-
fileName={<p>File</p>}
|
|
1596
|
-
style={{ margin: '-0.6% 0 0 0' }}
|
|
1597
|
-
extension="docx"
|
|
1598
|
-
// state="inbound"
|
|
1599
|
-
// session="live"
|
|
1600
|
-
// displayTime={<p>10:00am</p>}
|
|
1601
|
-
// status="failed"
|
|
1602
|
-
// fileName={<p>file.csv</p>}
|
|
1603
|
-
// file={image}
|
|
1604
|
-
/>
|
|
1605
|
-
);
|
|
1606
|
-
})}
|
|
1607
|
-
</BmChat.Body>
|
|
1608
|
-
</BmChat>
|
|
1609
|
-
<BmAccordion expandIconPosition="right">
|
|
1610
|
-
<BmAccordion.Title size="small">Contacts</BmAccordion.Title>
|
|
1611
|
-
<BmAccordion.Body>
|
|
1612
|
-
<div className="accordion-body">
|
|
1613
|
-
<BmAccordion expandIcon="none">
|
|
1614
|
-
<BmAccordion.Title>
|
|
1615
|
-
<button
|
|
1616
|
-
type="button"
|
|
1617
|
-
onClick={() => {
|
|
1618
|
-
console.log('click 1');
|
|
1619
|
-
}}
|
|
1620
|
-
>
|
|
1621
|
-
Customers
|
|
1622
|
-
</button>
|
|
1623
|
-
</BmAccordion.Title>
|
|
1624
|
-
</BmAccordion>
|
|
1625
|
-
|
|
1626
|
-
<BmAccordion expandIcon="none">
|
|
1627
|
-
<BmAccordion.Title>Reedem History</BmAccordion.Title>
|
|
1628
|
-
</BmAccordion>
|
|
1629
|
-
<BmAccordion expandIcon="none">
|
|
1630
|
-
<BmAccordion.Title>Rewards</BmAccordion.Title>
|
|
1631
|
-
</BmAccordion>
|
|
1632
|
-
<BmAccordion expandIcon="none">
|
|
1633
|
-
<BmAccordion.Title>Pending Redemption</BmAccordion.Title>
|
|
1634
|
-
</BmAccordion>
|
|
1635
|
-
</div>
|
|
1636
|
-
</BmAccordion.Body>
|
|
1637
|
-
</BmAccordion>
|
|
1028
|
+
</BmCardv2.Footer>
|
|
1029
|
+
</BmCardv2>
|
|
1030
|
+
<BmProfileIcon channel="voice_call" />
|
|
1638
1031
|
</>
|
|
1639
1032
|
);
|
|
1640
1033
|
};
|