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 _0x008c=['hook','exports','events','../../mysqldb','SmsInteraction','SmsMessage','save','update','remove','getUsers','then','setDataValue','map','emit','hasOwnProperty'];(function(_0x3dd15e,_0x1f0015){var _0x231fd0=function(_0x4f680a){while(--_0x4f680a){_0x3dd15e['push'](_0x3dd15e['shift']());}};_0x231fd0(++_0x1f0015);}(_0x008c,0x188));var _0xc008=function(_0x53b22e,_0x5e248f){_0x53b22e=_0x53b22e-0x0;var _0x14a0a4=_0x008c[_0x53b22e];return _0x14a0a4;};'use strict';var EventEmitter=require(_0xc008('0x0'));var SmsInteraction=require(_0xc008('0x1'))['db'][_0xc008('0x2')];var SmsMessage=require(_0xc008('0x1'))['db'][_0xc008('0x3')];var SmsInteractionEvents=new EventEmitter();SmsInteractionEvents['setMaxListeners'](0x0);var events={'afterCreate':_0xc008('0x4'),'afterUpdate':_0xc008('0x5'),'afterDestroy':_0xc008('0x6')};function emitEvent(_0x163bd9){return function(_0x1cbe76,_0x1679e0,_0x13aa7){_0x1cbe76[_0xc008('0x7')]({'attributes':['id'],'raw':!![]})[_0xc008('0x8')](function(_0x4af530){_0x1cbe76[_0xc008('0x9')]('Users',_0x4af530[_0xc008('0xa')](function(_0x5b64f8){return{'id':_0x5b64f8['id']};}));return SmsMessage['findAll']({'where':{'SmsInteractionId':_0x1cbe76['id'],'direction':'in','read':![]},'raw':!![]});})[_0xc008('0x8')](function(_0x7231b4){_0x1cbe76['setDataValue']('unreadMessages',_0x7231b4['length']);SmsInteractionEvents[_0xc008('0xb')](_0x163bd9+':'+_0x1cbe76['id'],_0x1cbe76);SmsInteractionEvents[_0xc008('0xb')](_0x163bd9,_0x1cbe76);_0x13aa7(null);})['catch'](_0x13aa7(null));};}for(var e in events){if(events[_0xc008('0xc')](e)){var event=events[e];SmsInteraction[_0xc008('0xd')](e,emitEvent(event));}}module[_0xc008('0xe')]=SmsInteractionEvents;