023ef74b091d6de4c442feeabce4def1c1c2c119
[motion2.git] / server / api / openchannelInteraction / openchannelInteraction.events.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
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.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x16fb=['exports','OpenchannelInteraction','OpenchannelMessage','setMaxListeners','save','remove','getUsers','setDataValue','Users','map','findAll','then','unreadMessages','length','emit','catch','hasOwnProperty'];(function(_0x535a95,_0x54ac6b){var _0x188a91=function(_0x114c80){while(--_0x114c80){_0x535a95['push'](_0x535a95['shift']());}};_0x188a91(++_0x54ac6b);}(_0x16fb,0x89));var _0xb16f=function(_0x211632,_0x378e2e){_0x211632=_0x211632-0x0;var _0x5a1da1=_0x16fb[_0x211632];return _0x5a1da1;};'use strict';var EventEmitter=require('events');var OpenchannelInteraction=require('../../mysqldb')['db'][_0xb16f('0x0')];var OpenchannelMessage=require('../../mysqldb')['db'][_0xb16f('0x1')];var OpenchannelInteractionEvents=new EventEmitter();OpenchannelInteractionEvents[_0xb16f('0x2')](0x0);var events={'afterCreate':_0xb16f('0x3'),'afterUpdate':'update','afterDestroy':_0xb16f('0x4')};function emitEvent(_0x1407fe){return function(_0x31e695,_0x5f2374,_0x2466fb){_0x31e695[_0xb16f('0x5')]({'attributes':['id'],'raw':!![]})['then'](function(_0x11a3d6){_0x31e695[_0xb16f('0x6')](_0xb16f('0x7'),_0x11a3d6[_0xb16f('0x8')](function(_0x156537){return{'id':_0x156537['id']};}));return OpenchannelMessage[_0xb16f('0x9')]({'where':{'OpenchannelInteractionId':_0x31e695['id'],'direction':'in','read':![]},'raw':!![]});})[_0xb16f('0xa')](function(_0xc5bb3d){_0x31e695[_0xb16f('0x6')](_0xb16f('0xb'),_0xc5bb3d[_0xb16f('0xc')]);OpenchannelInteractionEvents[_0xb16f('0xd')](_0x1407fe+':'+_0x31e695['id'],_0x31e695);OpenchannelInteractionEvents[_0xb16f('0xd')](_0x1407fe,_0x31e695);_0x2466fb(null);})[_0xb16f('0xe')](_0x2466fb(null));};}for(var e in events){if(events[_0xb16f('0xf')](e)){var event=events[e];OpenchannelInteraction['hook'](e,emitEvent(event));}}module[_0xb16f('0x10')]=OpenchannelInteractionEvents;