Built motion from commit 9e1399f3.|2.5.37
[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 _0xf854=['setDataValue','map','unreadMessages','emit','catch','hasOwnProperty','exports','events','OpenchannelInteraction','../../mysqldb','setMaxListeners','save','update','remove','getUsers','then'];(function(_0x5ee6d6,_0x28cd9c){var _0x22fc33=function(_0x10ee1d){while(--_0x10ee1d){_0x5ee6d6['push'](_0x5ee6d6['shift']());}};_0x22fc33(++_0x28cd9c);}(_0xf854,0x117));var _0x4f85=function(_0x4e1583,_0xc667b7){_0x4e1583=_0x4e1583-0x0;var _0x17358e=_0xf854[_0x4e1583];return _0x17358e;};'use strict';var EventEmitter=require(_0x4f85('0x0'));var OpenchannelInteraction=require('../../mysqldb')['db'][_0x4f85('0x1')];var OpenchannelMessage=require(_0x4f85('0x2'))['db']['OpenchannelMessage'];var OpenchannelInteractionEvents=new EventEmitter();OpenchannelInteractionEvents[_0x4f85('0x3')](0x0);var events={'afterCreate':_0x4f85('0x4'),'afterUpdate':_0x4f85('0x5'),'afterDestroy':_0x4f85('0x6')};function emitEvent(_0xe6a4c1){return function(_0x54cb2b,_0x53d5de,_0x5a0eff){_0x54cb2b[_0x4f85('0x7')]({'attributes':['id'],'raw':!![]})[_0x4f85('0x8')](function(_0x24c3ea){_0x54cb2b[_0x4f85('0x9')]('Users',_0x24c3ea[_0x4f85('0xa')](function(_0x585cac){return{'id':_0x585cac['id']};}));return OpenchannelMessage['findAll']({'where':{'OpenchannelInteractionId':_0x54cb2b['id'],'direction':'in','read':![]},'raw':!![]});})[_0x4f85('0x8')](function(_0x1130a8){_0x54cb2b[_0x4f85('0x9')](_0x4f85('0xb'),_0x1130a8['length']);OpenchannelInteractionEvents[_0x4f85('0xc')](_0xe6a4c1+':'+_0x54cb2b['id'],_0x54cb2b);OpenchannelInteractionEvents[_0x4f85('0xc')](_0xe6a4c1,_0x54cb2b);_0x5a0eff(null);})[_0x4f85('0xd')](_0x5a0eff(null));};}for(var e in events){if(events[_0x4f85('0xe')](e)){var event=events[e];OpenchannelInteraction['hook'](e,emitEvent(event));}}module[_0x4f85('0xf')]=OpenchannelInteractionEvents;