ae12a52b13130170c14c1d696e75c48e633fa150
[motion2.git] / server / api / chatInteraction / chatInteraction.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 _0x3a91=['remove','getUsers','setDataValue','Users','map','findAll','then','unreadMessages','emit','catch','hook','exports','../../mysqldb','ChatMessage','setMaxListeners','save'];(function(_0x347960,_0x4fefa2){var _0x45f409=function(_0x4fa7ca){while(--_0x4fa7ca){_0x347960['push'](_0x347960['shift']());}};_0x45f409(++_0x4fefa2);}(_0x3a91,0x1bc));var _0x13a9=function(_0xf427da,_0x2ed980){_0xf427da=_0xf427da-0x0;var _0x2408e9=_0x3a91[_0xf427da];return _0x2408e9;};'use strict';var EventEmitter=require('events');var ChatInteraction=require('../../mysqldb')['db']['ChatInteraction'];var ChatMessage=require(_0x13a9('0x0'))['db'][_0x13a9('0x1')];var ChatInteractionEvents=new EventEmitter();ChatInteractionEvents[_0x13a9('0x2')](0x0);var events={'afterCreate':_0x13a9('0x3'),'afterUpdate':'update','afterDestroy':_0x13a9('0x4')};function emitEvent(_0x15b431){return function(_0x31460a,_0x1a6316,_0x1a086f){_0x31460a[_0x13a9('0x5')]({'attributes':['id'],'raw':!![]})['then'](function(_0x5e686f){_0x31460a[_0x13a9('0x6')](_0x13a9('0x7'),_0x5e686f[_0x13a9('0x8')](function(_0x532e88){return{'id':_0x532e88['id']};}));return ChatMessage[_0x13a9('0x9')]({'where':{'ChatInteractionId':_0x31460a['id'],'direction':'in','read':![]},'raw':!![]});})[_0x13a9('0xa')](function(_0x4b094b){_0x31460a['setDataValue'](_0x13a9('0xb'),_0x4b094b['length']);ChatInteractionEvents[_0x13a9('0xc')](_0x15b431+':'+_0x31460a['id'],_0x31460a);ChatInteractionEvents[_0x13a9('0xc')](_0x15b431,_0x31460a);_0x1a086f(null);})[_0x13a9('0xd')](_0x1a086f(null));};}for(var e in events){if(events['hasOwnProperty'](e)){var event=events[e];ChatInteraction[_0x13a9('0xe')](e,emitEvent(event));}}module[_0x13a9('0xf')]=ChatInteractionEvents;