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 _0x3fac=['exports','events','../../mysqldb','FaxInteraction','FaxMessage','setMaxListeners','update','remove','then','setDataValue','Users','map','findAll','unreadMessages','length','hasOwnProperty'];(function(_0x548e1c,_0x3ed018){var _0x35ef64=function(_0x27c354){while(--_0x27c354){_0x548e1c['push'](_0x548e1c['shift']());}};_0x35ef64(++_0x3ed018);}(_0x3fac,0x1e1));var _0xc3fa=function(_0x37b7bb,_0x3b1408){_0x37b7bb=_0x37b7bb-0x0;var _0x3ae4ca=_0x3fac[_0x37b7bb];return _0x3ae4ca;};'use strict';var EventEmitter=require(_0xc3fa('0x0'));var FaxInteraction=require(_0xc3fa('0x1'))['db'][_0xc3fa('0x2')];var FaxMessage=require('../../mysqldb')['db'][_0xc3fa('0x3')];var FaxInteractionEvents=new EventEmitter();FaxInteractionEvents[_0xc3fa('0x4')](0x0);var events={'afterCreate':'save','afterUpdate':_0xc3fa('0x5'),'afterDestroy':_0xc3fa('0x6')};function emitEvent(_0x4e792c){return function(_0x41ecf1,_0x453aaa,_0x12fdd0){_0x41ecf1['getUsers']({'attributes':['id'],'raw':!![]})[_0xc3fa('0x7')](function(_0x5bc3c8){_0x41ecf1[_0xc3fa('0x8')](_0xc3fa('0x9'),_0x5bc3c8[_0xc3fa('0xa')](function(_0x2ab7b8){return{'id':_0x2ab7b8['id']};}));return FaxMessage[_0xc3fa('0xb')]({'where':{'FaxInteractionId':_0x41ecf1['id'],'direction':'in','read':![]},'raw':!![]});})[_0xc3fa('0x7')](function(_0x1f7212){_0x41ecf1[_0xc3fa('0x8')](_0xc3fa('0xc'),_0x1f7212[_0xc3fa('0xd')]);FaxInteractionEvents['emit'](_0x4e792c+':'+_0x41ecf1['id'],_0x41ecf1);FaxInteractionEvents['emit'](_0x4e792c,_0x41ecf1);_0x12fdd0(null);})['catch'](_0x12fdd0(null));};}for(var e in events){if(events[_0xc3fa('0xe')](e)){var event=events[e];FaxInteraction['hook'](e,emitEvent(event));}}module[_0xc3fa('0xf')]=FaxInteractionEvents;