@zohoim/client-sdk 1.0.0-poc98 → 1.0.0-replyAreaPoc1

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 (271) hide show
  1. package/es/application/services/agents/AgentService.js +1 -1
  2. package/es/application/services/agents/index.js +1 -1
  3. package/es/application/services/bots/BotService.js +1 -1
  4. package/es/application/services/bots/index.js +1 -1
  5. package/es/application/services/cannedMessages/CannedMessageService.js +51 -0
  6. package/es/application/services/cannedMessages/index.js +2 -0
  7. package/es/application/services/channels/ChannelAgentService.js +1 -1
  8. package/es/application/services/channels/ChannelService.js +1 -1
  9. package/es/application/services/channels/index.js +2 -2
  10. package/es/application/services/contacts/ContactService.js +1 -1
  11. package/es/application/services/contacts/index.js +1 -1
  12. package/es/application/services/index.js +8 -6
  13. package/es/application/services/messages/MessageService.js +6 -1
  14. package/es/application/services/messages/index.js +1 -1
  15. package/es/application/services/sessions/SessionService.js +1 -1
  16. package/es/application/services/sessions/index.js +1 -1
  17. package/es/application/services/templateMessages/TemplateMessageService.js +26 -0
  18. package/es/application/services/templateMessages/index.js +2 -0
  19. package/es/core/constants/ModuleNames.js +4 -1
  20. package/es/core/constants/index.js +2 -2
  21. package/es/core/errors/index.js +2 -2
  22. package/es/core/utils/index.js +2 -2
  23. package/es/core/utils/validateSchema.js +1 -1
  24. package/es/domain/dto/agents/getAgentsRequest.js +1 -1
  25. package/es/domain/dto/agents/index.js +1 -1
  26. package/es/domain/dto/bots/getBotRequest.js +1 -1
  27. package/es/domain/dto/bots/getBotsRequest.js +1 -1
  28. package/es/domain/dto/bots/index.js +2 -2
  29. package/es/domain/dto/cannedMessages/createCannedMessageRequest.js +13 -0
  30. package/es/domain/dto/cannedMessages/deleteCannedMessageRequest.js +13 -0
  31. package/es/domain/dto/cannedMessages/disableCannedMessageRequest.js +13 -0
  32. package/es/domain/dto/cannedMessages/enableCannedMessageRequest.js +13 -0
  33. package/es/domain/dto/cannedMessages/getCannedMessageRequest.js +13 -0
  34. package/es/domain/dto/cannedMessages/getCannedMessagesRequest.js +18 -0
  35. package/es/domain/dto/cannedMessages/index.js +7 -0
  36. package/es/domain/dto/cannedMessages/updateCannedMessageRequest.js +13 -0
  37. package/es/domain/dto/channels/agents/getChannelAgentsRequest.js +1 -1
  38. package/es/domain/dto/channels/agents/index.js +1 -1
  39. package/es/domain/dto/channels/getChannelsRequest.js +1 -1
  40. package/es/domain/dto/channels/index.js +2 -2
  41. package/es/domain/dto/contacts/getContactsRequest.js +1 -1
  42. package/es/domain/dto/contacts/index.js +1 -1
  43. package/es/domain/dto/index.js +8 -6
  44. package/es/domain/dto/messages/deleteMessageRequest.js +1 -1
  45. package/es/domain/dto/messages/getFullContentRequest.js +1 -1
  46. package/es/domain/dto/messages/getMessageRequest.js +14 -0
  47. package/es/domain/dto/messages/getMessagesRequest.js +1 -1
  48. package/es/domain/dto/messages/index.js +9 -8
  49. package/es/domain/dto/messages/initiateSessionRequest.js +2 -1
  50. package/es/domain/dto/messages/resendMessageRequest.js +1 -1
  51. package/es/domain/dto/messages/searchMessagesRequest.js +1 -1
  52. package/es/domain/dto/messages/sendAttachmentRequest.js +1 -2
  53. package/es/domain/dto/messages/sendMessageRequest.js +3 -1
  54. package/es/domain/dto/sessions/getSessionAttachmentsRequest.js +1 -1
  55. package/es/domain/dto/sessions/getSessionLastMessagesRequest.js +1 -1
  56. package/es/domain/dto/sessions/getSessionRequest.js +1 -1
  57. package/es/domain/dto/sessions/getSessionsRequest.js +1 -1
  58. package/es/domain/dto/sessions/index.js +8 -8
  59. package/es/domain/dto/sessions/markSessionAsReadRequest.js +6 -2
  60. package/es/domain/dto/sessions/pickupSessionRequest.js +1 -1
  61. package/es/domain/dto/sessions/updateSessionAssigneeRequest.js +1 -1
  62. package/es/domain/dto/sessions/updateSessionStatusRequest.js +1 -1
  63. package/es/domain/dto/templateMessages/getTemplateCreditExhaustStatusRequest.js +11 -0
  64. package/es/domain/dto/templateMessages/getTemplateLanguagesRequest.js +7 -0
  65. package/es/domain/dto/templateMessages/index.js +2 -0
  66. package/es/domain/entities/Actor/Actor.js +7 -3
  67. package/es/domain/entities/Actor/index.js +1 -1
  68. package/es/domain/entities/Agent/Agent.js +2 -2
  69. package/es/domain/entities/Agent/index.js +1 -1
  70. package/es/domain/entities/Attachment/Attachment.js +2 -2
  71. package/es/domain/entities/Attachment/index.js +1 -1
  72. package/es/domain/entities/Bot/Bot.js +2 -2
  73. package/es/domain/entities/Bot/index.js +1 -1
  74. package/es/domain/entities/CannedMessage/CannedMessage.js +52 -0
  75. package/es/domain/entities/CannedMessage/index.js +2 -0
  76. package/es/domain/entities/Channel/Channel.js +2 -2
  77. package/es/domain/entities/Channel/index.js +1 -1
  78. package/es/domain/entities/Contact/Contact.js +2 -2
  79. package/es/domain/entities/Contact/index.js +1 -1
  80. package/es/domain/entities/CustomReplyExtension/CustomReplyExtension.js +22 -0
  81. package/es/domain/entities/CustomReplyExtension/index.js +2 -0
  82. package/es/domain/entities/IntegrationService/IntegrationService.js +3 -3
  83. package/es/domain/entities/IntegrationService/index.js +1 -1
  84. package/es/domain/entities/Message/Action.js +3 -3
  85. package/es/domain/entities/Message/ExternalInfo.js +11 -2
  86. package/es/domain/entities/Message/Info.js +10 -5
  87. package/es/domain/entities/Message/InfoTarget.js +2 -2
  88. package/es/domain/entities/Message/Location.js +2 -2
  89. package/es/domain/entities/Message/Message.js +69 -10
  90. package/es/domain/entities/Message/MessageWithSession.js +4 -4
  91. package/es/domain/entities/Message/index.js +7 -7
  92. package/es/domain/entities/Session/Session.js +26 -6
  93. package/es/domain/entities/Session/index.js +1 -1
  94. package/es/domain/entities/TemplateMessage/TemplateCreditExhaustStatus.js +24 -0
  95. package/es/domain/entities/TemplateMessage/TemplateLanguage.js +18 -0
  96. package/es/domain/entities/TemplateMessage/index.js +3 -0
  97. package/es/domain/entities/index.js +12 -9
  98. package/es/domain/enum/actor/ActorType.js +1 -1
  99. package/es/domain/enum/actor/index.js +1 -1
  100. package/es/domain/enum/attachment/index.js +1 -1
  101. package/es/domain/enum/bot/index.js +1 -1
  102. package/es/domain/enum/cannedMessage/CannedMessageStatus.js +6 -0
  103. package/es/domain/enum/cannedMessage/index.js +2 -0
  104. package/es/domain/enum/index.js +8 -6
  105. package/es/domain/enum/integrationServices/index.js +1 -1
  106. package/es/domain/enum/message/MessageDirection.js +2 -2
  107. package/es/domain/enum/message/MessageMeta.js +4 -0
  108. package/es/domain/enum/message/MetaSystemMessageType.js +8 -0
  109. package/es/domain/enum/message/index.js +13 -11
  110. package/es/domain/enum/session/index.js +2 -2
  111. package/es/domain/enum/templateMessage/TemplateCreditExhaustStatusCode.js +4 -0
  112. package/es/domain/enum/templateMessage/TemplateLanguage.js +74 -0
  113. package/es/domain/enum/templateMessage/index.js +3 -0
  114. package/es/domain/interfaces/index.js +2 -2
  115. package/es/domain/interfaces/repositories/agents/IAgentRepository.js +3 -3
  116. package/es/domain/interfaces/repositories/agents/index.js +1 -1
  117. package/es/domain/interfaces/repositories/bots/IBotRepository.js +3 -3
  118. package/es/domain/interfaces/repositories/bots/index.js +1 -1
  119. package/es/domain/interfaces/repositories/cannedMessages/ICannedMessageRepository.js +47 -0
  120. package/es/domain/interfaces/repositories/cannedMessages/index.js +2 -0
  121. package/es/domain/interfaces/repositories/channels/IChannelAgentRepository.js +3 -3
  122. package/es/domain/interfaces/repositories/channels/IChannelRepository.js +3 -3
  123. package/es/domain/interfaces/repositories/channels/index.js +2 -2
  124. package/es/domain/interfaces/repositories/contacts/IContactRepository.js +3 -3
  125. package/es/domain/interfaces/repositories/contacts/index.js +1 -1
  126. package/es/domain/interfaces/repositories/index.js +8 -6
  127. package/es/domain/interfaces/repositories/messages/IMessageRepository.js +8 -3
  128. package/es/domain/interfaces/repositories/messages/index.js +1 -1
  129. package/es/domain/interfaces/repositories/sessions/ISessionRepository.js +3 -3
  130. package/es/domain/interfaces/repositories/sessions/index.js +1 -1
  131. package/es/domain/interfaces/repositories/templateMessages/ITemplateMessageRepository.js +21 -0
  132. package/es/domain/interfaces/repositories/templateMessages/index.js +2 -0
  133. package/es/domain/schema/actor/ActorSchema.js +1 -1
  134. package/es/domain/schema/actor/AgentSchema.js +1 -1
  135. package/es/domain/schema/actor/index.js +2 -2
  136. package/es/domain/schema/attachment/AttachmentSchema.js +1 -1
  137. package/es/domain/schema/attachment/index.js +1 -1
  138. package/es/domain/schema/bot/BotSchema.js +1 -1
  139. package/es/domain/schema/bot/index.js +1 -1
  140. package/es/domain/schema/cannedMessage/CannedMessageSchema.js +54 -0
  141. package/es/domain/schema/cannedMessage/index.js +2 -0
  142. package/es/domain/schema/channel/ChannelSchema.js +1 -1
  143. package/es/domain/schema/channel/index.js +1 -1
  144. package/es/domain/schema/contact/index.js +1 -1
  145. package/es/domain/schema/customReplyExtension/CustomReplyExtensionSchema.js +28 -0
  146. package/es/domain/schema/customReplyExtension/index.js +2 -0
  147. package/es/domain/schema/index.js +11 -8
  148. package/es/domain/schema/integrationService/IntegrationServiceSchema.js +1 -1
  149. package/es/domain/schema/integrationService/index.js +1 -1
  150. package/es/domain/schema/message/ActionSchema.js +1 -1
  151. package/es/domain/schema/message/ExternalInfoSchema.js +1 -1
  152. package/es/domain/schema/message/InfoSchema.js +2 -2
  153. package/es/domain/schema/message/InfoTargetSchema.js +1 -1
  154. package/es/domain/schema/message/MessageSchema.js +11 -7
  155. package/es/domain/schema/message/MessageWithSessionSchema.js +2 -2
  156. package/es/domain/schema/message/index.js +7 -7
  157. package/es/domain/schema/session/SessionSchema.js +2 -2
  158. package/es/domain/schema/session/index.js +1 -1
  159. package/es/domain/schema/templateMessage/TemplateCreditExhaustStatusSchema.js +13 -0
  160. package/es/domain/schema/templateMessage/TemplateLanguageSchema.js +13 -0
  161. package/es/domain/schema/templateMessage/index.js +3 -0
  162. package/es/frameworks/managers/ModuleFactory.js +25 -7
  163. package/es/frameworks/managers/ModuleManager.js +3 -3
  164. package/es/frameworks/managers/index.js +1 -1
  165. package/es/frameworks/sdk/IMSDK.js +13 -3
  166. package/es/frameworks/sdk/agents/AgentSDK.js +2 -2
  167. package/es/frameworks/sdk/agents/index.js +1 -1
  168. package/es/frameworks/sdk/bots/BotSDK.js +2 -2
  169. package/es/frameworks/sdk/bots/index.js +1 -1
  170. package/es/frameworks/sdk/cannedMessages/CannedMessageSDK.js +30 -0
  171. package/es/frameworks/sdk/cannedMessages/index.js +2 -0
  172. package/es/frameworks/sdk/channels/ChannelSDK.js +2 -2
  173. package/es/frameworks/sdk/channels/index.js +1 -1
  174. package/es/frameworks/sdk/contacts/ContactSDK.js +2 -2
  175. package/es/frameworks/sdk/contacts/index.js +1 -1
  176. package/es/frameworks/sdk/index.js +1 -1
  177. package/es/frameworks/sdk/messages/MessageSDK.js +2 -2
  178. package/es/frameworks/sdk/messages/index.js +1 -1
  179. package/es/frameworks/sdk/sessions/SessionSDK.js +2 -2
  180. package/es/frameworks/sdk/sessions/index.js +1 -1
  181. package/es/frameworks/sdk/templateMessages/TemplateMessageSDK.js +30 -0
  182. package/es/frameworks/sdk/templateMessages/index.js +2 -0
  183. package/es/index.js +8 -8
  184. package/es/infrastructure/adapters/agents/AgentAdapter.js +4 -4
  185. package/es/infrastructure/adapters/agents/index.js +1 -1
  186. package/es/infrastructure/adapters/attachments/AttachmentAdapter.js +3 -3
  187. package/es/infrastructure/adapters/attachments/index.js +1 -1
  188. package/es/infrastructure/adapters/bots/BotAdapter.js +3 -3
  189. package/es/infrastructure/adapters/bots/index.js +1 -1
  190. package/es/infrastructure/adapters/cannedMessages/CannedMessageAdapter.js +28 -0
  191. package/es/infrastructure/adapters/cannedMessages/index.js +2 -0
  192. package/es/infrastructure/adapters/channels/ChannelAdapter.js +3 -3
  193. package/es/infrastructure/adapters/channels/ChannelAgentAdapter.js +3 -3
  194. package/es/infrastructure/adapters/channels/index.js +2 -2
  195. package/es/infrastructure/adapters/contacts/ContactAdapter.js +3 -3
  196. package/es/infrastructure/adapters/contacts/index.js +1 -1
  197. package/es/infrastructure/adapters/customReplyExtension/CustomReplyExtensionAdapter.js +24 -0
  198. package/es/infrastructure/adapters/customReplyExtension/index.js +2 -0
  199. package/es/infrastructure/adapters/index.js +10 -7
  200. package/es/infrastructure/adapters/messages/MessageAdapter.js +3 -3
  201. package/es/infrastructure/adapters/messages/MessageWithSessionAdapter.js +4 -4
  202. package/es/infrastructure/adapters/messages/index.js +1 -1
  203. package/es/infrastructure/adapters/sessions/SessionAdapter.js +3 -3
  204. package/es/infrastructure/adapters/sessions/index.js +1 -1
  205. package/es/infrastructure/adapters/templateMessages/TemplateCreditExhaustStatusAdapter.js +21 -0
  206. package/es/infrastructure/adapters/templateMessages/TemplateLanguageAdapter.js +20 -0
  207. package/es/infrastructure/adapters/templateMessages/index.js +3 -0
  208. package/es/infrastructure/api/BaseAPI.js +13 -60
  209. package/es/infrastructure/api/UrlBuilder.js +53 -0
  210. package/es/infrastructure/api/agents/AgentAPI.js +2 -2
  211. package/es/infrastructure/api/agents/index.js +1 -1
  212. package/es/infrastructure/api/bots/BotAPI.js +2 -2
  213. package/es/infrastructure/api/bots/index.js +1 -1
  214. package/es/infrastructure/api/cannedMessages/CannedMessageAPI.js +74 -0
  215. package/es/infrastructure/api/cannedMessages/index.js +2 -0
  216. package/es/infrastructure/api/channels/ChannelAPI.js +2 -2
  217. package/es/infrastructure/api/channels/ChannelAgentAPI.js +2 -2
  218. package/es/infrastructure/api/channels/index.js +2 -2
  219. package/es/infrastructure/api/contacts/ContactAPI.js +2 -2
  220. package/es/infrastructure/api/contacts/index.js +1 -1
  221. package/es/infrastructure/api/index.js +8 -6
  222. package/es/infrastructure/api/messages/MessageAPI.js +12 -2
  223. package/es/infrastructure/api/messages/index.js +1 -1
  224. package/es/infrastructure/api/registry/agents/agentAPIRegistry.js +4 -4
  225. package/es/infrastructure/api/registry/agents/constructAgentEndPoint.js +1 -1
  226. package/es/infrastructure/api/registry/agents/index.js +1 -1
  227. package/es/infrastructure/api/registry/bots/botAPIRegistry.js +4 -4
  228. package/es/infrastructure/api/registry/bots/constructBotEndPoint.js +1 -1
  229. package/es/infrastructure/api/registry/bots/index.js +1 -1
  230. package/es/infrastructure/api/registry/cannedMessages/cannedMessageAPIRegistry.js +48 -0
  231. package/es/infrastructure/api/registry/cannedMessages/constructCannedMessageEndPoint.js +10 -0
  232. package/es/infrastructure/api/registry/cannedMessages/index.js +2 -0
  233. package/es/infrastructure/api/registry/channels/channelAPIRegistry.js +5 -5
  234. package/es/infrastructure/api/registry/channels/channelAgentAPIRegistry.js +4 -4
  235. package/es/infrastructure/api/registry/channels/constructChannelEndPoint.js +1 -1
  236. package/es/infrastructure/api/registry/channels/index.js +1 -1
  237. package/es/infrastructure/api/registry/contacts/constructContactEndPoint.js +1 -1
  238. package/es/infrastructure/api/registry/contacts/contactAPIRegistry.js +4 -4
  239. package/es/infrastructure/api/registry/contacts/index.js +1 -1
  240. package/es/infrastructure/api/registry/getRegistryConfig.js +10 -8
  241. package/es/infrastructure/api/registry/index.js +1 -1
  242. package/es/infrastructure/api/registry/messages/constructMessageEndPoint.js +1 -1
  243. package/es/infrastructure/api/registry/messages/index.js +1 -1
  244. package/es/infrastructure/api/registry/messages/messageAPIRegistry.js +11 -6
  245. package/es/infrastructure/api/registry/sessions/constructSessionEndPoint.js +1 -1
  246. package/es/infrastructure/api/registry/sessions/index.js +1 -1
  247. package/es/infrastructure/api/registry/sessions/sessionAPIRegistry.js +5 -5
  248. package/es/infrastructure/api/sessions/SessionAPI.js +2 -2
  249. package/es/infrastructure/api/sessions/index.js +1 -1
  250. package/es/infrastructure/api/templateMessages/TemplateMessageAPI.js +24 -0
  251. package/es/infrastructure/api/templateMessages/index.js +2 -0
  252. package/es/infrastructure/config/index.js +1 -1
  253. package/es/infrastructure/repositories/agents/AgentRepository.js +4 -4
  254. package/es/infrastructure/repositories/agents/index.js +1 -1
  255. package/es/infrastructure/repositories/bots/BotRepository.js +4 -4
  256. package/es/infrastructure/repositories/bots/index.js +1 -1
  257. package/es/infrastructure/repositories/cannedMessages/CannedMessageRepository.js +97 -0
  258. package/es/infrastructure/repositories/cannedMessages/index.js +2 -0
  259. package/es/infrastructure/repositories/channels/ChannelAgentRepository.js +4 -4
  260. package/es/infrastructure/repositories/channels/ChannelRepository.js +4 -4
  261. package/es/infrastructure/repositories/channels/index.js +2 -2
  262. package/es/infrastructure/repositories/contacts/ContactRepository.js +4 -4
  263. package/es/infrastructure/repositories/contacts/index.js +1 -1
  264. package/es/infrastructure/repositories/index.js +8 -6
  265. package/es/infrastructure/repositories/messages/MessageRepository.js +13 -5
  266. package/es/infrastructure/repositories/messages/index.js +1 -1
  267. package/es/infrastructure/repositories/sessions/SessionRepository.js +4 -4
  268. package/es/infrastructure/repositories/sessions/index.js +1 -1
  269. package/es/infrastructure/repositories/templateMessages/TemplateMessageRepository.js +77 -0
  270. package/es/infrastructure/repositories/templateMessages/index.js +2 -0
  271. package/package.json +7 -8
