ebc93d5923d7620d4faf0a2ffcdd67c56990af63
[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 _0x9172=['length','emit','catch','hasOwnProperty','exports','OpenchannelInteraction','OpenchannelMessage','setMaxListeners','update','remove','getUsers','setDataValue','map','findAll','then','unreadMessages'];(function(_0xfcf29c,_0x5aeb4d){var _0x495067=function(_0x213e99){while(--_0x213e99){_0xfcf29c['push'](_0xfcf29c['shift']());}};_0x495067(++_0x5aeb4d);}(_0x9172,0x155));var _0x2917=function(_0x34843e,_0x4c4224){_0x34843e=_0x34843e-0x0;var _0x598f7f=_0x9172[_0x34843e];return _0x598f7f;};'use strict';var EventEmitter=require('events');var OpenchannelInteraction=require('../../mysqldb')['db'][_0x2917('0x0')];var OpenchannelMessage=require('../../mysqldb')['db'][_0x2917('0x1')];var OpenchannelInteractionEvents=new EventEmitter();OpenchannelInteractionEvents[_0x2917('0x2')](0x0);var events={'afterCreate':'save','afterUpdate':_0x2917('0x3'),'afterDestroy':_0x2917('0x4')};function emitEvent(_0xd3ba53){return function(_0x4e569c,_0x2532d9,_0x7b435d){_0x4e569c[_0x2917('0x5')]({'attributes':['id'],'raw':!![]})['then'](function(_0x205e07){_0x4e569c[_0x2917('0x6')]('Users',_0x205e07[_0x2917('0x7')](function(_0x280d81){return{'id':_0x280d81['id']};}));return OpenchannelMessage[_0x2917('0x8')]({'where':{'OpenchannelInteractionId':_0x4e569c['id'],'direction':'in','read':![]},'raw':!![]});})[_0x2917('0x9')](function(_0x537bff){_0x4e569c[_0x2917('0x6')](_0x2917('0xa'),_0x537bff[_0x2917('0xb')]);OpenchannelInteractionEvents[_0x2917('0xc')](_0xd3ba53+':'+_0x4e569c['id'],_0x4e569c);OpenchannelInteractionEvents[_0x2917('0xc')](_0xd3ba53,_0x4e569c);_0x7b435d(null);})[_0x2917('0xd')](_0x7b435d(null));};}for(var e in events){if(events[_0x2917('0xe')](e)){var event=events[e];OpenchannelInteraction['hook'](e,emitEvent(event));}}module[_0x2917('0xf')]=OpenchannelInteractionEvents;