36d52fb4f78e82aa72a03e90e09184b42580c8ef
[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 _0x1363=['../../mysqldb','OpenchannelMessage','setMaxListeners','save','remove','getUsers','setDataValue','map','findAll','unreadMessages','length','emit','catch','hasOwnProperty','hook','events','OpenchannelInteraction'];(function(_0x2d37f4,_0x4384b8){var _0x396225=function(_0x56e51f){while(--_0x56e51f){_0x2d37f4['push'](_0x2d37f4['shift']());}};_0x396225(++_0x4384b8);}(_0x1363,0xec));var _0x3136=function(_0x13fd84,_0x77c1b2){_0x13fd84=_0x13fd84-0x0;var _0x5680b4=_0x1363[_0x13fd84];return _0x5680b4;};'use strict';var EventEmitter=require(_0x3136('0x0'));var OpenchannelInteraction=require('../../mysqldb')['db'][_0x3136('0x1')];var OpenchannelMessage=require(_0x3136('0x2'))['db'][_0x3136('0x3')];var OpenchannelInteractionEvents=new EventEmitter();OpenchannelInteractionEvents[_0x3136('0x4')](0x0);var events={'afterCreate':_0x3136('0x5'),'afterUpdate':'update','afterDestroy':_0x3136('0x6')};function emitEvent(_0xfb910f){return function(_0x57656a,_0x19a10c,_0x48738b){_0x57656a[_0x3136('0x7')]({'attributes':['id'],'raw':!![]})['then'](function(_0x2427d6){_0x57656a[_0x3136('0x8')]('Users',_0x2427d6[_0x3136('0x9')](function(_0x215668){return{'id':_0x215668['id']};}));return OpenchannelMessage[_0x3136('0xa')]({'where':{'OpenchannelInteractionId':_0x57656a['id'],'direction':'in','read':![]},'raw':!![]});})['then'](function(_0x5f11d1){_0x57656a[_0x3136('0x8')](_0x3136('0xb'),_0x5f11d1[_0x3136('0xc')]);OpenchannelInteractionEvents[_0x3136('0xd')](_0xfb910f+':'+_0x57656a['id'],_0x57656a);OpenchannelInteractionEvents['emit'](_0xfb910f,_0x57656a);_0x48738b(null);})[_0x3136('0xe')](_0x48738b(null));};}for(var e in events){if(events[_0x3136('0xf')](e)){var event=events[e];OpenchannelInteraction[_0x3136('0x10')](e,emitEvent(event));}}module['exports']=OpenchannelInteractionEvents;