Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 8992996..56c8188 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x99c8=['bluebird','util','sox','to-csv','lodash','squel','jsforce','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./chatMessage.socket','register','jayson/promise','client','http','request','then','info','ChatMessage,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','catch','status','end','json','offset','undefined','limit','count','set','Content-Range','reject','save','update','sendStatus','stack','name','send','index','map','ChatMessage','rawAttributes','fieldName','key','model','keys','query','attributes','intersection','fields','hasOwnProperty','nolimit','sort','where','filters','pick','filter','merge','type','VIRTUAL','findAll','rows','show','params','length','include','options','create','body','find','destroy','describe','chat-interactions','accept','chat','read','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','get','ChatInteraction','ChatInteractionId','isNil','read1stAt','interaction','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','Sequelize','QueryTypes','SELECT','contact','User','fullname','email','interface','SIP/%s','channel','motionChannel','EventManager','acceptmessage','formData','RejectMessage','rejectMessage','sequelize','internal','event','rejectmessage','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment'];(function(_0x14add3,_0x13ce8d){var _0x4a174f=function(_0x2b3ed7){while(--_0x2b3ed7){_0x14add3['push'](_0x14add3['shift']());}};_0x4a174f(++_0x13ce8d);}(_0x99c8,0x18c));var _0x899c=function(_0x3be326,_0x5e0ea4){_0x3be326=_0x3be326-0x0;var _0x39a867=_0x99c8[_0x3be326];return _0x39a867;};'use strict';var emlformat=require(_0x899c('0x0'));var rimraf=require(_0x899c('0x1'));var zipdir=require(_0x899c('0x2'));var jsonpatch=require(_0x899c('0x3'));var rp=require(_0x899c('0x4'));var moment=require(_0x899c('0x5'));var BPromise=require(_0x899c('0x6'));var Mustache=require('mustache');var util=require(_0x899c('0x7'));var path=require('path');var sox=require(_0x899c('0x8'));var csv=require(_0x899c('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x899c('0xa'));var squel=require(_0x899c('0xb'));var crypto=require('crypto');var jsforce=require(_0x899c('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x899c('0x9'));var querystring=require(_0x899c('0xd'));var Papa=require(_0x899c('0xe'));var Redis=require(_0x899c('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x899c('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x899c('0x11'));var logger=require(_0x899c('0x12'))(_0x899c('0x13'));var utils=require('../../config/utils');var config=require(_0x899c('0x14'));var licenseUtil=require(_0x899c('0x15'));var db=require(_0x899c('0x16'))['db'];config[_0x899c('0x17')]=_['defaults'](config[_0x899c('0x17')],{'host':_0x899c('0x18'),'port':0x18eb});var socket=require(_0x899c('0x19'))(new Redis(config[_0x899c('0x17')]));require(_0x899c('0x1a'))[_0x899c('0x1b')](socket);var jayson=require(_0x899c('0x1c'));var client=jayson[_0x899c('0x1d')][_0x899c('0x1e')]({'port':0x232c});var client9002=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x3c7572,_0x4320fe,_0x572788,_0x274b9b){return new BPromise(function(_0x54f4f2,_0x1d223d){var _0x3c54eb=_0x274b9b||client;return _0x3c54eb[_0x899c('0x1f')](_0x3c7572,_0x572788)[_0x899c('0x20')](function(_0x35a43e){logger[_0x899c('0x21')](_0x899c('0x22'),_0x4320fe,_0x899c('0x23'));logger['debug']('ChatMessage,\x20%s,\x20%s,\x20%s',_0x4320fe,_0x899c('0x23'),JSON[_0x899c('0x24')](_0x35a43e));if(_0x35a43e[_0x899c('0x25')]){if(_0x35a43e[_0x899c('0x25')][_0x899c('0x26')]===0x1f4){logger[_0x899c('0x25')](_0x899c('0x22'),_0x4320fe,_0x35a43e[_0x899c('0x25')]['message']);return _0x1d223d(_0x35a43e['error'][_0x899c('0x27')]);}logger[_0x899c('0x25')](_0x899c('0x22'),_0x4320fe,_0x35a43e[_0x899c('0x25')]['message']);return _0x54f4f2(_0x35a43e[_0x899c('0x25')][_0x899c('0x27')]);}else{logger[_0x899c('0x21')](_0x899c('0x22'),_0x4320fe,'request\x20sent');_0x54f4f2(_0x35a43e[_0x899c('0x28')][_0x899c('0x27')]);}})[_0x899c('0x29')](function(_0x5e4a6e){logger[_0x899c('0x25')](_0x899c('0x22'),_0x4320fe,_0x5e4a6e);_0x1d223d(_0x5e4a6e);});});}function respondWithStatusCode(_0x54e63e,_0x1b3fa1){_0x1b3fa1=_0x1b3fa1||0xcc;return function(_0x295c39){if(_0x295c39){return _0x54e63e['sendStatus'](_0x1b3fa1);}return _0x54e63e[_0x899c('0x2a')](_0x1b3fa1)[_0x899c('0x2b')]();};}function respondWithResult(_0x5c2b7b,_0x3887c1){_0x3887c1=_0x3887c1||0xc8;return function(_0x220784){if(_0x220784){return _0x5c2b7b[_0x899c('0x2a')](_0x3887c1)[_0x899c('0x2c')](_0x220784);}};}function respondWithFilteredResult(_0x2862c4,_0x3df1cf){return function(_0x4b4e58){if(_0x4b4e58){var _0x4cf036=typeof _0x3df1cf[_0x899c('0x2d')]===_0x899c('0x2e')&&typeof _0x3df1cf[_0x899c('0x2f')]==='undefined';var _0x35e0d5=_0x4b4e58['count'];var _0x17ffde=_0x4cf036?0x0:_0x3df1cf[_0x899c('0x2d')];var _0x3f221f=_0x4cf036?_0x4b4e58[_0x899c('0x30')]:_0x3df1cf[_0x899c('0x2d')]+_0x3df1cf[_0x899c('0x2f')];var _0x28abc4;if(_0x3f221f>=_0x35e0d5){_0x3f221f=_0x35e0d5;_0x28abc4=0xc8;}else{_0x28abc4=0xce;}_0x2862c4[_0x899c('0x2a')](_0x28abc4);return _0x2862c4[_0x899c('0x31')](_0x899c('0x32'),_0x17ffde+'-'+_0x3f221f+'/'+_0x35e0d5)['json'](_0x4b4e58);}return null;};}function patchUpdates(_0x1703b3){return function(_0x1cd62b){try{jsonpatch['apply'](_0x1cd62b,_0x1703b3,!![]);}catch(_0x5b13cd){return BPromise[_0x899c('0x33')](_0x5b13cd);}return _0x1cd62b[_0x899c('0x34')]();};}function saveUpdates(_0x28142b,_0x48bc75){return function(_0x28cdd6){if(_0x28cdd6){return _0x28cdd6[_0x899c('0x35')](_0x28142b)['then'](function(_0x1375aa){return _0x1375aa;});}return null;};}function removeEntity(_0x28122e,_0x56f503){return function(_0x351c39){if(_0x351c39){return _0x351c39['destroy']()['then'](function(){_0x28122e[_0x899c('0x2a')](0xcc)[_0x899c('0x2b')]();});}};}function handleEntityNotFound(_0x2a6cd8,_0x1734f3){return function(_0x4d949c){if(!_0x4d949c){_0x2a6cd8[_0x899c('0x36')](0x194);}return _0x4d949c;};}function handleError(_0x14c63a,_0x5de737){_0x5de737=_0x5de737||0x1f4;return function(_0x6e380a){logger['error'](_0x6e380a[_0x899c('0x37')]);if(_0x6e380a[_0x899c('0x38')]){delete _0x6e380a[_0x899c('0x38')];}_0x14c63a['status'](_0x5de737)[_0x899c('0x39')](_0x6e380a);};}exports[_0x899c('0x3a')]=function(_0x5f2fa4,_0x32c32b){var _0x4cea41={},_0x41bcef={},_0xb95897={'count':0x0,'rows':[]};var _0x2510f6=_[_0x899c('0x3b')](db[_0x899c('0x3c')][_0x899c('0x3d')],function(_0x2e9fd5){return{'name':_0x2e9fd5[_0x899c('0x3e')],'type':_0x2e9fd5['type'][_0x899c('0x3f')]};});_0x41bcef[_0x899c('0x40')]=_[_0x899c('0x3b')](_0x2510f6,_0x899c('0x38'));_0x41bcef['query']=_[_0x899c('0x41')](_0x5f2fa4['query']);_0x41bcef['filters']=_['intersection'](_0x41bcef[_0x899c('0x40')],_0x41bcef[_0x899c('0x42')]);_0x4cea41[_0x899c('0x43')]=_[_0x899c('0x44')](_0x41bcef['model'],qs[_0x899c('0x45')](_0x5f2fa4['query'][_0x899c('0x45')]));_0x4cea41['attributes']=_0x4cea41[_0x899c('0x43')]['length']?_0x4cea41[_0x899c('0x43')]:_0x41bcef[_0x899c('0x40')];if(!_0x5f2fa4[_0x899c('0x42')][_0x899c('0x46')](_0x899c('0x47'))){_0x4cea41[_0x899c('0x2f')]=qs[_0x899c('0x2f')](_0x5f2fa4[_0x899c('0x42')][_0x899c('0x2f')]);_0x4cea41[_0x899c('0x2d')]=qs['offset'](_0x5f2fa4[_0x899c('0x42')][_0x899c('0x2d')]);}_0x4cea41['order']=qs[_0x899c('0x48')](_0x5f2fa4[_0x899c('0x42')][_0x899c('0x48')]);_0x4cea41[_0x899c('0x49')]=qs[_0x899c('0x4a')](_[_0x899c('0x4b')](_0x5f2fa4[_0x899c('0x42')],_0x41bcef[_0x899c('0x4a')]),_0x2510f6);if(_0x5f2fa4[_0x899c('0x42')][_0x899c('0x4c')]){_0x4cea41['where']=_[_0x899c('0x4d')](_0x4cea41[_0x899c('0x49')],{'$or':_[_0x899c('0x3b')](_0x2510f6,function(_0x22a72e){if(_0x22a72e[_0x899c('0x4e')]!==_0x899c('0x4f')){var _0x28b98d={};_0x28b98d[_0x22a72e['name']]={'$like':'%'+_0x5f2fa4[_0x899c('0x42')][_0x899c('0x4c')]+'%'};return _0x28b98d;}})});}_0x4cea41=_[_0x899c('0x4d')]({},_0x4cea41,_0x5f2fa4['options']);var _0x14838a={'where':_0x4cea41[_0x899c('0x49')]};return db[_0x899c('0x3c')]['count'](_0x14838a)[_0x899c('0x20')](function(_0x2e4687){_0xb95897[_0x899c('0x30')]=_0x2e4687;if(_0x5f2fa4[_0x899c('0x42')]['includeAll']){_0x4cea41['include']=[{'all':!![]}];}return db[_0x899c('0x3c')][_0x899c('0x50')](_0x4cea41);})['then'](function(_0x20e9a3){_0xb95897[_0x899c('0x51')]=_0x20e9a3;return _0xb95897;})[_0x899c('0x20')](respondWithFilteredResult(_0x32c32b,_0x4cea41))[_0x899c('0x29')](handleError(_0x32c32b,null));};exports[_0x899c('0x52')]=function(_0x58719c,_0x10f3d1){var _0xf636fc={'raw':!![],'where':{'id':_0x58719c[_0x899c('0x53')]['id']}},_0x450285={};_0x450285['model']=_[_0x899c('0x41')](db[_0x899c('0x3c')][_0x899c('0x3d')]);_0x450285[_0x899c('0x42')]=_[_0x899c('0x41')](_0x58719c[_0x899c('0x42')]);_0x450285['filters']=_['intersection'](_0x450285[_0x899c('0x40')],_0x450285[_0x899c('0x42')]);_0xf636fc[_0x899c('0x43')]=_['intersection'](_0x450285[_0x899c('0x40')],qs['fields'](_0x58719c['query']['fields']));_0xf636fc[_0x899c('0x43')]=_0xf636fc[_0x899c('0x43')][_0x899c('0x54')]?_0xf636fc['attributes']:_0x450285[_0x899c('0x40')];if(_0x58719c['query']['includeAll']){_0xf636fc[_0x899c('0x55')]=[{'all':!![]}];}_0xf636fc=_[_0x899c('0x4d')]({},_0xf636fc,_0x58719c[_0x899c('0x56')]);return db[_0x899c('0x3c')]['find'](_0xf636fc)[_0x899c('0x20')](handleEntityNotFound(_0x10f3d1,null))[_0x899c('0x20')](respondWithResult(_0x10f3d1,null))[_0x899c('0x29')](handleError(_0x10f3d1,null));};exports[_0x899c('0x57')]=function(_0x44fe3d,_0x2f3159){return db[_0x899c('0x3c')]['create'](_0x44fe3d['body'],{})['then'](respondWithResult(_0x2f3159,0xc9))['catch'](handleError(_0x2f3159,null));};exports[_0x899c('0x35')]=function(_0x156ff3,_0x900cfc){if(_0x156ff3['body']['id']){delete _0x156ff3[_0x899c('0x58')]['id'];}return db[_0x899c('0x3c')][_0x899c('0x59')]({'where':{'id':_0x156ff3[_0x899c('0x53')]['id']}})[_0x899c('0x20')](handleEntityNotFound(_0x900cfc,null))[_0x899c('0x20')](saveUpdates(_0x156ff3[_0x899c('0x58')],null))[_0x899c('0x20')](respondWithResult(_0x900cfc,null))[_0x899c('0x29')](handleError(_0x900cfc,null));};exports[_0x899c('0x5a')]=function(_0x38fc35,_0x1090ae){return db[_0x899c('0x3c')]['find']({'where':{'id':_0x38fc35[_0x899c('0x53')]['id']}})[_0x899c('0x20')](handleEntityNotFound(_0x1090ae,null))[_0x899c('0x20')](removeEntity(_0x1090ae,null))[_0x899c('0x29')](handleError(_0x1090ae,null));};exports[_0x899c('0x5b')]=function(_0x3ff94c,_0x3e9cd2){return db['ChatMessage'][_0x899c('0x5b')]()[_0x899c('0x20')](respondWithResult(_0x3e9cd2,null))['catch'](handleError(_0x3e9cd2,null));};var interaction_log=require(_0x899c('0x12'))(_0x899c('0x5c'));exports[_0x899c('0x5d')]=function(_0x106b4d,_0x34b360,_0x4c3fe3){var _0x5b0b23={'agent':{},'channel':_0x899c('0x5e')};if(_0x106b4d[_0x899c('0x58')]['id']){delete _0x106b4d[_0x899c('0x58')]['id'];}_0x106b4d[_0x899c('0x58')][_0x899c('0x5f')]=!![];_0x106b4d[_0x899c('0x58')]['readAt']=moment()[_0x899c('0x60')](_0x899c('0x61'));_0x106b4d[_0x899c('0x58')][_0x899c('0x62')]=_0x106b4d[_0x899c('0x58')][_0x899c('0x62')]||_0x106b4d[_0x899c('0x63')]['id'];_0x5b0b23[_0x899c('0x64')]['id']=_0x106b4d[_0x899c('0x58')][_0x899c('0x62')];return db[_0x899c('0x3c')][_0x899c('0x59')]({'where':{'id':_0x106b4d['params']['id'],'UserId':null}})[_0x899c('0x20')](handleEntityNotFound(_0x34b360,null))[_0x899c('0x20')](saveUpdates(_0x106b4d[_0x899c('0x58')],null))['then'](function(_0x9f913a){if(_0x9f913a){_0x5b0b23[_0x899c('0x27')]=_0x9f913a[_0x899c('0x65')]({'plain':!![]});return db[_0x899c('0x66')][_0x899c('0x59')]({'where':{'id':_0x9f913a[_0x899c('0x67')]}});}return null;})[_0x899c('0x20')](handleEntityNotFound(_0x34b360,null))[_0x899c('0x20')](function(_0x1f6ec9){if(_0x1f6ec9){return _0x1f6ec9[_0x899c('0x35')]({'UserId':_0x106b4d[_0x899c('0x58')][_0x899c('0x62')],'read1stAt':_[_0x899c('0x68')](_0x1f6ec9[_0x899c('0x69')])?moment()[_0x899c('0x60')](_0x899c('0x61')):undefined});}return null;})[_0x899c('0x20')](function(_0x34a72a){if(_0x34a72a){_0x5b0b23[_0x899c('0x6a')]=_0x34a72a['get']({'plain':!![]});interaction_log[_0x899c('0x21')](_0x899c('0x6b'),_0x106b4d[_0x899c('0x63')]['id'],_0x106b4d[_0x899c('0x63')][_0x899c('0x38')],_0x106b4d[_0x899c('0x63')][_0x899c('0x6c')],_0x5b0b23[_0x899c('0x6a')]['id'],_0x106b4d['body']?JSON[_0x899c('0x24')](_0x106b4d[_0x899c('0x58')]):_0x899c('0x6d'));return respondWithRpcPromise(_0x899c('0x6e'),_0x899c('0x6f'),_0x5b0b23);}return null;})['then'](function(_0x2641dd){var _0x4f14db=_0x899c('0x70')+_0x2641dd['message'][_0x899c('0x71')];return db['sequelize']['query'](_0x4f14db,{'type':db[_0x899c('0x72')][_0x899c('0x73')][_0x899c('0x74')],'raw':!![]})[_0x899c('0x20')](function(_0x3b9156){return _0x3b9156;});})['then'](function(_0x3a0fb7){if(_0x3a0fb7){_0x5b0b23['message'][_0x899c('0x75')]=_0x3a0fb7[0x0];if(!_0x106b4d['body'][_0x899c('0x62')])return;return db[_0x899c('0x76')]['find']({'where':{'id':_0x106b4d['body']['UserId'],'role':'agent'},'attributes':['id',_0x899c('0x38'),_0x899c('0x77'),_0x899c('0x78'),'internal'],'raw':!![]});}return null;})['then'](function(_0x24f7e7){if(!_0x24f7e7)return null;_0x5b0b23[_0x899c('0x27')][_0x899c('0x64')]=_0x24f7e7;return _0x5b0b23;})[_0x899c('0x20')](function(_0x4e0b58){if(_0x4e0b58){if(_0x106b4d[_0x899c('0x58')]['manual']){_0x5b0b23['message'][_0x899c('0x79')]=util[_0x899c('0x60')](_0x899c('0x7a'),_0x106b4d[_0x899c('0x63')][_0x899c('0x38')]);_0x5b0b23['message'][_0x899c('0x7b')]=_0x5b0b23[_0x899c('0x7b')];_0x5b0b23[_0x899c('0x27')][_0x899c('0x7c')]=_0x5b0b23[_0x899c('0x7b')];_0x5b0b23['message']['event']=_0x899c('0x5d');return respondWithRpcPromise(_0x899c('0x7d'),_0x899c('0x7d'),{'event':_0x899c('0x7e'),'message':_[_0x899c('0x4d')](_0x5b0b23[_0x899c('0x27')],JSON['parse'](_0x5b0b23[_0x899c('0x6a')][_0x899c('0x7f')]))},client9002)[_0x899c('0x20')](function(){return _0x5b0b23;});}return _0x5b0b23;}return null;})[_0x899c('0x20')](respondWithResult(_0x34b360,null))[_0x899c('0x29')](handleError(_0x34b360,null));};var interaction_log=require('../../config/logger')('chat-interactions');exports[_0x899c('0x33')]=function(_0x3910b9,_0x359945,_0x35322a){var _0x5819e9={'agent':{},'channel':_0x899c('0x5e')};if(_0x3910b9['body']['id']){delete _0x3910b9[_0x899c('0x58')]['id'];}_0x3910b9[_0x899c('0x58')][_0x899c('0x62')]=_0x3910b9['body']['UserId']||_0x3910b9[_0x899c('0x63')]['id'];_0x5819e9[_0x899c('0x64')]['id']=_0x3910b9['body'][_0x899c('0x62')];return db['ChatMessage'][_0x899c('0x59')]({'where':{'id':_0x3910b9[_0x899c('0x53')]['id'],'UserId':null}})[_0x899c('0x20')](handleEntityNotFound(_0x359945,null))[_0x899c('0x20')](function(_0x2d915c){if(_0x2d915c){_0x5819e9[_0x899c('0x27')]=_0x2d915c[_0x899c('0x65')]({'plain':!![]});return db[_0x899c('0x66')]['find']({'where':{'id':_0x2d915c['ChatInteractionId']}});}return null;})['then'](handleEntityNotFound(_0x359945,null))['then'](function(_0xa546b1){if(_0xa546b1){_0x5819e9[_0x899c('0x6a')]=_0xa546b1['get']({'plain':!![]});interaction_log['info']('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x3910b9[_0x899c('0x63')]['id'],_0x3910b9[_0x899c('0x63')]['name'],_0x3910b9['user']['role'],_0x5819e9[_0x899c('0x6a')]['id'],_0x3910b9[_0x899c('0x58')]?JSON[_0x899c('0x24')](_0x3910b9[_0x899c('0x58')]):_0x899c('0x6d'));return respondWithRpcPromise(_0x899c('0x80'),_0x899c('0x81'),_0x5819e9);}return null;})['then'](function(_0x17a1cc){var _0x20627c=_0x899c('0x70')+_0x17a1cc[_0x899c('0x27')][_0x899c('0x71')];return db[_0x899c('0x82')][_0x899c('0x42')](_0x20627c,{'type':db['Sequelize'][_0x899c('0x73')][_0x899c('0x74')],'raw':!![]})[_0x899c('0x20')](function(_0xafa702){return _0xafa702;});})[_0x899c('0x20')](function(_0x4dcaf3){if(_0x4dcaf3){_0x5819e9['message'][_0x899c('0x75')]=_0x4dcaf3[0x0];if(!_0x3910b9[_0x899c('0x58')][_0x899c('0x62')])return;return db['User']['find']({'where':{'id':_0x3910b9[_0x899c('0x58')]['UserId'],'role':_0x899c('0x64')},'attributes':['id','name',_0x899c('0x77'),_0x899c('0x78'),_0x899c('0x83')],'raw':!![]});}return null;})[_0x899c('0x20')](function(_0x197c1d){if(!_0x197c1d)return null;_0x5819e9[_0x899c('0x27')][_0x899c('0x64')]=_0x197c1d;return _0x5819e9;})[_0x899c('0x20')](function(_0x89960b){if(_0x89960b){_0x89960b[_0x899c('0x27')]['interface']=util[_0x899c('0x60')](_0x899c('0x7a'),_0x3910b9[_0x899c('0x63')][_0x899c('0x38')]);_0x89960b[_0x899c('0x27')]['channel']=_0x5819e9[_0x899c('0x7b')];_0x89960b[_0x899c('0x27')][_0x899c('0x7c')]=_0x5819e9[_0x899c('0x7b')];_0x89960b[_0x899c('0x27')][_0x899c('0x84')]=_0x899c('0x33');respondWithRpcPromise(_0x899c('0x7d'),_0x899c('0x7d'),{'event':_0x899c('0x85'),'message':_['merge'](_0x5819e9[_0x899c('0x27')],JSON['parse'](_0x5819e9[_0x899c('0x6a')]['formData']))},client9002);return _0x5819e9;}return null;})[_0x899c('0x20')](respondWithResult(_0x359945,null))['catch'](handleError(_0x359945,null));};
\ No newline at end of file
+var _0xa236=['ChatMessage,\x20%s,\x20%s,\x20%s','request\x20sent','error','code','ChatMessage,\x20%s,\x20%s','message','catch','status','offset','undefined','limit','count','set','Content-Range','destroy','name','send','index','map','ChatMessage','rawAttributes','fieldName','type','key','model','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','VIRTUAL','merge','options','include','rows','show','params','keys','includeAll','create','body','update','find','describe','accept','chat','acceptMessage','agent','UserId','get','ChatInteraction','interaction','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','user','role','stringify','null','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','Sequelize','SELECT','contact','User','fullname','internal','interface','format','SIP/%s','motionChannel','reject','EventManager','parse','formData','util','lodash','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','redis','defaults','localhost','socket.io-emitter','./chatMessage.socket','register','jayson/promise','client','http','chat-interactions','request','then','info','debug'];(function(_0x2125f0,_0x2f23b9){var _0x12d6eb=function(_0x7a43ea){while(--_0x7a43ea){_0x2125f0['push'](_0x2125f0['shift']());}};_0x12d6eb(++_0x2f23b9);}(_0xa236,0x1e4));var _0x6a23=function(_0x5c6061,_0x5bb492){_0x5c6061=_0x5c6061-0x0;var _0x396143=_0xa236[_0x5c6061];return _0x396143;};'use strict';var util=require(_0x6a23('0x0'));var _=require(_0x6a23('0x1'));var Redis=require('ioredis');var interactionService=require(_0x6a23('0x2'));var qs=require(_0x6a23('0x3'));var logger=require(_0x6a23('0x4'))(_0x6a23('0x5'));var config=require(_0x6a23('0x6'));var db=require('../../mysqldb')['db'];config[_0x6a23('0x7')]=_[_0x6a23('0x8')](config[_0x6a23('0x7')],{'host':_0x6a23('0x9'),'port':0x18eb});var socket=require(_0x6a23('0xa'))(new Redis(config[_0x6a23('0x7')]));require(_0x6a23('0xb'))[_0x6a23('0xc')](socket);var jayson=require(_0x6a23('0xd'));var client=jayson[_0x6a23('0xe')][_0x6a23('0xf')]({'port':0x232c});var client9002=jayson[_0x6a23('0xe')][_0x6a23('0xf')]({'port':0x232a});var interaction_log=require(_0x6a23('0x4'))(_0x6a23('0x10'));function respondWithRpcPromise(_0xf30835,_0x6f10d1,_0x16d619,_0x2cdbc5){return new Promise(function(_0x129770,_0x2550c7){var _0x7be8ef=_0x2cdbc5||client;return _0x7be8ef[_0x6a23('0x11')](_0xf30835,_0x16d619)[_0x6a23('0x12')](function(_0x460c19){logger[_0x6a23('0x13')]('ChatMessage,\x20%s,\x20%s',_0x6f10d1,'request\x20sent');logger[_0x6a23('0x14')](_0x6a23('0x15'),_0x6f10d1,_0x6a23('0x16'),JSON['stringify'](_0x460c19));if(_0x460c19['error']){if(_0x460c19[_0x6a23('0x17')][_0x6a23('0x18')]===0x1f4){logger['error'](_0x6a23('0x19'),_0x6f10d1,_0x460c19['error'][_0x6a23('0x1a')]);return _0x2550c7(_0x460c19['error'][_0x6a23('0x1a')]);}logger[_0x6a23('0x17')](_0x6a23('0x19'),_0x6f10d1,_0x460c19[_0x6a23('0x17')]['message']);return _0x129770(_0x460c19['error']['message']);}else{logger['info'](_0x6a23('0x19'),_0x6f10d1,_0x6a23('0x16'));_0x129770(_0x460c19['result'][_0x6a23('0x1a')]);}})[_0x6a23('0x1b')](function(_0x1bd598){logger[_0x6a23('0x17')](_0x6a23('0x19'),_0x6f10d1,_0x1bd598);_0x2550c7(_0x1bd598);});});}function respondWithResult(_0x47a754,_0x2b90bf){_0x2b90bf=_0x2b90bf||0xc8;return function(_0x3c1332){if(_0x3c1332){return _0x47a754[_0x6a23('0x1c')](_0x2b90bf)['json'](_0x3c1332);}};}function respondWithFilteredResult(_0x4d0331,_0x2fccf3){return function(_0x37f403){if(_0x37f403){var _0x317f7e=typeof _0x2fccf3[_0x6a23('0x1d')]===_0x6a23('0x1e')&&typeof _0x2fccf3[_0x6a23('0x1f')]===_0x6a23('0x1e');var _0x48de6f=_0x37f403[_0x6a23('0x20')];var _0x128418=_0x317f7e?0x0:_0x2fccf3[_0x6a23('0x1d')];var _0x4cdcd7=_0x317f7e?_0x37f403['count']:_0x2fccf3['offset']+_0x2fccf3[_0x6a23('0x1f')];var _0x38ebd8;if(_0x4cdcd7>=_0x48de6f){_0x4cdcd7=_0x48de6f;_0x38ebd8=0xc8;}else{_0x38ebd8=0xce;}_0x4d0331[_0x6a23('0x1c')](_0x38ebd8);return _0x4d0331[_0x6a23('0x21')](_0x6a23('0x22'),_0x128418+'-'+_0x4cdcd7+'/'+_0x48de6f)['json'](_0x37f403);}return null;};}function saveUpdates(_0x5ab977){return function(_0x23a4f4){if(_0x23a4f4){return _0x23a4f4['update'](_0x5ab977)['then'](function(_0x2d9ab1){return _0x2d9ab1;});}return null;};}function removeEntity(_0x2dadc9){return function(_0x176853){if(_0x176853){return _0x176853[_0x6a23('0x23')]()[_0x6a23('0x12')](function(){_0x2dadc9['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0xef6300){return function(_0x1d6446){if(!_0x1d6446){_0xef6300['sendStatus'](0x194);}return _0x1d6446;};}function handleError(_0x212646,_0x45b81d){_0x45b81d=_0x45b81d||0x1f4;return function(_0x3f2735){logger[_0x6a23('0x17')](_0x3f2735['stack']);if(_0x3f2735[_0x6a23('0x24')]){delete _0x3f2735[_0x6a23('0x24')];}_0x212646['status'](_0x45b81d)[_0x6a23('0x25')](_0x3f2735);};}exports[_0x6a23('0x26')]=function(_0x4656f1,_0x48ffcb){var _0x1a3c12={},_0x2bcecd={},_0x50c71d={'count':0x0,'rows':[]};var _0x527cef=_[_0x6a23('0x27')](db[_0x6a23('0x28')][_0x6a23('0x29')],function(_0x58bef6){return{'name':_0x58bef6[_0x6a23('0x2a')],'type':_0x58bef6[_0x6a23('0x2b')][_0x6a23('0x2c')]};});_0x2bcecd[_0x6a23('0x2d')]=_['map'](_0x527cef,_0x6a23('0x24'));_0x2bcecd[_0x6a23('0x2e')]=_['keys'](_0x4656f1[_0x6a23('0x2e')]);_0x2bcecd[_0x6a23('0x2f')]=_['intersection'](_0x2bcecd['model'],_0x2bcecd[_0x6a23('0x2e')]);_0x1a3c12[_0x6a23('0x30')]=_[_0x6a23('0x31')](_0x2bcecd['model'],qs[_0x6a23('0x32')](_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x32')]));_0x1a3c12[_0x6a23('0x30')]=_0x1a3c12[_0x6a23('0x30')][_0x6a23('0x33')]?_0x1a3c12[_0x6a23('0x30')]:_0x2bcecd[_0x6a23('0x2d')];if(!_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x34')](_0x6a23('0x35'))){_0x1a3c12['limit']=qs[_0x6a23('0x1f')](_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x1f')]);_0x1a3c12[_0x6a23('0x1d')]=qs[_0x6a23('0x1d')](_0x4656f1['query'][_0x6a23('0x1d')]);}_0x1a3c12['order']=qs['sort'](_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x36')]);_0x1a3c12[_0x6a23('0x37')]=qs[_0x6a23('0x2f')](_[_0x6a23('0x38')](_0x4656f1[_0x6a23('0x2e')],_0x2bcecd[_0x6a23('0x2f')]),_0x527cef);if(_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x39')]){_0x1a3c12[_0x6a23('0x37')]=_['merge'](_0x1a3c12[_0x6a23('0x37')],{'$or':_[_0x6a23('0x27')](_0x527cef,function(_0x4ccfff){if(_0x4ccfff[_0x6a23('0x2b')]!==_0x6a23('0x3a')){var _0x274bf6={};_0x274bf6[_0x4ccfff[_0x6a23('0x24')]]={'$like':'%'+_0x4656f1[_0x6a23('0x2e')][_0x6a23('0x39')]+'%'};return _0x274bf6;}})});}_0x1a3c12=_[_0x6a23('0x3b')]({},_0x1a3c12,_0x4656f1[_0x6a23('0x3c')]);var _0x57c68c={'where':_0x1a3c12[_0x6a23('0x37')]};return db[_0x6a23('0x28')][_0x6a23('0x20')](_0x57c68c)[_0x6a23('0x12')](function(_0x16e42f){_0x50c71d['count']=_0x16e42f;if(_0x4656f1[_0x6a23('0x2e')]['includeAll']){_0x1a3c12[_0x6a23('0x3d')]=[{'all':!![]}];}return db[_0x6a23('0x28')]['findAll'](_0x1a3c12);})[_0x6a23('0x12')](function(_0x2ff62f){_0x50c71d[_0x6a23('0x3e')]=_0x2ff62f;return _0x50c71d;})['then'](respondWithFilteredResult(_0x48ffcb,_0x1a3c12))[_0x6a23('0x1b')](handleError(_0x48ffcb,null));};exports[_0x6a23('0x3f')]=function(_0x22dfc5,_0x4acd1e){var _0xc0304={'raw':!![],'where':{'id':_0x22dfc5[_0x6a23('0x40')]['id']}},_0x82a9d1={};_0x82a9d1[_0x6a23('0x2d')]=_['keys'](db[_0x6a23('0x28')][_0x6a23('0x29')]);_0x82a9d1[_0x6a23('0x2e')]=_[_0x6a23('0x41')](_0x22dfc5['query']);_0x82a9d1[_0x6a23('0x2f')]=_[_0x6a23('0x31')](_0x82a9d1[_0x6a23('0x2d')],_0x82a9d1[_0x6a23('0x2e')]);_0xc0304['attributes']=_[_0x6a23('0x31')](_0x82a9d1[_0x6a23('0x2d')],qs[_0x6a23('0x32')](_0x22dfc5[_0x6a23('0x2e')][_0x6a23('0x32')]));_0xc0304['attributes']=_0xc0304['attributes'][_0x6a23('0x33')]?_0xc0304[_0x6a23('0x30')]:_0x82a9d1[_0x6a23('0x2d')];if(_0x22dfc5[_0x6a23('0x2e')][_0x6a23('0x42')]){_0xc0304['include']=[{'all':!![]}];}_0xc0304=_[_0x6a23('0x3b')]({},_0xc0304,_0x22dfc5[_0x6a23('0x3c')]);return db[_0x6a23('0x28')]['find'](_0xc0304)['then'](handleEntityNotFound(_0x4acd1e,null))[_0x6a23('0x12')](respondWithResult(_0x4acd1e,null))[_0x6a23('0x1b')](handleError(_0x4acd1e,null));};exports[_0x6a23('0x43')]=function(_0x1290a8,_0x538eea){return db[_0x6a23('0x28')][_0x6a23('0x43')](_0x1290a8[_0x6a23('0x44')],{})['then'](respondWithResult(_0x538eea,0xc9))[_0x6a23('0x1b')](handleError(_0x538eea,null));};exports[_0x6a23('0x45')]=function(_0x58781f,_0x1ac2ed){if(_0x58781f['body']['id']){delete _0x58781f['body']['id'];}return db['ChatMessage'][_0x6a23('0x46')]({'where':{'id':_0x58781f['params']['id']}})[_0x6a23('0x12')](handleEntityNotFound(_0x1ac2ed,null))['then'](saveUpdates(_0x58781f['body'],null))[_0x6a23('0x12')](respondWithResult(_0x1ac2ed,null))[_0x6a23('0x1b')](handleError(_0x1ac2ed,null));};exports[_0x6a23('0x23')]=function(_0x40bdce,_0x448910){return db[_0x6a23('0x28')]['find']({'where':{'id':_0x40bdce[_0x6a23('0x40')]['id']}})[_0x6a23('0x12')](handleEntityNotFound(_0x448910,null))[_0x6a23('0x12')](removeEntity(_0x448910,null))['catch'](handleError(_0x448910,null));};exports[_0x6a23('0x47')]=function(_0x13e574,_0x8dbadc){return db['ChatMessage'][_0x6a23('0x47')]()[_0x6a23('0x12')](respondWithResult(_0x8dbadc,null))[_0x6a23('0x1b')](handleError(_0x8dbadc,null));};exports[_0x6a23('0x48')]=function(_0x480dae,_0x5b5bbc){var _0x1aa4e6=_0x6a23('0x49');return interactionService[_0x6a23('0x4a')](_0x480dae,_0x1aa4e6)[_0x6a23('0x12')](respondWithResult(_0x5b5bbc,null))[_0x6a23('0x1b')](handleError(_0x5b5bbc,null));};exports['reject']=function(_0x1f97a2,_0x503099){var _0x305222={'agent':{},'channel':_0x6a23('0x49')};if(_0x1f97a2[_0x6a23('0x44')]['id']){delete _0x1f97a2['body']['id'];}_0x1f97a2['body']['UserId']=_0x1f97a2['body']['UserId']||_0x1f97a2['user']['id'];_0x305222[_0x6a23('0x4b')]['id']=_0x1f97a2['body'][_0x6a23('0x4c')];return db[_0x6a23('0x28')][_0x6a23('0x46')]({'where':{'id':_0x1f97a2[_0x6a23('0x40')]['id'],'UserId':null}})[_0x6a23('0x12')](handleEntityNotFound(_0x503099,null))[_0x6a23('0x12')](function(_0x4845e0){if(_0x4845e0){_0x305222[_0x6a23('0x1a')]=_0x4845e0[_0x6a23('0x4d')]({'plain':!![]});return db[_0x6a23('0x4e')][_0x6a23('0x46')]({'where':{'id':_0x4845e0['ChatInteractionId']}});}return null;})['then'](handleEntityNotFound(_0x503099,null))[_0x6a23('0x12')](function(_0x4b8f2a){if(_0x4b8f2a){_0x305222[_0x6a23('0x4f')]=_0x4b8f2a[_0x6a23('0x4d')]({'plain':!![]});interaction_log[_0x6a23('0x13')](_0x6a23('0x50'),_0x1f97a2[_0x6a23('0x51')]['id'],_0x1f97a2['user'][_0x6a23('0x24')],_0x1f97a2[_0x6a23('0x51')][_0x6a23('0x52')],_0x305222[_0x6a23('0x4f')]['id'],_0x1f97a2['body']?JSON[_0x6a23('0x53')](_0x1f97a2['body']):_0x6a23('0x54'));return respondWithRpcPromise('RejectMessage','rejectMessage',_0x305222);}return null;})[_0x6a23('0x12')](function(_0x46b322){var _0x1671ad=_0x6a23('0x55')+_0x46b322['message'][_0x6a23('0x56')];return db['sequelize'][_0x6a23('0x2e')](_0x1671ad,{'type':db[_0x6a23('0x57')]['QueryTypes'][_0x6a23('0x58')],'raw':!![]})[_0x6a23('0x12')](function(_0x1dc9af){return _0x1dc9af;});})[_0x6a23('0x12')](function(_0x1b9b67){if(_0x1b9b67){_0x305222[_0x6a23('0x1a')][_0x6a23('0x59')]=_0x1b9b67[0x0];if(!_0x1f97a2[_0x6a23('0x44')][_0x6a23('0x4c')])return;return db[_0x6a23('0x5a')][_0x6a23('0x46')]({'where':{'id':_0x1f97a2['body'][_0x6a23('0x4c')],'role':_0x6a23('0x4b')},'attributes':['id',_0x6a23('0x24'),_0x6a23('0x5b'),'email',_0x6a23('0x5c')],'raw':!![]});}return null;})[_0x6a23('0x12')](function(_0x8a088c){if(!_0x8a088c)return null;_0x305222[_0x6a23('0x1a')]['agent']=_0x8a088c;return _0x305222;})[_0x6a23('0x12')](function(_0x3f892f){if(_0x3f892f){_0x3f892f[_0x6a23('0x1a')][_0x6a23('0x5d')]=util[_0x6a23('0x5e')](_0x6a23('0x5f'),_0x1f97a2[_0x6a23('0x51')][_0x6a23('0x24')]);_0x3f892f[_0x6a23('0x1a')]['channel']=_0x305222['channel'];_0x3f892f[_0x6a23('0x1a')][_0x6a23('0x60')]=_0x305222['channel'];_0x3f892f[_0x6a23('0x1a')]['event']=_0x6a23('0x61');respondWithRpcPromise(_0x6a23('0x62'),_0x6a23('0x62'),{'event':'rejectmessage','message':_[_0x6a23('0x3b')](_0x305222[_0x6a23('0x1a')],JSON[_0x6a23('0x63')](_0x305222[_0x6a23('0x4f')][_0x6a23('0x64')]))},client9002);return _0x305222;}return null;})[_0x6a23('0x12')](respondWithResult(_0x503099,null))[_0x6a23('0x1b')](handleError(_0x503099,null));};
\ No newline at end of file