@zohoim/client-sdk 0.0.5-poc02 → 0.0.5-poc03

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.
Files changed (238) hide show
  1. package/package.json +1 -1
  2. package/es/application/services/agents/AgentService.js +0 -21
  3. package/es/application/services/agents/index.js +0 -2
  4. package/es/application/services/bots/BotService.js +0 -26
  5. package/es/application/services/bots/index.js +0 -2
  6. package/es/application/services/channels/ChannelAgentService.js +0 -21
  7. package/es/application/services/channels/ChannelService.js +0 -21
  8. package/es/application/services/channels/index.js +0 -3
  9. package/es/application/services/contacts/ContactService.js +0 -21
  10. package/es/application/services/contacts/index.js +0 -2
  11. package/es/application/services/index.js +0 -6
  12. package/es/application/services/messages/MessageService.js +0 -61
  13. package/es/application/services/messages/index.js +0 -2
  14. package/es/application/services/sessions/SessionService.js +0 -56
  15. package/es/application/services/sessions/index.js +0 -2
  16. package/es/core/constants/ModuleNames.js +0 -9
  17. package/es/core/constants/ResponseTypes.js +0 -6
  18. package/es/core/constants/index.js +0 -6
  19. package/es/core/errors/AdapterError.js +0 -7
  20. package/es/core/errors/ValidationError.js +0 -7
  21. package/es/core/errors/index.js +0 -3
  22. package/es/core/utils/ResponseUtils.js +0 -24
  23. package/es/core/utils/index.js +0 -3
  24. package/es/core/utils/validateSchema.js +0 -74
  25. package/es/domain/dto/RequestBuilder.js +0 -44
  26. package/es/domain/dto/agents/getAgentsRequest.js +0 -12
  27. package/es/domain/dto/agents/index.js +0 -1
  28. package/es/domain/dto/bots/getBotRequest.js +0 -9
  29. package/es/domain/dto/bots/getBotsRequest.js +0 -15
  30. package/es/domain/dto/bots/index.js +0 -2
  31. package/es/domain/dto/channels/agents/getChannelAgentsRequest.js +0 -13
  32. package/es/domain/dto/channels/agents/index.js +0 -1
  33. package/es/domain/dto/channels/getChannelsRequest.js +0 -23
  34. package/es/domain/dto/channels/index.js +0 -3
  35. package/es/domain/dto/contacts/getContactsRequest.js +0 -11
  36. package/es/domain/dto/contacts/index.js +0 -1
  37. package/es/domain/dto/index.js +0 -6
  38. package/es/domain/dto/messages/deleteMessageRequest.js +0 -14
  39. package/es/domain/dto/messages/getFullContentRequest.js +0 -14
  40. package/es/domain/dto/messages/getMessageRequest.js +0 -14
  41. package/es/domain/dto/messages/getMessagesRequest.js +0 -20
  42. package/es/domain/dto/messages/index.js +0 -9
  43. package/es/domain/dto/messages/initiateSessionRequest.js +0 -22
  44. package/es/domain/dto/messages/resendMessageRequest.js +0 -14
  45. package/es/domain/dto/messages/searchMessagesRequest.js +0 -22
  46. package/es/domain/dto/messages/sendAttachmentRequest.js +0 -19
  47. package/es/domain/dto/messages/sendMessageRequest.js +0 -19
  48. package/es/domain/dto/sessions/getSessionAttachmentsRequest.js +0 -13
  49. package/es/domain/dto/sessions/getSessionLastMessagesRequest.js +0 -13
  50. package/es/domain/dto/sessions/getSessionRequest.js +0 -13
  51. package/es/domain/dto/sessions/getSessionsRequest.js +0 -27
  52. package/es/domain/dto/sessions/index.js +0 -8
  53. package/es/domain/dto/sessions/markSessionAsReadRequest.js +0 -17
  54. package/es/domain/dto/sessions/pickupSessionRequest.js +0 -9
  55. package/es/domain/dto/sessions/updateSessionAssigneeRequest.js +0 -12
  56. package/es/domain/dto/sessions/updateSessionStatusRequest.js +0 -18
  57. package/es/domain/entities/Actor/Actor.js +0 -37
  58. package/es/domain/entities/Actor/index.js +0 -2
  59. package/es/domain/entities/Agent/Agent.js +0 -26
  60. package/es/domain/entities/Agent/index.js +0 -2
  61. package/es/domain/entities/Attachment/Attachment.js +0 -23
  62. package/es/domain/entities/Attachment/index.js +0 -2
  63. package/es/domain/entities/Bot/Bot.js +0 -23
  64. package/es/domain/entities/Bot/index.js +0 -2
  65. package/es/domain/entities/Channel/Channel.js +0 -38
  66. package/es/domain/entities/Channel/index.js +0 -2
  67. package/es/domain/entities/Contact/Contact.js +0 -22
  68. package/es/domain/entities/Contact/index.js +0 -2
  69. package/es/domain/entities/IntegrationService/IntegrationService.js +0 -33
  70. package/es/domain/entities/IntegrationService/index.js +0 -2
  71. package/es/domain/entities/Message/Action.js +0 -25
  72. package/es/domain/entities/Message/ExternalInfo.js +0 -26
  73. package/es/domain/entities/Message/Info.js +0 -44
  74. package/es/domain/entities/Message/InfoTarget.js +0 -22
  75. package/es/domain/entities/Message/Location.js +0 -18
  76. package/es/domain/entities/Message/Message.js +0 -156
  77. package/es/domain/entities/Message/MessageWithSession.js +0 -21
  78. package/es/domain/entities/Message/index.js +0 -7
  79. package/es/domain/entities/Session/Session.js +0 -80
  80. package/es/domain/entities/Session/index.js +0 -2
  81. package/es/domain/entities/index.js +0 -9
  82. package/es/domain/enum/actor/ActorType.js +0 -7
  83. package/es/domain/enum/actor/index.js +0 -2
  84. package/es/domain/enum/attachment/AttachmentStatus.js +0 -7
  85. package/es/domain/enum/attachment/index.js +0 -2
  86. package/es/domain/enum/bot/BotServiceType.js +0 -7
  87. package/es/domain/enum/bot/index.js +0 -2
  88. package/es/domain/enum/index.js +0 -6
  89. package/es/domain/enum/integrationServices/IntegrationServices.js +0 -12
  90. package/es/domain/enum/integrationServices/index.js +0 -2
  91. package/es/domain/enum/message/ActionSubType.js +0 -6
  92. package/es/domain/enum/message/ActionType.js +0 -6
  93. package/es/domain/enum/message/ExternalInfoAction.js +0 -9
  94. package/es/domain/enum/message/InfoAction.js +0 -17
  95. package/es/domain/enum/message/InfoSessionStatus.js +0 -10
  96. package/es/domain/enum/message/InfoTargetType.js +0 -11
  97. package/es/domain/enum/message/MessageContentType.js +0 -6
  98. package/es/domain/enum/message/MessageDirection.js +0 -6
  99. package/es/domain/enum/message/MessageMeta.js +0 -5
  100. package/es/domain/enum/message/MessageStatus.js +0 -11
  101. package/es/domain/enum/message/MessageType.js +0 -11
  102. package/es/domain/enum/message/MetaMessageSourceType.js +0 -6
  103. package/es/domain/enum/message/MetaSystemMessageType.js +0 -8
  104. package/es/domain/enum/message/index.js +0 -14
  105. package/es/domain/enum/session/SessionReplyStatus.js +0 -21
  106. package/es/domain/enum/session/SessionStatus.js +0 -10
  107. package/es/domain/enum/session/index.js +0 -3
  108. package/es/domain/interfaces/IAdapter.js +0 -6
  109. package/es/domain/interfaces/index.js +0 -3
  110. package/es/domain/interfaces/repositories/agents/IAgentRepository.js +0 -17
  111. package/es/domain/interfaces/repositories/agents/index.js +0 -2
  112. package/es/domain/interfaces/repositories/bots/IBotRepository.js +0 -23
  113. package/es/domain/interfaces/repositories/bots/index.js +0 -2
  114. package/es/domain/interfaces/repositories/channels/IChannelAgentRepository.js +0 -17
  115. package/es/domain/interfaces/repositories/channels/IChannelRepository.js +0 -17
  116. package/es/domain/interfaces/repositories/channels/index.js +0 -3
  117. package/es/domain/interfaces/repositories/contacts/IContactRepository.js +0 -17
  118. package/es/domain/interfaces/repositories/contacts/index.js +0 -2
  119. package/es/domain/interfaces/repositories/index.js +0 -6
  120. package/es/domain/interfaces/repositories/messages/IMessageRepository.js +0 -57
  121. package/es/domain/interfaces/repositories/messages/index.js +0 -2
  122. package/es/domain/interfaces/repositories/sessions/ISessionRepository.js +0 -52
  123. package/es/domain/interfaces/repositories/sessions/index.js +0 -2
  124. package/es/domain/schema/actor/ActorSchema.js +0 -37
  125. package/es/domain/schema/actor/AgentSchema.js +0 -45
  126. package/es/domain/schema/actor/index.js +0 -3
  127. package/es/domain/schema/attachment/AttachmentSchema.js +0 -33
  128. package/es/domain/schema/attachment/index.js +0 -2
  129. package/es/domain/schema/bot/BotSchema.js +0 -33
  130. package/es/domain/schema/bot/index.js +0 -2
  131. package/es/domain/schema/channel/ChannelSchema.js +0 -49
  132. package/es/domain/schema/channel/index.js +0 -2
  133. package/es/domain/schema/contact/ContactSchema.js +0 -27
  134. package/es/domain/schema/contact/index.js +0 -2
  135. package/es/domain/schema/index.js +0 -8
  136. package/es/domain/schema/integrationService/IntegrationServiceSchema.js +0 -31
  137. package/es/domain/schema/integrationService/index.js +0 -2
  138. package/es/domain/schema/message/ActionSchema.js +0 -18
  139. package/es/domain/schema/message/ExternalInfoSchema.js +0 -9
  140. package/es/domain/schema/message/InfoSchema.js +0 -24
  141. package/es/domain/schema/message/InfoTargetSchema.js +0 -35
  142. package/es/domain/schema/message/LocationSchema.js +0 -11
  143. package/es/domain/schema/message/MessageSchema.js +0 -116
  144. package/es/domain/schema/message/MessageWithSessionSchema.js +0 -10
  145. package/es/domain/schema/message/index.js +0 -8
  146. package/es/domain/schema/session/SessionSchema.js +0 -82
  147. package/es/domain/schema/session/index.js +0 -2
  148. package/es/frameworks/managers/ModuleFactory.js +0 -58
  149. package/es/frameworks/managers/ModuleManager.js +0 -44
  150. package/es/frameworks/managers/index.js +0 -2
  151. package/es/frameworks/sdk/IMSDK.js +0 -62
  152. package/es/frameworks/sdk/agents/AgentSDK.js +0 -30
  153. package/es/frameworks/sdk/agents/index.js +0 -2
  154. package/es/frameworks/sdk/bots/BotSDK.js +0 -30
  155. package/es/frameworks/sdk/bots/index.js +0 -2
  156. package/es/frameworks/sdk/channels/ChannelSDK.js +0 -37
  157. package/es/frameworks/sdk/channels/index.js +0 -2
  158. package/es/frameworks/sdk/contacts/ContactSDK.js +0 -30
  159. package/es/frameworks/sdk/contacts/index.js +0 -2
  160. package/es/frameworks/sdk/index.js +0 -2
  161. package/es/frameworks/sdk/messages/MessageSDK.js +0 -32
  162. package/es/frameworks/sdk/messages/index.js +0 -2
  163. package/es/frameworks/sdk/sessions/SessionSDK.js +0 -34
  164. package/es/frameworks/sdk/sessions/index.js +0 -2
  165. package/es/index.html +0 -25
  166. package/es/index.js +0 -12
  167. package/es/infrastructure/adapters/agents/AgentAdapter.js +0 -28
  168. package/es/infrastructure/adapters/agents/index.js +0 -2
  169. package/es/infrastructure/adapters/attachments/AttachmentAdapter.js +0 -25
  170. package/es/infrastructure/adapters/attachments/index.js +0 -2
  171. package/es/infrastructure/adapters/bots/BotAdapter.js +0 -25
  172. package/es/infrastructure/adapters/bots/index.js +0 -2
  173. package/es/infrastructure/adapters/channels/ChannelAdapter.js +0 -29
  174. package/es/infrastructure/adapters/channels/ChannelAgentAdapter.js +0 -49
  175. package/es/infrastructure/adapters/channels/index.js +0 -3
  176. package/es/infrastructure/adapters/contacts/ContactAdapter.js +0 -24
  177. package/es/infrastructure/adapters/contacts/index.js +0 -2
  178. package/es/infrastructure/adapters/index.js +0 -7
  179. package/es/infrastructure/adapters/messages/MessageAdapter.js +0 -41
  180. package/es/infrastructure/adapters/messages/MessageWithSessionAdapter.js +0 -23
  181. package/es/infrastructure/adapters/messages/index.js +0 -2
  182. package/es/infrastructure/adapters/sessions/SessionAdapter.js +0 -36
  183. package/es/infrastructure/adapters/sessions/index.js +0 -2
  184. package/es/infrastructure/api/BaseAPI.js +0 -104
  185. package/es/infrastructure/api/UrlBuilder.js +0 -53
  186. package/es/infrastructure/api/agents/AgentAPI.js +0 -14
  187. package/es/infrastructure/api/agents/index.js +0 -2
  188. package/es/infrastructure/api/bots/BotAPI.js +0 -24
  189. package/es/infrastructure/api/bots/index.js +0 -2
  190. package/es/infrastructure/api/channels/ChannelAPI.js +0 -14
  191. package/es/infrastructure/api/channels/ChannelAgentAPI.js +0 -22
  192. package/es/infrastructure/api/channels/index.js +0 -3
  193. package/es/infrastructure/api/contacts/ContactAPI.js +0 -14
  194. package/es/infrastructure/api/contacts/index.js +0 -2
  195. package/es/infrastructure/api/index.js +0 -6
  196. package/es/infrastructure/api/messages/MessageAPI.js +0 -94
  197. package/es/infrastructure/api/messages/index.js +0 -2
  198. package/es/infrastructure/api/registry/agents/agentAPIRegistry.js +0 -12
  199. package/es/infrastructure/api/registry/agents/constructAgentEndPoint.js +0 -10
  200. package/es/infrastructure/api/registry/agents/index.js +0 -2
  201. package/es/infrastructure/api/registry/bots/botAPIRegistry.js +0 -18
  202. package/es/infrastructure/api/registry/bots/constructBotEndPoint.js +0 -10
  203. package/es/infrastructure/api/registry/bots/index.js +0 -2
  204. package/es/infrastructure/api/registry/channels/channelAPIRegistry.js +0 -16
  205. package/es/infrastructure/api/registry/channels/channelAgentAPIRegistry.js +0 -12
  206. package/es/infrastructure/api/registry/channels/constructChannelEndPoint.js +0 -10
  207. package/es/infrastructure/api/registry/channels/index.js +0 -2
  208. package/es/infrastructure/api/registry/contacts/constructContactEndPoint.js +0 -10
  209. package/es/infrastructure/api/registry/contacts/contactAPIRegistry.js +0 -12
  210. package/es/infrastructure/api/registry/contacts/index.js +0 -2
  211. package/es/infrastructure/api/registry/createAPIRegistry.js +0 -7
  212. package/es/infrastructure/api/registry/createBaseUrl.js +0 -3
  213. package/es/infrastructure/api/registry/getRegistryConfig.js +0 -26
  214. package/es/infrastructure/api/registry/index.js +0 -2
  215. package/es/infrastructure/api/registry/messages/constructMessageEndPoint.js +0 -4
  216. package/es/infrastructure/api/registry/messages/index.js +0 -2
  217. package/es/infrastructure/api/registry/messages/messageAPIRegistry.js +0 -62
  218. package/es/infrastructure/api/registry/sessions/constructSessionEndPoint.js +0 -10
  219. package/es/infrastructure/api/registry/sessions/index.js +0 -2
  220. package/es/infrastructure/api/registry/sessions/sessionAPIRegistry.js +0 -52
  221. package/es/infrastructure/api/sessions/SessionAPI.js +0 -84
  222. package/es/infrastructure/api/sessions/index.js +0 -2
  223. package/es/infrastructure/config/configRegistry.js +0 -27
  224. package/es/infrastructure/config/index.js +0 -2
  225. package/es/infrastructure/repositories/agents/AgentRepository.js +0 -49
  226. package/es/infrastructure/repositories/agents/index.js +0 -2
  227. package/es/infrastructure/repositories/bots/BotRepository.js +0 -58
  228. package/es/infrastructure/repositories/bots/index.js +0 -2
  229. package/es/infrastructure/repositories/channels/ChannelAgentRepository.js +0 -49
  230. package/es/infrastructure/repositories/channels/ChannelRepository.js +0 -49
  231. package/es/infrastructure/repositories/channels/index.js +0 -3
  232. package/es/infrastructure/repositories/contacts/ContactRepository.js +0 -49
  233. package/es/infrastructure/repositories/contacts/index.js +0 -2
  234. package/es/infrastructure/repositories/index.js +0 -6
  235. package/es/infrastructure/repositories/messages/MessageRepository.js +0 -119
  236. package/es/infrastructure/repositories/messages/index.js +0 -2
  237. package/es/infrastructure/repositories/sessions/SessionRepository.js +0 -113
  238. package/es/infrastructure/repositories/sessions/index.js +0 -2