@@ -1,10 +1,10 @@
1
- import { MessageStatus, MessageTypes, MessageDirection, MessageContentType } from "../../enum/message";
2
- import { ActorSchema } from "../actor";
3
- import { AttachmentSchema } from "../attachment";
4
- import LocationSchema from "./LocationSchema";
5
- import ActionSchema from "./ActionSchema";
6
- import ExternalInfoSchema from "./ExternalInfoSchema";
7
- import InfoSchema from "./InfoSchema";
1
+ import { MessageStatus, MessageTypes, MessageDirection, MessageContentType } from '../../enum/message';
2
+ import { ActorSchema } from '../actor';
3
+ import { AttachmentSchema } from '../attachment';
4
+ import LocationSchema from './LocationSchema';
5
+ import ActionSchema from './ActionSchema';
6
+ import ExternalInfoSchema from './ExternalInfoSchema';
7
+ import InfoSchema from './InfoSchema';
8
8
  const MessageSchema = {
9
9
  id: {
10
10
  type: 'string',
@@ -107,6 +107,10 @@ const MessageSchema = {
107
107
  article: {
108
108
  type: 'object',
109
109
  required: false
110
+ },
111
+ webUrl: {
112
+ type: 'string',
113
+ required: false
110
114
  }
111
115
  };
112
116
  export default MessageSchema;
@@ -1,5 +1,5 @@
1
- import { SessionSchema } from "../session";
2
- import MessageSchema from "./MessageSchema";
1
+ import { SessionSchema } from '../session';
2
+ import MessageSchema from './MessageSchema';
3
3
  const MessageWithSessionSchema = { ...MessageSchema,
4
4
  session: {
5
5
  type: 'object',
@@ -1,8 +1,8 @@
1
- import MessageSchema from "./MessageSchema";
2
- import ActionSchema from "./ActionSchema";
3
- import ExternalInfoSchema from "./ExternalInfoSchema";
4
- import InfoSchema from "./InfoSchema";
5
- import LocationSchema from "./LocationSchema";
6
- import MessageWithSessionSchema from "./MessageWithSessionSchema";
7
- import InfoTargetSchema from "./InfoTargetSchema";
1
+ import MessageSchema from './MessageSchema';
2
+ import ActionSchema from './ActionSchema';
3
+ import ExternalInfoSchema from './ExternalInfoSchema';
4
+ import InfoSchema from './InfoSchema';
5
+ import LocationSchema from './LocationSchema';
6
+ import MessageWithSessionSchema from './MessageWithSessionSchema';
7
+ import InfoTargetSchema from './InfoTargetSchema';
8
8
  export { MessageSchema, ActionSchema, ExternalInfoSchema, InfoSchema, LocationSchema, MessageWithSessionSchema, InfoTargetSchema };
@@ -1,5 +1,5 @@
1
- import { IntegrationServices, SessionReplyStatus, SessionStatus } from "../../enum";
2
- import { ActorSchema } from "../actor";
1
+ import { IntegrationServices, SessionReplyStatus, SessionStatus } from '../../enum';
2
+ import { ActorSchema } from '../actor';
3
3
  const SessionSchema = {
4
4
  channelId: {
5
5
  type: 'string',
@@ -1,2 +1,2 @@
1
- import SessionSchema from "./SessionSchema";
1
+ import SessionSchema from './SessionSchema';
2
2
  export { SessionSchema };
@@ -0,0 +1,13 @@
1
+ import { TemplateCreditExhaustStatusCode } from '../../enum';
2
+ const TemplateCreditExhaustStatusSchema = {
3
+ code: {
4
+ type: 'string',
5
+ required: false,
6
+ enum: Object.values(TemplateCreditExhaustStatusCode)
7
+ },
8
+ message: {
9
+ type: 'string',
10
+ required: false
11
+ }
12
+ };
13
+ export default TemplateCreditExhaustStatusSchema;
@@ -0,0 +1,13 @@
1
+ import { TemplateLanguage } from '../../enum';
2
+ const TemplateLanguageSchema = {
3
+ code: {
4
+ type: 'string',
5
+ required: true
6
+ },
7
+ language: {
8
+ type: 'string',
9
+ required: true,
10
+ enum: Object.values(TemplateLanguage)
11
+ }
12
+ };
13
+ export default TemplateLanguageSchema;
@@ -0,0 +1,3 @@
1
+ import TemplateLanguageSchema from './TemplateLanguageSchema';
2
+ import TemplateCreditExhaustStatusSchema from './TemplateCreditExhaustStatusSchema';
3
+ export { TemplateLanguageSchema, TemplateCreditExhaustStatusSchema };
@@ -1,10 +1,12 @@
1
- import { ModuleNames } from "../../core/constants";
2
- import { BotSDK } from "../sdk/bots";
3
- import { ChannelSDK } from "../sdk/channels";
4
- import { SessionSDK } from "../sdk/sessions";
5
- import { MessageSDK } from "../sdk/messages";
6
- import { AgentSDK } from "../sdk/agents";
7
- import { ContactSDK } from "../sdk/contacts";
1
+ import { ModuleNames } from '../../core/constants';
2
+ import { BotSDK } from '../sdk/bots';
3
+ import { ChannelSDK } from '../sdk/channels';
4
+ import { SessionSDK } from '../sdk/sessions';
5
+ import { MessageSDK } from '../sdk/messages';
6
+ import { AgentSDK } from '../sdk/agents';
7
+ import { ContactSDK } from '../sdk/contacts';
8
+ import { CannedMessageSDK } from '../sdk/cannedMessages';
9
+ import { TemplateMessageSDK } from '../sdk/templateMessages';
8
10
  const ModuleFactory = {
9
11
  [ModuleNames.CHANNELS]: _ref => {
10
12
  let {
@@ -53,6 +55,22 @@ const ModuleFactory = {
53
55
  return new MessageSDK({
54
56
  config
55
57
  }).toJSON();
58
+ },
59
+ [ModuleNames.CANNED_MESSAGES]: _ref7 => {
60
+ let {
61
+ config
62
+ } = _ref7;
63
+ return new CannedMessageSDK({
64
+ config
65
+ }).toJSON();
66
+ },
67
+ [ModuleNames.TEMPLATE_MESSAGES]: _ref8 => {
68
+ let {
69
+ config
70
+ } = _ref8;
71
+ return new TemplateMessageSDK({
72
+ config
73
+ }).toJSON();
56
74
  }
57
75
  };
58
76
  export default ModuleFactory;
@@ -1,9 +1,9 @@
1
- import { ModuleNames } from "../../core/constants";
2
- import ModuleFactory from "./ModuleFactory";
1
+ import { ModuleNames } from '../../core/constants';
2
+ import ModuleFactory from './ModuleFactory';
3
3
  export default class ModuleManager {
4
4
  constructor() {
5
5
  this._modules = new Map();
6
- this.supportedModules = [ModuleNames.CHANNELS, ModuleNames.SESSIONS, ModuleNames.BOTS, ModuleNames.MESSAGES, ModuleNames.AGENTS, ModuleNames.CONTACTS];
6
+ this.supportedModules = [ModuleNames.CHANNELS, ModuleNames.SESSIONS, ModuleNames.BOTS, ModuleNames.MESSAGES, ModuleNames.AGENTS, ModuleNames.CONTACTS, ModuleNames.CANNED_MESSAGES, ModuleNames.TEMPLATE_MESSAGES];
7
7
  }
8
8
 
9
9
  initialize(_ref) {
@@ -1,2 +1,2 @@
1
- import ModuleManager from "./ModuleManager";
1
+ import ModuleManager from './ModuleManager';
2
2
  export { ModuleManager };
@@ -1,6 +1,6 @@
1
- import { ModuleNames } from "../../core/constants";
2
- import configRegistry from "../../infrastructure/config/configRegistry";
3
- import { ModuleManager } from "../managers";
1
+ import { ModuleNames } from '../../core/constants';
2
+ import configRegistry from '../../infrastructure/config/configRegistry';
3
+ import { ModuleManager } from '../managers';
4
4
  export default class IMSDK {
5
5
  constructor(_ref) {
6
6
  let {
@@ -43,6 +43,14 @@ export default class IMSDK {
43
43
  return this._moduleManager.getModule(ModuleNames.CONTACTS);
44
44
  }
45
45
 
46
+ get cannedMessages() {
47
+ return this._moduleManager.getModule(ModuleNames.CANNED_MESSAGES);
48
+ }
49
+
50
+ get templateMessages() {
51
+ return this._moduleManager.getModule(ModuleNames.TEMPLATE_MESSAGES);
52
+ }
53
+
46
54
  hasModule(moduleName) {
47
55
  return this._moduleManager.hasModule(moduleName);
48
56
  }
@@ -55,6 +63,8 @@ export default class IMSDK {
55
63
  messages: this.messages,
56
64
  agents: this.agents,
57
65
  contacts: this.contacts,
66
+ cannedMessages: this.cannedMessages,
67
+ templateMessages: this.templateMessages,
58
68
  hasModule: this.hasModule.bind(this)
59
69
  };
60
70
  }
@@ -1,5 +1,5 @@
1
- import { AgentService } from "../../../application/services";
2
- import { AgentRepository } from "../../../infrastructure/repositories";
1
+ import { AgentService } from '../../../application/services';
2
+ import { AgentRepository } from '../../../infrastructure/repositories';
3
3
 
4
4
  class AgentSDK {
5
5
  constructor(_ref) {
@@ -1,2 +1,2 @@
1
- import AgentSDK from "./AgentSDK";
1
+ import AgentSDK from './AgentSDK';
2
2
  export { AgentSDK };
@@ -1,5 +1,5 @@
1
- import { BotService } from "../../../application/services";
2
- import { BotRepository } from "../../../infrastructure/repositories";
1
+ import { BotService } from '../../../application/services';
2
+ import { BotRepository } from '../../../infrastructure/repositories';
3
3
 
4
4
  class BotSDK {
5
5
  constructor(_ref) {
@@ -1,2 +1,2 @@
1
- import BotSDK from "./BotSDK";
1
+ import BotSDK from './BotSDK';
2
2
  export { BotSDK };
@@ -0,0 +1,30 @@
1
+ import { CannedMessageService } from '../../../application/services';
2
+ import { CannedMessageRepository } from '../../../infrastructure/repositories';
3
+
4
+ class CannedMessageSDK {
5
+ constructor(_ref) {
6
+ let {
7
+ config
8
+ } = _ref;
9
+ const {
10
+ cannedMessageAPI,
11
+ cannedMessageAdapter
12
+ } = config;
13
+ const cannedMessageRepository = new CannedMessageRepository({
14
+ cannedMessageAPI,
15
+ cannedMessageAdapter
16
+ }).toJSON();
17
+ const cannedMessageService = new CannedMessageService({
18
+ cannedMessageRepository
19
+ }).toJSON();
20
+ this.services = { ...cannedMessageService
21
+ };
22
+ }
23
+
24
+ toJSON() {
25
+ return this.services;
26
+ }
27
+
28
+ }
29
+
30
+ export default CannedMessageSDK;
@@ -0,0 +1,2 @@
1
+ import CannedMessageSDK from './CannedMessageSDK';
2
+ export { CannedMessageSDK };
@@ -1,5 +1,5 @@
1
- import { ChannelAgentService, ChannelService } from "../../../application/services";
2
- import { ChannelAgentRepository, ChannelRepository } from "../../../infrastructure/repositories";
1
+ import { ChannelAgentService, ChannelService } from '../../../application/services';
2
+ import { ChannelAgentRepository, ChannelRepository } from '../../../infrastructure/repositories';
3
3
  export default class ChannelSDK {
4
4
  constructor(_ref) {
5
5
  let {
@@ -1,2 +1,2 @@
1
- import ChannelSDK from "./ChannelSDK";
1
+ import ChannelSDK from './ChannelSDK';
2
2
  export { ChannelSDK };
@@ -1,5 +1,5 @@
1
- import { ContactService } from "../../../application/services";
2
- import { ContactRepository } from "../../../infrastructure/repositories";
1
+ import { ContactService } from '../../../application/services';
2
+ import { ContactRepository } from '../../../infrastructure/repositories';
3
3
 
4
4
  class ContactSDK {
5
5
  constructor(_ref) {
@@ -1,2 +1,2 @@
1
- import ContactSDK from "./ContactSDK";
1
+ import ContactSDK from './ContactSDK';
2
2
  export { ContactSDK };
@@ -1,2 +1,2 @@
1
- import IMSDK from "./IMSDK";
1
+ import IMSDK from './IMSDK';
2
2
  export { IMSDK };
@@ -1,5 +1,5 @@
1
- import { MessageService } from "../../../application/services";
2
- import { MessageRepository } from "../../../infrastructure/repositories";
1
+ import { MessageService } from '../../../application/services';
2
+ import { MessageRepository } from '../../../infrastructure/repositories';
3
3
 
4
4
  class MessageSDK {
5
5
  constructor(_ref) {
@@ -1,2 +1,2 @@
1
- import MessageSDK from "./MessageSDK";
1
+ import MessageSDK from './MessageSDK';
2
2
  export { MessageSDK };
@@ -1,5 +1,5 @@
1
- import { SessionService } from "../../../application/services";
2
- import { SessionRepository } from "../../../infrastructure/repositories";
1
+ import { SessionService } from '../../../application/services';
2
+ import { SessionRepository } from '../../../infrastructure/repositories';
3
3
 
4
4
  class SessionSDK {
5
5
  constructor(_ref) {
@@ -1,2 +1,2 @@
1
- import SessionSDK from "./SessionSDK";
1
+ import SessionSDK from './SessionSDK';
2
2
  export { SessionSDK };
@@ -0,0 +1,30 @@
1
+ import { TemplateMessageService } from '../../../application/services';
2
+ import { TemplateMessageRepository } from '../../../infrastructure/repositories';
3
+
4
+ class TemplateMessageSDK {
5
+ constructor(_ref) {
6
+ let {
7
+ config
8
+ } = _ref;
9
+ const {
10
+ templateMessageAPI,
11
+ templateLanguageAdapter
12
+ } = config;
13
+ const templateMessageRepository = new TemplateMessageRepository({
14
+ templateMessageAPI,
15
+ templateLanguageAdapter
16
+ }).toJSON();
17
+ const templateMessageService = new TemplateMessageService({
18
+ templateMessageRepository
19
+ }).toJSON();
20
+ this.services = { ...templateMessageService
21
+ };
22
+ }
23
+
24
+ toJSON() {
25
+ return this.services;
26
+ }
27
+
28
+ }
29
+
30
+ export default TemplateMessageSDK;
@@ -0,0 +1,2 @@
1
+ import TemplateMessageSDK from './TemplateMessageSDK';
2
+ export { TemplateMessageSDK };
package/es/index.js CHANGED
@@ -1,12 +1,12 @@
1
1
  // domain
2
- export * from "./domain/dto";
3
- export * from "./domain/entities";
4
- export * from "./domain/enum";
5
- export * from "./domain/interfaces"; // infrastructure
2
+ export * from './domain/dto';
3
+ export * from './domain/entities';
4
+ export * from './domain/enum';
5
+ export * from './domain/interfaces'; // infrastructure
6
6
 
7
- export * from "./infrastructure/api"; // frameworks
7
+ export * from './infrastructure/api'; // frameworks
8
8
 
9
- export * from "./frameworks/sdk"; // core
9
+ export * from './frameworks/sdk'; // core
10
10
 
11
- export * from "./core/constants";
12
- export { ResponseUtils } from "./core/utils";
11
+ export * from './core/constants';
12
+ export { ResponseUtils } from './core/utils';
@@ -1,7 +1,7 @@
1
- import { AdapterError } from "../../../core/errors";
2
- import { Agent } from "../../../domain/entities";
3
- import { ActorType } from "../../../domain/enum";
4
- import { IAdapter } from "../../../domain/interfaces";
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { Agent } from '../../../domain/entities';
3
+ import { ActorType } from '../../../domain/enum';
4
+ import { IAdapter } from '../../../domain/interfaces';
5
5
  export default class AgentAdapter extends IAdapter {
6
6
  adapt(agentData) {
7
7
  if (!agentData) {
@@ -1,2 +1,2 @@
1
- import AgentAdapter from "./AgentAdapter";
1
+ import AgentAdapter from './AgentAdapter';
2
2
  export { AgentAdapter };
@@ -1,6 +1,6 @@
1
- import { AdapterError } from "../../../core/errors";
2
- import { Attachment } from "../../../domain/entities";
3
- import { IAdapter } from "../../../domain/interfaces";
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { Attachment } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
4
  export default class AttachmentAdapter extends IAdapter {
5
5
  adapt(attachmentData) {
6
6
  if (!attachmentData) {
@@ -1,2 +1,2 @@
1
- import AttachmentAdapter from "./AttachmentAdapter";
1
+ import AttachmentAdapter from './AttachmentAdapter';
2
2
  export { AttachmentAdapter };
@@ -1,6 +1,6 @@
1
- import { AdapterError } from "../../../core/errors";
2
- import { Bot } from "../../../domain/entities";
3
- import { IAdapter } from "../../../domain/interfaces";
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { Bot } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
4
  export default class BotAdapter extends IAdapter {
5
5
  adapt(botData) {
6
6
  if (!botData) {
@@ -1,2 +1,2 @@
1
- import BotAdapter from "./BotAdapter";
1
+ import BotAdapter from './BotAdapter';
2
2
  export { BotAdapter };
@@ -0,0 +1,28 @@
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { CannedMessage } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
+ export default class CannedMessageAdapter extends IAdapter {
5
+ adapt(cannedMessageData) {
6
+ if (!cannedMessageData) {
7
+ throw new AdapterError('Canned Message data is required');
8
+ }
9
+
10
+ try {
11
+ return new CannedMessage({
12
+ id: cannedMessageData.id,
13
+ title: cannedMessageData.sessionId,
14
+ tags: cannedMessageData.displayMessage,
15
+ status: cannedMessageData.statusUpdatedTime,
16
+ createdBy: cannedMessageData.actor,
17
+ isActive: cannedMessageData.direction,
18
+ isPrivate: cannedMessageData.createdTime,
19
+ translations: cannedMessageData.index,
20
+ uuid: cannedMessageData.replyToMessage,
21
+ meta: cannedMessageData.meta
22
+ }).toJSON();
23
+ } catch (error) {
24
+ throw new AdapterError(`Failed to adapt canned message: ${error.message}`);
25
+ }
26
+ }
27
+
28
+ }
@@ -0,0 +1,2 @@
1
+ import CannedMessageAdapter from './CannedMessageAdapter';
2
+ export { CannedMessageAdapter };
@@ -1,6 +1,6 @@
1
- import { AdapterError } from "../../../core/errors";
2
- import { Channel } from "../../../domain/entities";
3
- import { IAdapter } from "../../../domain/interfaces";
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { Channel } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
4
  export default class ChannelAdapter extends IAdapter {
5
5
  adapt(rawChannel) {
6
6
  if (!rawChannel) {
@@ -1,6 +1,6 @@
1
- import { AdapterError } from "../../../core/errors";
2
- import { Agent } from "../../../domain/entities";
3
- import { IAdapter } from "../../../domain/interfaces";
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { Agent } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
4
  export default class ChannelAgentAdapter extends IAdapter {
5
5
  /**
6
6
  * Adapts channel agent data to Agent entity
@@ -1,3 +1,3 @@
1
- import ChannelAdapter from "./ChannelAdapter";
2
- import ChannelAgentAdapter from "./ChannelAgentAdapter";
1
+ import ChannelAdapter from './ChannelAdapter';
2
+ import ChannelAgentAdapter from './ChannelAgentAdapter';
3
3
  export { ChannelAgentAdapter, ChannelAdapter };
@@ -1,6 +1,6 @@
1
- import { AdapterError } from "../../../core/errors";
2
- import { Contact } from "../../../domain/entities";
3
- import { IAdapter } from "../../../domain/interfaces";
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { Contact } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
4
  export default class ContactAdapter extends IAdapter {
5
5
  adapt(contactData) {
6
6
  if (!contactData) {
@@ -1,2 +1,2 @@
1
- import ContactAdapter from "./ContactAdapter";
1
+ import ContactAdapter from './ContactAdapter';
2
2
  export { ContactAdapter };
@@ -0,0 +1,24 @@
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { CustomReplyExtension } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
+ export default class CustomReplyExtensionAdapter extends IAdapter {
5
+ adapt(customReplyExtData) {
6
+ if (!customReplyExtData) {
7
+ throw new AdapterError('custom Reply Extension Data is required');
8
+ }
9
+
10
+ try {
11
+ return new CustomReplyExtension({
12
+ id: customReplyExtData.id,
13
+ title: customReplyExtData.title,
14
+ message: customReplyExtData.message,
15
+ displayMessage: customReplyExtData.displayMessage,
16
+ webUrl: customReplyExtData.webUrl,
17
+ categoryName: customReplyExtData.categoryName
18
+ }).toJSON();
19
+ } catch (error) {
20
+ throw new AdapterError(`Failed to adapt custom Reply Extension Data: ${error.message}`);
21
+ }
22
+ }
23
+
24
+ }
@@ -0,0 +1,2 @@
1
+ import CustomReplyExtensionAdapter from './CustomReplyExtensionAdapter';
2
+ export { CustomReplyExtensionAdapter };
@@ -1,7 +1,10 @@
1
- export * from "./channels";
2
- export * from "./sessions";
3
- export * from "./bots";
4
- export * from "./attachments";
5
- export * from "./messages";
6
- export * from "./agents";
7
- export * from "./contacts";
1
+ export * from './channels';
2
+ export * from './sessions';
3
+ export * from './bots';
4
+ export * from './attachments';
5
+ export * from './messages';
6
+ export * from './agents';
7
+ export * from './contacts';
8
+ export * from './cannedMessages';
9
+ export * from './templateMessages';
10
+ export * from './customReplyExtension';
@@ -1,6 +1,6 @@
1
- import { AdapterError } from "../../../core/errors";
2
- import { Message } from "../../../domain/entities";
3
- import { IAdapter } from "../../../domain/interfaces";
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { Message } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
4
  export default class MessageAdapter extends IAdapter {
5
5
  adapt(messageData) {
6
6
  if (!messageData) {
@@ -1,7 +1,7 @@
1
- import { AdapterError } from "../../../core/errors";
2
- import { MessageWithSession } from "../../../domain/entities";
3
- import { IAdapter } from "../../../domain/interfaces";
4
- import { MessageAdapter, SessionAdapter } from "../index";
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { MessageWithSession } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
+ import { MessageAdapter, SessionAdapter } from '../index';
5
5
  export default class MessageWithSessionAdapter extends IAdapter {
6
6
  adapt(messageData) {
7
7
  if (!messageData) {
@@ -1,2 +1,2 @@
1
- import MessageAdapter from "./MessageAdapter";
1
+ import MessageAdapter from './MessageAdapter';
2
2
  export { MessageAdapter };
@@ -1,6 +1,6 @@
1
- import { AdapterError } from "../../../core/errors";
2
- import { Session } from "../../../domain/entities";
3
- import { IAdapter } from "../../../domain/interfaces";
1
+ import { AdapterError } from '../../../core/errors';
2
+ import { Session } from '../../../domain/entities';
3
+ import { IAdapter } from '../../../domain/interfaces';
4
4
  export default class SessionAdapter extends IAdapter {
5
5
  adapt(sessionData) {
6
6
  if (!sessionData) {
@@ -1,2 +1,2 @@
1
- import SessionAdapter from "./SessionAdapter";
1
+ import SessionAdapter from './SessionAdapter';
2
2
  export { SessionAdapter };