5e6b4482f1f24de476dd50394185710dc18e1bb0
[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 _0x9208=['ChatInteraction','ChatMessage','remove','then','setDataValue','Users','map','findAll','length','emit','catch','hook','exports','events','../../mysqldb'];(function(_0x35abe0,_0x26a307){var _0x2bc7e2=function(_0xaccf3e){while(--_0xaccf3e){_0x35abe0['push'](_0x35abe0['shift']());}};_0x2bc7e2(++_0x26a307);}(_0x9208,0x11b));var _0x8920=function(_0x20a584,_0xe384a5){_0x20a584=_0x20a584-0x0;var _0x4b41a8=_0x9208[_0x20a584];return _0x4b41a8;};'use strict';var EventEmitter=require(_0x8920('0x0'));var ChatInteraction=require(_0x8920('0x1'))['db'][_0x8920('0x2')];var ChatMessage=require(_0x8920('0x1'))['db'][_0x8920('0x3')];var ChatInteractionEvents=new EventEmitter();ChatInteractionEvents['setMaxListeners'](0x0);var events={'afterCreate':'save','afterUpdate':'update','afterDestroy':_0x8920('0x4')};function emitEvent(_0x45745c){return function(_0x5e3c0e,_0x28ac50,_0x18334a){_0x5e3c0e['getUsers']({'attributes':['id'],'raw':!![]})[_0x8920('0x5')](function(_0x2129b7){_0x5e3c0e[_0x8920('0x6')](_0x8920('0x7'),_0x2129b7[_0x8920('0x8')](function(_0x5d6eab){return{'id':_0x5d6eab['id']};}));return ChatMessage[_0x8920('0x9')]({'where':{'ChatInteractionId':_0x5e3c0e['id'],'direction':'in','read':![]},'raw':!![]});})[_0x8920('0x5')](function(_0x47a96d){_0x5e3c0e[_0x8920('0x6')]('unreadMessages',_0x47a96d[_0x8920('0xa')]);ChatInteractionEvents[_0x8920('0xb')](_0x45745c+':'+_0x5e3c0e['id'],_0x5e3c0e);ChatInteractionEvents[_0x8920('0xb')](_0x45745c,_0x5e3c0e);_0x18334a(null);})[_0x8920('0xc')](_0x18334a(null));};}for(var e in events){if(events['hasOwnProperty'](e)){var event=events[e];ChatInteraction[_0x8920('0xd')](e,emitEvent(event));}}module[_0x8920('0xe')]=ChatInteractionEvents;