29d2889c1fd30fb2891f2a447e0636a640f1d65c
[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 _0x130f=['events','../../mysqldb','OpenchannelInteraction','OpenchannelMessage','save','remove','setDataValue','Users','map','findAll','then','unreadMessages','length','emit','hasOwnProperty','exports'];(function(_0x16b6fb,_0x7c304f){var _0x13527d=function(_0x1998a8){while(--_0x1998a8){_0x16b6fb['push'](_0x16b6fb['shift']());}};_0x13527d(++_0x7c304f);}(_0x130f,0x1f0));var _0xf130=function(_0x443181,_0x52d5fa){_0x443181=_0x443181-0x0;var _0x4e73e5=_0x130f[_0x443181];return _0x4e73e5;};'use strict';var EventEmitter=require(_0xf130('0x0'));var OpenchannelInteraction=require(_0xf130('0x1'))['db'][_0xf130('0x2')];var OpenchannelMessage=require(_0xf130('0x1'))['db'][_0xf130('0x3')];var OpenchannelInteractionEvents=new EventEmitter();OpenchannelInteractionEvents['setMaxListeners'](0x0);var events={'afterCreate':_0xf130('0x4'),'afterUpdate':'update','afterDestroy':_0xf130('0x5')};function emitEvent(_0x103ade){return function(_0x24b15f,_0x5d2cfa,_0x126b6c){_0x24b15f['getUsers']({'attributes':['id'],'raw':!![]})['then'](function(_0x2e60b9){_0x24b15f[_0xf130('0x6')](_0xf130('0x7'),_0x2e60b9[_0xf130('0x8')](function(_0x3781a4){return{'id':_0x3781a4['id']};}));return OpenchannelMessage[_0xf130('0x9')]({'where':{'OpenchannelInteractionId':_0x24b15f['id'],'direction':'in','read':![]},'raw':!![]});})[_0xf130('0xa')](function(_0x1faa8d){_0x24b15f[_0xf130('0x6')](_0xf130('0xb'),_0x1faa8d[_0xf130('0xc')]);OpenchannelInteractionEvents[_0xf130('0xd')](_0x103ade+':'+_0x24b15f['id'],_0x24b15f);OpenchannelInteractionEvents[_0xf130('0xd')](_0x103ade,_0x24b15f);_0x126b6c(null);})['catch'](_0x126b6c(null));};}for(var e in events){if(events[_0xf130('0xe')](e)){var event=events[e];OpenchannelInteraction['hook'](e,emitEvent(event));}}module[_0xf130('0xf')]=OpenchannelInteractionEvents;