Built motion from commit 639a1a7f.|2.6.19
[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 _0x7cb5=['setDataValue','Users','map','findAll','unreadMessages','emit','catch','hasOwnProperty','hook','exports','../../mysqldb','OpenchannelInteraction','setMaxListeners','save','remove','then'];(function(_0x478f5c,_0x3faee9){var _0xb4eabb=function(_0xc30d14){while(--_0xc30d14){_0x478f5c['push'](_0x478f5c['shift']());}};_0xb4eabb(++_0x3faee9);}(_0x7cb5,0x19a));var _0x57cb=function(_0x345e1c,_0x47a1c8){_0x345e1c=_0x345e1c-0x0;var _0x2b850f=_0x7cb5[_0x345e1c];return _0x2b850f;};'use strict';var EventEmitter=require('events');var OpenchannelInteraction=require(_0x57cb('0x0'))['db'][_0x57cb('0x1')];var OpenchannelMessage=require(_0x57cb('0x0'))['db']['OpenchannelMessage'];var OpenchannelInteractionEvents=new EventEmitter();OpenchannelInteractionEvents[_0x57cb('0x2')](0x0);var events={'afterCreate':_0x57cb('0x3'),'afterUpdate':'update','afterDestroy':_0x57cb('0x4')};function emitEvent(_0xb3202d){return function(_0x191664,_0x3c42ae,_0x333c1c){_0x191664['getUsers']({'attributes':['id'],'raw':!![]})[_0x57cb('0x5')](function(_0x38f985){_0x191664[_0x57cb('0x6')](_0x57cb('0x7'),_0x38f985[_0x57cb('0x8')](function(_0x14b167){return{'id':_0x14b167['id']};}));return OpenchannelMessage[_0x57cb('0x9')]({'where':{'OpenchannelInteractionId':_0x191664['id'],'direction':'in','read':![]},'raw':!![]});})[_0x57cb('0x5')](function(_0x7657e5){_0x191664['setDataValue'](_0x57cb('0xa'),_0x7657e5['length']);OpenchannelInteractionEvents['emit'](_0xb3202d+':'+_0x191664['id'],_0x191664);OpenchannelInteractionEvents[_0x57cb('0xb')](_0xb3202d,_0x191664);_0x333c1c(null);})[_0x57cb('0xc')](_0x333c1c(null));};}for(var e in events){if(events[_0x57cb('0xd')](e)){var event=events[e];OpenchannelInteraction[_0x57cb('0xe')](e,emitEvent(event));}}module[_0x57cb('0xf')]=OpenchannelInteractionEvents;