cdd5226c9748617f438c85f737598977cfe1823e
[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 _0x900d=['remove','getUsers','then','setDataValue','Users','map','unreadMessages','length','emit','catch','hasOwnProperty','hook','exports','OpenchannelInteraction','../../mysqldb','OpenchannelMessage','setMaxListeners','save','update'];(function(_0x22643d,_0x4129f8){var _0x4b4992=function(_0x4b4763){while(--_0x4b4763){_0x22643d['push'](_0x22643d['shift']());}};_0x4b4992(++_0x4129f8);}(_0x900d,0xcb));var _0xd900=function(_0x3bbc7a,_0x1f4ecf){_0x3bbc7a=_0x3bbc7a-0x0;var _0x4d0e64=_0x900d[_0x3bbc7a];return _0x4d0e64;};'use strict';var EventEmitter=require('events');var OpenchannelInteraction=require('../../mysqldb')['db'][_0xd900('0x0')];var OpenchannelMessage=require(_0xd900('0x1'))['db'][_0xd900('0x2')];var OpenchannelInteractionEvents=new EventEmitter();OpenchannelInteractionEvents[_0xd900('0x3')](0x0);var events={'afterCreate':_0xd900('0x4'),'afterUpdate':_0xd900('0x5'),'afterDestroy':_0xd900('0x6')};function emitEvent(_0x5a0863){return function(_0x96324e,_0x5116ff,_0x1271e2){_0x96324e[_0xd900('0x7')]({'attributes':['id'],'raw':!![]})[_0xd900('0x8')](function(_0x1b66f1){_0x96324e[_0xd900('0x9')](_0xd900('0xa'),_0x1b66f1[_0xd900('0xb')](function(_0x181688){return{'id':_0x181688['id']};}));return OpenchannelMessage['findAll']({'where':{'OpenchannelInteractionId':_0x96324e['id'],'direction':'in','read':![]},'raw':!![]});})['then'](function(_0x213369){_0x96324e[_0xd900('0x9')](_0xd900('0xc'),_0x213369[_0xd900('0xd')]);OpenchannelInteractionEvents[_0xd900('0xe')](_0x5a0863+':'+_0x96324e['id'],_0x96324e);OpenchannelInteractionEvents[_0xd900('0xe')](_0x5a0863,_0x96324e);_0x1271e2(null);})[_0xd900('0xf')](_0x1271e2(null));};}for(var e in events){if(events[_0xd900('0x10')](e)){var event=events[e];OpenchannelInteraction[_0xd900('0x11')](e,emitEvent(event));}}module[_0xd900('0x12')]=OpenchannelInteractionEvents;