ee9a8c5f06309acf5a631116ea3311fb33d248be
[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 _0xbfac=['map','findAll','unreadMessages','length','emit','catch','hook','exports','events','OpenchannelInteraction','../../mysqldb','OpenchannelMessage','setMaxListeners','save','update','remove','then','setDataValue','Users'];(function(_0x1365e5,_0x2cc56b){var _0xe2d8dc=function(_0x25149a){while(--_0x25149a){_0x1365e5['push'](_0x1365e5['shift']());}};_0xe2d8dc(++_0x2cc56b);}(_0xbfac,0x67));var _0xcbfa=function(_0x95cf71,_0x597e5b){_0x95cf71=_0x95cf71-0x0;var _0x979b54=_0xbfac[_0x95cf71];return _0x979b54;};'use strict';var EventEmitter=require(_0xcbfa('0x0'));var OpenchannelInteraction=require('../../mysqldb')['db'][_0xcbfa('0x1')];var OpenchannelMessage=require(_0xcbfa('0x2'))['db'][_0xcbfa('0x3')];var OpenchannelInteractionEvents=new EventEmitter();OpenchannelInteractionEvents[_0xcbfa('0x4')](0x0);var events={'afterCreate':_0xcbfa('0x5'),'afterUpdate':_0xcbfa('0x6'),'afterDestroy':_0xcbfa('0x7')};function emitEvent(_0x204e7e){return function(_0x5d7bf8,_0xd55da,_0x5e7204){_0x5d7bf8['getUsers']({'attributes':['id'],'raw':!![]})[_0xcbfa('0x8')](function(_0x5c2d3a){_0x5d7bf8[_0xcbfa('0x9')](_0xcbfa('0xa'),_0x5c2d3a[_0xcbfa('0xb')](function(_0x109676){return{'id':_0x109676['id']};}));return OpenchannelMessage[_0xcbfa('0xc')]({'where':{'OpenchannelInteractionId':_0x5d7bf8['id'],'direction':'in','read':![]},'raw':!![]});})['then'](function(_0x3e9f95){_0x5d7bf8[_0xcbfa('0x9')](_0xcbfa('0xd'),_0x3e9f95[_0xcbfa('0xe')]);OpenchannelInteractionEvents[_0xcbfa('0xf')](_0x204e7e+':'+_0x5d7bf8['id'],_0x5d7bf8);OpenchannelInteractionEvents[_0xcbfa('0xf')](_0x204e7e,_0x5d7bf8);_0x5e7204(null);})[_0xcbfa('0x10')](_0x5e7204(null));};}for(var e in events){if(events['hasOwnProperty'](e)){var event=events[e];OpenchannelInteraction[_0xcbfa('0x11')](e,emitEvent(event));}}module[_0xcbfa('0x12')]=OpenchannelInteractionEvents;