Built motion from commit f7863d46.|2.5.41
[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 _0xd855=['exports','events','../../mysqldb','ChatMessage','setMaxListeners','save','then','Users','findAll','unreadMessages','length','emit','catch','hasOwnProperty'];(function(_0x272f54,_0x5dec24){var _0x180400=function(_0x269b18){while(--_0x269b18){_0x272f54['push'](_0x272f54['shift']());}};_0x180400(++_0x5dec24);}(_0xd855,0xd3));var _0x5d85=function(_0x20a584,_0xe384a5){_0x20a584=_0x20a584-0x0;var _0x4b41a8=_0xd855[_0x20a584];return _0x4b41a8;};'use strict';var EventEmitter=require(_0x5d85('0x0'));var ChatInteraction=require(_0x5d85('0x1'))['db']['ChatInteraction'];var ChatMessage=require(_0x5d85('0x1'))['db'][_0x5d85('0x2')];var ChatInteractionEvents=new EventEmitter();ChatInteractionEvents[_0x5d85('0x3')](0x0);var events={'afterCreate':_0x5d85('0x4'),'afterUpdate':'update','afterDestroy':'remove'};function emitEvent(_0x33ac11){return function(_0xd59515,_0x586d27,_0x38f6a4){_0xd59515['getUsers']({'attributes':['id'],'raw':!![]})[_0x5d85('0x5')](function(_0x5f4e10){_0xd59515['setDataValue'](_0x5d85('0x6'),_0x5f4e10['map'](function(_0x5a476){return{'id':_0x5a476['id']};}));return ChatMessage[_0x5d85('0x7')]({'where':{'ChatInteractionId':_0xd59515['id'],'direction':'in','read':![]},'raw':!![]});})[_0x5d85('0x5')](function(_0x211db0){_0xd59515['setDataValue'](_0x5d85('0x8'),_0x211db0[_0x5d85('0x9')]);ChatInteractionEvents[_0x5d85('0xa')](_0x33ac11+':'+_0xd59515['id'],_0xd59515);ChatInteractionEvents[_0x5d85('0xa')](_0x33ac11,_0xd59515);_0x38f6a4(null);})[_0x5d85('0xb')](_0x38f6a4(null));};}for(var e in events){if(events[_0x5d85('0xc')](e)){var event=events[e];ChatInteraction['hook'](e,emitEvent(event));}}module[_0x5d85('0xd')]=ChatInteractionEvents;