@@ -1,156 +0,0 @@
1
- import { validateSchema } from '../../../core/utils';
2
- import { MessageDirection, MessageStatus, MessageTypes, MessageMeta, MetaSystemMessageType, MetaMessageSourceType } from '../../enum';
3
- import { MessageSchema } from '../../schema';
4
- import { Actor } from '../Actor';
5
- import { Attachment } from '../Attachment';
6
- import Action from './Action';
7
- import ExternalInfo from './ExternalInfo';
8
- import Info from './Info';
9
- import Location from './Location';
10
- export default class Message {
11
- constructor() {
12
- let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
13
- const validatedData = validateSchema(MessageSchema, data);
14
- this.data = {
15
- id: validatedData.id,
16
- sessionId: validatedData.sessionId,
17
- displayMessage: validatedData.displayMessage,
18
- statusUpdatedTime: validatedData.statusUpdatedTime,
19
- actor: new Actor(validatedData.actor).toJSON(),
20
- direction: validatedData.direction,
21
- createdTime: validatedData.createdTime,
22
- index: validatedData.index,
23
- replyToMessage: validatedData.replyToMessage ? new Message(validatedData.replyToMessage).toJSON() : null,
24
- status: validatedData.status,
25
- info: validatedData.info ? new Info(validatedData.info).toJSON() : null,
26
- location: validatedData.location ? new Location(validatedData.location).toJSON() : null,
27
- externalInfo: validatedData.externalInfo ? new ExternalInfo(validatedData.externalInfo).toJSON() : null,
28
- layout: validatedData.layout,
29
- action: validatedData.action ? new Action(validatedData.action).toJSON() : null,
30
- meta: validatedData.meta,
31
- contentType: validatedData.contentType,
32
- fullContentURL: validatedData.fullContentURL,
33
- attachment: validatedData.attachment ? new Attachment(validatedData.attachment).toJSON() : null,
34
- template: validatedData.template,
35
- type: validatedData.type,
36
- isRead: validatedData.isRead,
37
- article: validatedData.article,
38
- webUrl: validatedData.webUrl
39
- };
40
- }
41
-
42
- static isLocation(type) {
43
- return type === MessageTypes.LOCATION;
44
- }
45
-
46
- static isDeleted(status) {
47
- return status === MessageStatus.DELETED;
48
- }
49
-
50
- static isOutgoing(direction) {
51
- return direction === MessageDirection.OUT;
52
- }
53
-
54
- static isIncoming(direction) {
55
- return direction === MessageDirection.IN;
56
- }
57
-
58
- static isInfo(type) {
59
- return type === MessageTypes.INFO;
60
- }
61
-
62
- static isExternalInfo(type) {
63
- return type === MessageTypes.EXTERNAL_INFO;
64
- }
65
-
66
- static isAttachment(type) {
67
- return type === MessageTypes.ATTACHMENT;
68
- }
69
-
70
- static isTemplate(type) {
71
- return type === MessageTypes.TEMPLATE;
72
- }
73
-
74
- static isActionMessage(type) {
75
- return type === MessageTypes.ACTION;
76
- }
77
-
78
- static getMetaValue() {
79
- let meta = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
80
- let key = arguments.length > 1 ? arguments[1] : undefined;
81
-
82
- if (Array.isArray(meta) && meta.length > 0) {
83
- const item = meta.find(item => item.name === key);
84
- return item ? item.value : '';
85
- }
86
-
87
- return '';
88
- }
89
-
90
- static getSystemMessageValue(meta) {
91
- return Message.getMetaValue(meta, MessageMeta.SYSTEM_MESSAGE_TYPE);
92
- }
93
-
94
- static isSystemMessage(meta) {
95
- const systemMessageType = Message.getSystemMessageValue(meta);
96
- return !!systemMessageType;
97
- }
98
-
99
- static isHapinessRating(meta) {
100
- const messageType = Message.getSystemMessageValue(meta);
101
- return messageType === MetaSystemMessageType.CX_HAPPINESS_SURVEY;
102
- }
103
-
104
- static isWelcomeMessage(meta) {
105
- const messageType = Message.getSystemMessageValue(meta);
106
- return messageType === MetaSystemMessageType.WELCOMEMSG;
107
- }
108
-
109
- static isWorkflowMessage(meta) {
110
- const messageType = Message.getSystemMessageValue(meta);
111
- return messageType === MetaSystemMessageType.WORKFLOW_MESSAGE;
112
- }
113
-
114
- static isWorkflowNotification(meta) {
115
- const messageType = Message.getSystemMessageValue(meta);
116
- return messageType === MetaSystemMessageType.WORKFLOW_NOTIFICATION;
117
- }
118
-
119
- static isUnsupportedFile(meta) {
120
- const messageType = Message.getSystemMessageValue(meta);
121
- return messageType === MetaSystemMessageType.UN_SUPPORTED_FILE;
122
- }
123
-
124
- static getMessageSourceValue(meta) {
125
- return Message.getMetaValue(meta, MessageMeta.MESSAGE_SOURCE);
126
- }
127
-
128
- static isHistoryMessage(meta) {
129
- const messageType = Message.getMessageSourceValue(meta);
130
- return messageType === MetaMessageSourceType.HISTORY_MESSAGE;
131
- }
132
-
133
- static isHistoryMessageViaMobileWBApp(meta) {
134
- const messageType = Message.getMessageSourceValue(meta);
135
- return messageType === MetaMessageSourceType.HISTORY_MESSAGE_VIA_MOBILE_WHATSAPP_BUSINESS_APP;
136
- }
137
-
138
- static isMessageViaMobileWBApp(meta) {
139
- const messageType = Message.getMessageSourceValue(meta);
140
- return messageType === MetaMessageSourceType.VIA_MOBILE_WHATSAPP_BUSINESS_APP;
141
- }
142
-
143
- static isFailed(status) {
144
- return status === MessageStatus.FAILED;
145
- }
146
-
147
- static isAutoSent(systemMsgType) {
148
- return !!systemMsgType;
149
- }
150
-
151
- toJSON() {
152
- return { ...this.data
153
- };
154
- }
155
-
156
- }
@@ -1,21 +0,0 @@
1
- import { validateSchema } from '../../../core/utils';
2
- import { MessageWithSessionSchema } from '../../schema';
3
- import { Session } from '../Session';
4
- import Message from './Message';
5
- export default class MessageWithSession {
6
- constructor() {
7
- let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
8
- const validatedData = validateSchema(MessageWithSessionSchema, data);
9
- const messageData = new Message(validatedData).toJSON();
10
- const sessionData = new Session(validatedData.session).toJSON();
11
- this.data = { ...messageData,
12
- session: sessionData
13
- };
14
- }
15
-
16
- toJSON() {
17
- return { ...this.data
18
- };
19
- }
20
-
21
- }
@@ -1,7 +0,0 @@
1
- export { default as Message } from './Message';
2
- export { default as Info } from './Info';
3
- export { default as Action } from './Action';
4
- export { default as ExternalInfo } from './ExternalInfo';
5
- export { default as Location } from './Location';
6
- export { default as MessageWithSession } from './MessageWithSession';
7
- export { default as InfoTarget } from './InfoTarget';
@@ -1,80 +0,0 @@
1
- import { validateSchema } from '../../../core/utils';
2
- import { SessionSchema } from '../../schema';
3
- import { Actor } from '../Actor';
4
- import { SessionReplyStatus, SessionStatus } from '../../enum';
5
- export default class Session {
6
- constructor() {
7
- let data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
8
- const validatedData = validateSchema(SessionSchema, data);
9
- this.data = {
10
- channelId: validatedData.channelId,
11
- status: validatedData.status,
12
- createdTime: validatedData.createdTime,
13
- agentId: validatedData.agentId,
14
- botId: validatedData.botId,
15
- actor: new Actor(validatedData.actor).toJSON(),
16
- subject: validatedData.subject,
17
- messagesCount: validatedData.messagesCount,
18
- agentLastActiveTime: validatedData.agentLastActiveTime,
19
- contactLastActiveTime: validatedData.contactLastActiveTime,
20
- lastActiveTime: validatedData.lastActiveTime,
21
- unreadMessagesCount: validatedData.unreadMessagesCount,
22
- integrationServiceId: validatedData.integrationServiceId,
23
- replyStatus: validatedData.replyStatus,
24
- id: validatedData.id,
25
- contactId: validatedData.contactId,
26
- meta: validatedData.meta,
27
- assignee: validatedData.assignee ? new Actor(validatedData.assignee).toJSON() : null
28
- };
29
- }
30
-
31
- static isEnded(sessionStatus) {
32
- return sessionStatus === SessionStatus.ENDED;
33
- }
34
-
35
- static isBlocked(sessionStatus) {
36
- return sessionStatus === SessionStatus.BLOCKED;
37
- }
38
-
39
- static isOnProgress(sessionStatus) {
40
- return sessionStatus === SessionStatus.ON_PROGRESS;
41
- }
42
-
43
- static isOnHold(sessionStatus) {
44
- return sessionStatus === SessionStatus.ON_HOLD;
45
- }
46
-
47
- static isOpen(sessionStatus) {
48
- return sessionStatus === SessionStatus.OPEN;
49
- }
50
-
51
- static isInactiveChannel(replyStatus) {
52
- return replyStatus === SessionReplyStatus.CHANNEL_INACTIVE;
53
- }
54
-
55
- static isChannelDeleted(replyStatus) {
56
- return replyStatus === SessionReplyStatus.CHANNEL_DELETED;
57
- }
58
-
59
- static isReplyAccepted(replyStatus) {
60
- return replyStatus === SessionReplyStatus.ACCEPTED;
61
- }
62
-
63
- static isEndUserOffline(replyStatus) {
64
- return replyStatus === SessionReplyStatus.ENDUSER_OFFLINE;
65
- }
66
-
67
- static isCreated(sessionStatus) {
68
- return sessionStatus === SessionStatus.CREATED;
69
- }
70
-
71
- static isAssignedToOtherService(replyStatus) {
72
- return replyStatus === SessionReplyStatus.ASSIGNED_TO_OTHER_SERVICE;
73
- }
74
-
75
- toJSON() {
76
- return { ...this.data
77
- };
78
- }
79
-
80
- }
@@ -1,2 +0,0 @@
1
- import Session from './Session';
2
- export { Session };
@@ -1,9 +0,0 @@
1
- export * from './Actor';
2
- export * from './Agent';
3
- export * from './Session';
4
- export * from './Bot';
5
- export * from './Attachment';
6
- export * from './Message';
7
- export * from './Channel';
8
- export * from './Contact';
9
- export * from './IntegrationService';
@@ -1,7 +0,0 @@
1
- const ActorType = {
2
- AGENT: 'AGENT',
3
- BOT: 'BOT',
4
- ENDUSER: 'END_USER',
5
- SYSTEM: 'SYSTEM'
6
- };
7
- export default ActorType;
@@ -1,2 +0,0 @@
1
- import ActorType from './ActorType';
2
- export { ActorType };
@@ -1,7 +0,0 @@
1
- const AttachmentStatus = {
2
- VALID: 'VALID',
3
- // NO I18N
4
- INVALID: 'INVALID' // NO I18N
5
-
6
- };
7
- export default AttachmentStatus;
@@ -1,2 +0,0 @@
1
- import AttachmentStatus from './AttachmentStatus';
2
- export { AttachmentStatus };
@@ -1,7 +0,0 @@
1
- const BotServiceType = {
2
- DESK_GC_BOT: 'DESK_GC_BOT',
3
- DESK_ZIA_BOT: 'DESK_ZIA_BOT',
4
- ZOHO_GC_BOT: 'ZOHO_GC_BOT',
5
- ZOHO_ZIA_BOT: 'ZOHO_ZIA_BOT'
6
- };
7
- export default BotServiceType;
@@ -1,2 +0,0 @@
1
- import BotServiceType from './BotServiceType';
2
- export { BotServiceType };
@@ -1,6 +0,0 @@
1
- export * from './integrationServices';
2
- export * from './session';
3
- export * from './actor';
4
- export * from './bot';
5
- export * from './message';
6
- export * from './attachment';
@@ -1,12 +0,0 @@
1
- const IntegrationServices = {
2
- TWILIO: 'TWILIO',
3
- WHATSAPP: 'WHATSAPP',
4
- TELEGRAM: 'TELEGRAM',
5
- WECHAT: 'WECHAT',
6
- LINE: 'LINE',
7
- IM_TALK: 'IM_TALK',
8
- FACEBOOKMESSENGER: 'FACEBOOKMESSENGER',
9
- INSTAGRAM: 'INSTAGRAM',
10
- WECOM: 'WECOM'
11
- };
12
- export default IntegrationServices;
@@ -1,2 +0,0 @@
1
- import IntegrationServices from './IntegrationServices';
2
- export { IntegrationServices };
@@ -1,6 +0,0 @@
1
- const ActionSubType = {
2
- CONNECTION_AUTHENTICATE: 'CONNECTION_AUTHENTICATE',
3
- AGENT: 'AGENT',
4
- UN_IDENTIFIED: 'UN_IDENTIFIED'
5
- };
6
- export default ActionSubType;
@@ -1,6 +0,0 @@
1
- const ActionType = {
2
- TRANSFER: 'TRANSFER',
3
- REDIRECT_URL: 'REDIRECT_URL',
4
- UN_INDENTIFIED: 'UN_IDENTIFIED'
5
- };
6
- export default ActionType;
@@ -1,9 +0,0 @@
1
- const ExternalInfoAction = {
2
- UN_IDENTIFIED: 'UN_IDENTIFIED',
3
- GC_CONVERSATION_ENDED: 'GC_CONVERSATION_ENDED',
4
- ZIA_CONVERSATION_ENDED: 'ZIA_CONVERSATION_ENDED',
5
- NEW_FOLLOWER: 'NEW_FOLLOWER',
6
- CHAT_BLOCKED: 'CHAT_BLOCKED',
7
- CHAT_UNBLOCKED: 'CHAT_UNBLOCKED'
8
- };
9
- export default ExternalInfoAction;
@@ -1,17 +0,0 @@
1
- const InfoAction = {
2
- UN_IDENTIFIED: 'UN_IDENTIFIED',
3
- END_SESSION: 'END_SESSION',
4
- BLOCK_SESSION: 'BLOCK_SESSION',
5
- UNBLOCK_SESSION: 'UNBLOCK_SESSION',
6
- CHAT_AUTO_ASSIGN: 'CHAT_AUTO_ASSIGN',
7
- CHAT_ACCEPT: 'CHAT_ACCEPT',
8
- CHAT_REOPEN: 'CHAT_REOPEN',
9
- CHAT_TRANSFER: 'CHAT_TRANSFER',
10
- ADD_PARTICIPANT: 'ADD_PARTICIPANT',
11
- REMOVE_PARTICIPANT: 'REMOVE_PARTICIPANT',
12
- CHAT_REOPENED_ON_TRANSFER: 'CHAT_REOPENED_ON_TRANSFER',
13
- CHAT_INITIATION: 'CHAT_INITIATION',
14
- USER_LEFT: 'USER_LEFT',
15
- USER_JOINED: 'USER_JOINED'
16
- };
17
- export default InfoAction;
@@ -1,10 +0,0 @@
1
- const InfoSessionStatus = {
2
- CREATED: 'CREATED',
3
- OPEN: 'OPEN',
4
- ON_PROGRESS: 'ON_PROGRESS',
5
- ON_HOLD: 'ON_HOLD',
6
- ENDED: 'ENDED',
7
- BLOCKED: 'BLOCKED',
8
- MISSED: 'MISSED'
9
- };
10
- export default InfoSessionStatus;
@@ -1,11 +0,0 @@
1
- const InfoTargetType = {
2
- AGENT: 'AGENT',
3
- // NO I18N
4
- BOT: 'BOT',
5
- // NO I18N
6
- END_USER: 'END_USER',
7
- // NO I18N
8
- SESSION: 'SESSION' // NO I18N
9
-
10
- };
11
- export default InfoTargetType;
@@ -1,6 +0,0 @@
1
- const MessageContentType = {
2
- HTML_TEXT: 'text/html',
3
- PLAIN_TEXT: 'text/plain',
4
- APPLICATION_JSON: 'application/json'
5
- };
6
- export default MessageContentType;
@@ -1,6 +0,0 @@
1
- const MessageDirection = {
2
- OUT: 'out',
3
- IN: 'in'
4
- }; // For im api need to changes this as out and in
5
-
6
- export default MessageDirection;
@@ -1,5 +0,0 @@
1
- const MessageMeta = {
2
- SYSTEM_MESSAGE_TYPE: 'SYSTEM_MESSAGE_TYPE',
3
- MESSAGE_SOURCE: 'MESSAGE_SOURCE'
4
- };
5
- export default MessageMeta;
@@ -1,11 +0,0 @@
1
- const MessageStatus = {
2
- SAVED: 'SAVED',
3
- FAILED: 'FAILED',
4
- QUEUED: 'QUEUED',
5
- SENT: 'SENT',
6
- DELIVERED: 'DELIVERED',
7
- READ: 'READ',
8
- DELETED: 'DELETED',
9
- MISSED: 'MISSED'
10
- };
11
- export default MessageStatus;
@@ -1,11 +0,0 @@
1
- const MessageTypes = {
2
- TEXT: 'TEXT',
3
- INFO: 'INFO',
4
- ATTACHMENT: 'ATTACHMENT',
5
- LOCATION: 'LOCATION',
6
- LAYOUT: 'LAYOUT',
7
- EXTERNAL_INFO: 'EXTERNAL_INFO',
8
- TEMPLATE: 'TEMPLATE',
9
- ACTION: 'ACTION'
10
- };
11
- export default MessageTypes;
@@ -1,6 +0,0 @@
1
- const MetaMessageSourceType = {
2
- HISTORY_MESSAGE_VIA_MOBILE_WHATSAPP_BUSINESS_APP: 'HISTORY_MESSAGE_VIA_MOBILE_WHATSAPP_BUSINESS_APP',
3
- HISTORY_MESSAGE: 'HISTORY_MESSAGE',
4
- VIA_MOBILE_WHATSAPP_BUSINESS_APP: 'VIA_MOBILE_WHATSAPP_BUSINESS_APP'
5
- };
6
- export default MetaMessageSourceType;
@@ -1,8 +0,0 @@
1
- const MetaSystemMessageType = {
2
- WELCOMEMSG: 'WELCOMEMSG',
3
- WORKFLOW_MESSAGE: 'WORKFLOW_MESSAGE',
4
- WORKFLOW_NOTIFICATION: 'WORKFLOW_NOTIFICATION',
5
- CX_HAPPINESS_SURVEY: 'CX_HAPPINESS_SURVEY',
6
- UN_SUPPORTED_FILE: 'UN_SUPPORTED_FILE'
7
- };
8
- export default MetaSystemMessageType;
@@ -1,14 +0,0 @@
1
- import MessageTypes from './MessageType';
2
- import MessageStatus from './MessageStatus';
3
- import MessageDirection from './MessageDirection';
4
- import MessageContentType from './MessageContentType';
5
- import MessageMeta from './MessageMeta';
6
- import ActionType from './ActionType';
7
- import ExternalInfoAction from './ExternalInfoAction';
8
- import InfoSessionStatus from './InfoSessionStatus';
9
- import InfoAction from './InfoAction';
10
- import ActionSubType from './ActionSubType';
11
- import InfoTargetType from './InfoTargetType';
12
- import MetaSystemMessageType from './MetaSystemMessageType';
13
- import MetaMessageSourceType from './MetaMessageSourceType';
14
- export { MessageTypes, MessageStatus, MessageDirection, MessageContentType, MessageMeta, ActionType, ActionSubType, ExternalInfoAction, InfoSessionStatus, InfoAction, InfoTargetType, MetaSystemMessageType, MetaMessageSourceType };
@@ -1,21 +0,0 @@
1
- const SessionReplyStatus = {
2
- ACCEPTED: 'ACCEPTED',
3
- CHANNEL_INACTIVE: 'CHANNEL_INACTIVE',
4
- CHANNEL_REVOKED: 'CHANNEL_REVOKED',
5
- SESSION_ENDED: 'SESSION_ENDED',
6
- SESSION_BLOCKED: 'SESSION_BLOCKED',
7
- SESSION_EXPIRED: 'SESSION_EXPIRED',
8
- UNASSIGNED: 'UNASSIGNED',
9
- NOT_AN_ASSIGNEE: 'NOT_AN_ASSIGNEE',
10
- CREDIT_EXHAUSTED: 'CREDIT_EXHAUSTED',
11
- ACCESSTOKEN_EXPIRED: 'ACCESSTOKEN_EXPIRED',
12
- PERMISSION_REVOKED: 'PERMISSION_REVOKED',
13
- UNEXPECTED_ERROR: 'UNEXPECTED_ERROR',
14
- PAGE_REMOVED: 'PAGE_REMOVED',
15
- SANDBOX_LIMIT_REACHED: 'SANDBOX_LIMIT_REACHED',
16
- CHANNEL_DELETED: 'CHANNEL_DELETED',
17
- ENDUSER_OFFLINE: 'ENDUSER_OFFLINE',
18
- CONFIG_SKIPPED_CHANNEL: 'CONFIG_SKIPPED_CHANNEL',
19
- ASSIGNED_TO_OTHER_SERVICE: 'ASSIGNED_TO_OTHER_SERVICE'
20
- };
21
- export default SessionReplyStatus;
@@ -1,10 +0,0 @@
1
- const SessionStatus = {
2
- CREATED: 'CREATED',
3
- OPEN: 'OPEN',
4
- ON_PROGRESS: 'ON_PROGRESS',
5
- ON_HOLD: 'ON_HOLD',
6
- ENDED: 'ENDED',
7
- BLOCKED: 'BLOCKED',
8
- UNASSIGNED: 'UNASSIGNED'
9
- };
10
- export default SessionStatus;
@@ -1,3 +0,0 @@
1
- import SessionReplyStatus from './SessionReplyStatus';
2
- import SessionStatus from './SessionStatus';
3
- export { SessionStatus, SessionReplyStatus };
@@ -1,6 +0,0 @@
1
- export default class IAdapter {
2
- adapt() {
3
- throw new Error('Method "adapt" must be implemented');
4
- }
5
-
6
- }
@@ -1,3 +0,0 @@
1
- import IAdapter from './IAdapter';
2
- export * from './repositories';
3
- export { IAdapter };
@@ -1,17 +0,0 @@
1
- import { ModuleNames } from '../../../../core/constants';
2
- import BaseAPI from '../../../../infrastructure/api/BaseAPI';
3
- import { getAgentsRequest } from '../../../dto';
4
- export default class IAgentRepository extends BaseAPI {
5
- constructor() {
6
- super({
7
- module: ModuleNames.AGENTS
8
- });
9
- } // eslint-disable-next-line no-unused-vars
10
-
11
-
12
- async getAgents() {
13
- let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getAgentsRequest();
14
- throw new Error('Method not implemented');
15
- }
16
-
17
- }
@@ -1,2 +0,0 @@
1
- import IAgentRepository from './IAgentRepository';
2
- export { IAgentRepository };
@@ -1,23 +0,0 @@
1
- import { ModuleNames } from '../../../../core/constants';
2
- import BaseAPI from '../../../../infrastructure/api/BaseAPI';
3
- import { getBotsRequest, getBotRequest } from '../../../dto';
4
- export default class IBotRepository extends BaseAPI {
5
- constructor() {
6
- super({
7
- module: ModuleNames.BOTS
8
- });
9
- } // eslint-disable-next-line no-unused-vars
10
-
11
-
12
- async getBots() {
13
- let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getBotsRequest();
14
- throw new Error('Method not implemented');
15
- } // eslint-disable-next-line no-unused-vars
16
-
17
-
18
- async getBot() {
19
- let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getBotRequest();
20
- throw new Error('Method not implemented');
21
- }
22
-
23
- }
@@ -1,2 +0,0 @@
1
- import IBotRepository from './IBotRepository';
2
- export { IBotRepository };
@@ -1,17 +0,0 @@
1
- import { ModuleNames } from '../../../../core/constants';
2
- import BaseAPI from '../../../../infrastructure/api/BaseAPI';
3
- import { getChannelAgentsRequest } from '../../../dto';
4
- export default class IChannelAgentRepository extends BaseAPI {
5
- constructor() {
6
- super({
7
- module: `${ModuleNames.CHANNELS}.${ModuleNames.AGENTS}`
8
- });
9
- } // eslint-disable-next-line no-unused-vars
10
-
11
-
12
- getAgents() {
13
- let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getChannelAgentsRequest();
14
- throw new Error('Method not implemented.');
15
- }
16
-
17
- }
@@ -1,17 +0,0 @@
1
- import { ModuleNames } from '../../../../core/constants';
2
- import BaseAPI from '../../../../infrastructure/api/BaseAPI';
3
- import { getChannelsRequest } from '../../../dto';
4
- export default class IChannelRepository extends BaseAPI {
5
- constructor() {
6
- super({
7
- module: ModuleNames.CHANNELS
8
- });
9
- } // eslint-disable-next-line no-unused-vars
10
-
11
-
12
- getChannels() {
13
- let request = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : getChannelsRequest();
14
- throw new Error('Method not implemented.');
15
- }
16
-
17
- }
@@ -1,3 +0,0 @@
1
- import IChannelAgentRepository from './IChannelAgentRepository';
2
- import IChannelRepository from './IChannelRepository';
3
- export { IChannelRepository, IChannelAgentRepository };