1 // *************************************************************************
3 // * xCALLY Motion - The Omnichannel Contact Center *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved *
6 // *************************************************************************
8 // * Email: info@xcally.com *
9 // * Website: https://www.xcally.com *
11 // *************************************************************************
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold. *
17 // *************************************************************************
18 var _0x3a91=['remove','getUsers','setDataValue','Users','map','findAll','then','unreadMessages','emit','catch','hook','exports','../../mysqldb','ChatMessage','setMaxListeners','save'];(function(_0x347960,_0x4fefa2){var _0x45f409=function(_0x4fa7ca){while(--_0x4fa7ca){_0x347960['push'](_0x347960['shift']());}};_0x45f409(++_0x4fefa2);}(_0x3a91,0x1bc));var _0x13a9=function(_0xf427da,_0x2ed980){_0xf427da=_0xf427da-0x0;var _0x2408e9=_0x3a91[_0xf427da];return _0x2408e9;};'use strict';var EventEmitter=require('events');var ChatInteraction=require('../../mysqldb')['db']['ChatInteraction'];var ChatMessage=require(_0x13a9('0x0'))['db'][_0x13a9('0x1')];var ChatInteractionEvents=new EventEmitter();ChatInteractionEvents[_0x13a9('0x2')](0x0);var events={'afterCreate':_0x13a9('0x3'),'afterUpdate':'update','afterDestroy':_0x13a9('0x4')};function emitEvent(_0x15b431){return function(_0x31460a,_0x1a6316,_0x1a086f){_0x31460a[_0x13a9('0x5')]({'attributes':['id'],'raw':!![]})['then'](function(_0x5e686f){_0x31460a[_0x13a9('0x6')](_0x13a9('0x7'),_0x5e686f[_0x13a9('0x8')](function(_0x532e88){return{'id':_0x532e88['id']};}));return ChatMessage[_0x13a9('0x9')]({'where':{'ChatInteractionId':_0x31460a['id'],'direction':'in','read':![]},'raw':!![]});})[_0x13a9('0xa')](function(_0x4b094b){_0x31460a['setDataValue'](_0x13a9('0xb'),_0x4b094b['length']);ChatInteractionEvents[_0x13a9('0xc')](_0x15b431+':'+_0x31460a['id'],_0x31460a);ChatInteractionEvents[_0x13a9('0xc')](_0x15b431,_0x31460a);_0x1a086f(null);})[_0x13a9('0xd')](_0x1a086f(null));};}for(var e in events){if(events['hasOwnProperty'](e)){var event=events[e];ChatInteraction[_0x13a9('0xe')](e,emitEvent(event));}}module[_0x13a9('0xf')]=ChatInteractionEvents;