Built motion from commit f7863d46.|2.5.41
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 9f8d783..62ec339 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xed1d=['html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','to-csv','ejs','lodash','squel','desk.js','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./chatMessage.socket','register','http','client','Sequelize','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','info','ChatMessage,\x20%s,\x20%s','ChatMessage,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','catch','sendStatus','status','end','json','count','offset','limit','Content-Range','reject','save','update','then','destroy','stack','name','send','map','ChatMessage','rawAttributes','fieldName','type','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','pick','filter','where','merge','includeAll','include','findAll','rows','show','params','options','find','create','body','describe','accept','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','CmContact','ChatInteraction','ChatInteractionId','read1stAt','interaction','get','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','acceptMessage','interface','SIP/%s','channel','event','EventManager','acceptmessage','parse','formData','chat-interactions','chat','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectmessage'];(function(_0x19950b,_0x53d0d7){var _0x3c6b41=function(_0x3924ad){while(--_0x3924ad){_0x19950b['push'](_0x19950b['shift']());}};_0x3c6b41(++_0x53d0d7);}(_0xed1d,0xec));var _0xded1=function(_0x349811,_0x2fb811){_0x349811=_0x349811-0x0;var _0x4fa6bb=_0xed1d[_0x349811];return _0x4fa6bb;};'use strict';var pdf=require(_0xded1('0x0'));var emlformat=require(_0xded1('0x1'));var rimraf=require(_0xded1('0x2'));var zipdir=require(_0xded1('0x3'));var jsonpatch=require(_0xded1('0x4'));var rp=require(_0xded1('0x5'));var moment=require(_0xded1('0x6'));var BPromise=require(_0xded1('0x7'));var Mustache=require(_0xded1('0x8'));var util=require('util');var path=require(_0xded1('0x9'));var sox=require('sox');var csv=require(_0xded1('0xa'));var ejs=require(_0xded1('0xb'));var fs=require('fs');var _=require(_0xded1('0xc'));var squel=require(_0xded1('0xd'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0xded1('0xe'));var toCsv=require(_0xded1('0xa'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xded1('0xf'));var qs=require(_0xded1('0x10'));var as=require(_0xded1('0x11'));var hardwareService=require(_0xded1('0x12'));var logger=require(_0xded1('0x13'))('api');var utils=require('../../config/utils');var config=require(_0xded1('0x14'));var db=require(_0xded1('0x15'))['db'];config[_0xded1('0x16')]=_[_0xded1('0x17')](config[_0xded1('0x16')],{'host':_0xded1('0x18'),'port':0x18eb});var socket=require(_0xded1('0x19'))(new Redis(config[_0xded1('0x16')]));require(_0xded1('0x1a'))[_0xded1('0x1b')](socket);var jayson=require('jayson/promise');var client=jayson['client'][_0xded1('0x1c')]({'port':0x232c});var client9002=jayson[_0xded1('0x1d')][_0xded1('0x1c')]({'port':0x232a});function checkPasswordPattern(_0x7b6411,_0x236132,_0x3ba7b0){if(_0x3ba7b0){var _0x593f97=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x593f97['test'](_0x236132)){return _0x7b6411;}else{throw new db[(_0xded1('0x1e'))]['ValidationError'](_0xded1('0x1f'));}}else{return _0x7b6411;}}function respondWithRpcPromise(_0x488add,_0x43314e,_0x12d73a,_0x419c23){return new BPromise(function(_0x13aa1b,_0x1aa552){var _0xf2cf05=_0x419c23||client;return _0xf2cf05[_0xded1('0x20')](_0x488add,_0x12d73a)['then'](function(_0x1157f8){logger[_0xded1('0x21')](_0xded1('0x22'),_0x43314e,'request\x20sent');logger['debug'](_0xded1('0x23'),_0x43314e,_0xded1('0x24'),JSON[_0xded1('0x25')](_0x1157f8));if(_0x1157f8[_0xded1('0x26')]){if(_0x1157f8[_0xded1('0x26')][_0xded1('0x27')]===0x1f4){logger[_0xded1('0x26')](_0xded1('0x22'),_0x43314e,_0x1157f8[_0xded1('0x26')]['message']);return _0x1aa552(_0x1157f8['error']['message']);}logger[_0xded1('0x26')](_0xded1('0x22'),_0x43314e,_0x1157f8['error']['message']);return _0x13aa1b(_0x1157f8[_0xded1('0x26')][_0xded1('0x28')]);}else{logger[_0xded1('0x21')]('ChatMessage,\x20%s,\x20%s',_0x43314e,'request\x20sent');_0x13aa1b(_0x1157f8['result'][_0xded1('0x28')]);}})[_0xded1('0x29')](function(_0x1dc556){logger[_0xded1('0x26')](_0xded1('0x22'),_0x43314e,_0x1dc556);_0x1aa552(_0x1dc556);});});}function respondWithStatusCode(_0x1e6227,_0x1320ea){_0x1320ea=_0x1320ea||0xcc;return function(_0x1020f2){if(_0x1020f2){return _0x1e6227[_0xded1('0x2a')](_0x1320ea);}return _0x1e6227[_0xded1('0x2b')](_0x1320ea)[_0xded1('0x2c')]();};}function respondWithResult(_0x2ca599,_0x24e024){_0x24e024=_0x24e024||0xc8;return function(_0x4f349f){if(_0x4f349f){return _0x2ca599[_0xded1('0x2b')](_0x24e024)[_0xded1('0x2d')](_0x4f349f);}};}function respondWithFilteredResult(_0x577590,_0xa61603){return function(_0x353256){if(_0x353256){var _0x20b71b=_0x353256[_0xded1('0x2e')],_0x1577ca=_0xa61603[_0xded1('0x2f')],_0x4d052a=_0xa61603[_0xded1('0x2f')]+_0xa61603[_0xded1('0x30')],_0x5f52a9;if(_0x4d052a>=_0x20b71b){_0x4d052a=_0x20b71b;_0x5f52a9=0xc8;}else{_0x5f52a9=0xce;}_0x577590['status'](_0x5f52a9);return _0x577590['set'](_0xded1('0x31'),_0x1577ca+'-'+_0x4d052a+'/'+_0x20b71b)[_0xded1('0x2d')](_0x353256);}return null;};}function patchUpdates(_0x31a1dd){return function(_0x4f440d){try{jsonpatch['apply'](_0x4f440d,_0x31a1dd,!![]);}catch(_0x34004a){return BPromise[_0xded1('0x32')](_0x34004a);}return _0x4f440d[_0xded1('0x33')]();};}function saveUpdates(_0x3bfed4,_0x2090fc){return function(_0x3d0d64){if(_0x3d0d64){return _0x3d0d64[_0xded1('0x34')](_0x3bfed4)[_0xded1('0x35')](function(_0x1e1637){return _0x1e1637;});}return null;};}function removeEntity(_0x2b1b4a,_0x502558){return function(_0xbda9be){if(_0xbda9be){return _0xbda9be[_0xded1('0x36')]()['then'](function(){_0x2b1b4a[_0xded1('0x2b')](0xcc)[_0xded1('0x2c')]();});}};}function handleEntityNotFound(_0x575e7e,_0x35348f){return function(_0x976fce){if(!_0x976fce){_0x575e7e[_0xded1('0x2a')](0x194);}return _0x976fce;};}function handleError(_0x475e7e,_0x33d5dc){_0x33d5dc=_0x33d5dc||0x1f4;return function(_0x575e61){logger[_0xded1('0x26')](_0x575e61[_0xded1('0x37')]);if(_0x575e61['name']){delete _0x575e61[_0xded1('0x38')];}_0x475e7e[_0xded1('0x2b')](_0x33d5dc)[_0xded1('0x39')](_0x575e61);};}exports['index']=function(_0x1f621e,_0x130bc3){var _0x10b477={},_0x3f88a3={},_0x24b6c3={'count':0x0,'rows':[]};var _0x37f961=_[_0xded1('0x3a')](db[_0xded1('0x3b')][_0xded1('0x3c')],function(_0x56f9c3){return{'name':_0x56f9c3[_0xded1('0x3d')],'type':_0x56f9c3[_0xded1('0x3e')]['key']};});_0x3f88a3[_0xded1('0x3f')]=_[_0xded1('0x3a')](_0x37f961,_0xded1('0x38'));_0x3f88a3[_0xded1('0x40')]=_[_0xded1('0x41')](_0x1f621e[_0xded1('0x40')]);_0x3f88a3[_0xded1('0x42')]=_['intersection'](_0x3f88a3[_0xded1('0x3f')],_0x3f88a3[_0xded1('0x40')]);_0x10b477['attributes']=_[_0xded1('0x43')](_0x3f88a3[_0xded1('0x3f')],qs['fields'](_0x1f621e[_0xded1('0x40')][_0xded1('0x44')]));_0x10b477[_0xded1('0x45')]=_0x10b477[_0xded1('0x45')][_0xded1('0x46')]?_0x10b477['attributes']:_0x3f88a3[_0xded1('0x3f')];if(!_0x1f621e[_0xded1('0x40')][_0xded1('0x47')](_0xded1('0x48'))){_0x10b477[_0xded1('0x30')]=qs[_0xded1('0x30')](_0x1f621e[_0xded1('0x40')][_0xded1('0x30')]);_0x10b477[_0xded1('0x2f')]=qs[_0xded1('0x2f')](_0x1f621e[_0xded1('0x40')][_0xded1('0x2f')]);}_0x10b477[_0xded1('0x49')]=qs['sort'](_0x1f621e[_0xded1('0x40')]['sort']);_0x10b477['where']=qs['filters'](_[_0xded1('0x4a')](_0x1f621e[_0xded1('0x40')],_0x3f88a3['filters']));if(_0x1f621e[_0xded1('0x40')][_0xded1('0x4b')]){_0x10b477[_0xded1('0x4c')]=_[_0xded1('0x4d')](_0x10b477['where'],{'$or':_[_0xded1('0x3a')](_0x37f961,function(_0x52e57e){if(_0x52e57e['type']!=='VIRTUAL'){var _0x3fb8d1={};_0x3fb8d1[_0x52e57e[_0xded1('0x38')]]={'$like':'%'+_0x1f621e[_0xded1('0x40')][_0xded1('0x4b')]+'%'};return _0x3fb8d1;}})});}_0x10b477=_[_0xded1('0x4d')]({},_0x10b477,_0x1f621e['options']);var _0x3c614d={'where':_0x10b477[_0xded1('0x4c')]};return db[_0xded1('0x3b')]['count'](_0x3c614d)[_0xded1('0x35')](function(_0x25665f){_0x24b6c3[_0xded1('0x2e')]=_0x25665f;if(_0x1f621e[_0xded1('0x40')][_0xded1('0x4e')]){_0x10b477[_0xded1('0x4f')]=[{'all':!![]}];}return db[_0xded1('0x3b')][_0xded1('0x50')](_0x10b477);})['then'](function(_0x3a5688){_0x24b6c3[_0xded1('0x51')]=_0x3a5688;return _0x24b6c3;})[_0xded1('0x35')](respondWithFilteredResult(_0x130bc3,_0x10b477))[_0xded1('0x29')](handleError(_0x130bc3,null));};exports[_0xded1('0x52')]=function(_0x22829a,_0x1d0998){var _0x4c8761={'raw':!![],'where':{'id':_0x22829a[_0xded1('0x53')]['id']}},_0x4e43f8={};_0x4e43f8[_0xded1('0x3f')]=_['keys'](db[_0xded1('0x3b')][_0xded1('0x3c')]);_0x4e43f8[_0xded1('0x40')]=_[_0xded1('0x41')](_0x22829a[_0xded1('0x40')]);_0x4e43f8[_0xded1('0x42')]=_['intersection'](_0x4e43f8[_0xded1('0x3f')],_0x4e43f8[_0xded1('0x40')]);_0x4c8761[_0xded1('0x45')]=_['intersection'](_0x4e43f8[_0xded1('0x3f')],qs[_0xded1('0x44')](_0x22829a[_0xded1('0x40')]['fields']));_0x4c8761[_0xded1('0x45')]=_0x4c8761[_0xded1('0x45')][_0xded1('0x46')]?_0x4c8761[_0xded1('0x45')]:_0x4e43f8[_0xded1('0x3f')];if(_0x22829a['query']['includeAll']){_0x4c8761['include']=[{'all':!![]}];}_0x4c8761=_[_0xded1('0x4d')]({},_0x4c8761,_0x22829a[_0xded1('0x54')]);return db[_0xded1('0x3b')][_0xded1('0x55')](_0x4c8761)[_0xded1('0x35')](handleEntityNotFound(_0x1d0998,null))[_0xded1('0x35')](respondWithResult(_0x1d0998,null))[_0xded1('0x29')](handleError(_0x1d0998,null));};exports[_0xded1('0x56')]=function(_0x54ac55,_0x573abd){return db[_0xded1('0x3b')][_0xded1('0x56')](_0x54ac55[_0xded1('0x57')],{})[_0xded1('0x35')](respondWithResult(_0x573abd,0xc9))[_0xded1('0x29')](handleError(_0x573abd,null));};exports['update']=function(_0x5972de,_0xbf5fb4){if(_0x5972de[_0xded1('0x57')]['id']){delete _0x5972de[_0xded1('0x57')]['id'];}return db['ChatMessage'][_0xded1('0x55')]({'where':{'id':_0x5972de[_0xded1('0x53')]['id']}})[_0xded1('0x35')](handleEntityNotFound(_0xbf5fb4,null))[_0xded1('0x35')](saveUpdates(_0x5972de['body'],null))[_0xded1('0x35')](respondWithResult(_0xbf5fb4,null))[_0xded1('0x29')](handleError(_0xbf5fb4,null));};exports[_0xded1('0x36')]=function(_0x17b73d,_0x4fdb57){return db[_0xded1('0x3b')]['find']({'where':{'id':_0x17b73d[_0xded1('0x53')]['id']}})[_0xded1('0x35')](handleEntityNotFound(_0x4fdb57,null))[_0xded1('0x35')](removeEntity(_0x4fdb57,null))['catch'](handleError(_0x4fdb57,null));};exports[_0xded1('0x58')]=function(_0x1776c4,_0x1ac34b){return db[_0xded1('0x3b')][_0xded1('0x58')]()[_0xded1('0x35')](respondWithResult(_0x1ac34b,null))[_0xded1('0x29')](handleError(_0x1ac34b,null));};var interaction_log=require(_0xded1('0x13'))('chat-interactions');exports[_0xded1('0x59')]=function(_0x266d37,_0x362a92,_0x5affc9){var _0x2311ff={'channel':'chat'};if(_0x266d37[_0xded1('0x57')]['id']){delete _0x266d37[_0xded1('0x57')]['id'];}_0x266d37['body'][_0xded1('0x5a')]=!![];_0x266d37[_0xded1('0x57')][_0xded1('0x5b')]=moment()[_0xded1('0x5c')](_0xded1('0x5d'));_0x266d37[_0xded1('0x57')][_0xded1('0x5e')]=_0x266d37['body'][_0xded1('0x5e')]||_0x266d37[_0xded1('0x5f')]['id'];return db[_0xded1('0x3b')][_0xded1('0x55')]({'where':{'id':_0x266d37['params']['id'],'UserId':null},'include':[{'model':db[_0xded1('0x60')],'as':'Contact'}]})['then'](handleEntityNotFound(_0x362a92,null))['then'](saveUpdates(_0x266d37[_0xded1('0x57')],null))[_0xded1('0x35')](function(_0x22e9bd){if(_0x22e9bd){_0x2311ff[_0xded1('0x28')]=_0x22e9bd['get']({'plain':!![]});return db[_0xded1('0x61')][_0xded1('0x55')]({'where':{'id':_0x22e9bd[_0xded1('0x62')]}});}return null;})[_0xded1('0x35')](handleEntityNotFound(_0x362a92,null))[_0xded1('0x35')](function(_0x1bf8a5){if(_0x1bf8a5){return _0x1bf8a5[_0xded1('0x34')]({'UserId':_0x266d37[_0xded1('0x57')][_0xded1('0x5e')],'read1stAt':_['isNil'](_0x1bf8a5[_0xded1('0x63')])?moment()[_0xded1('0x5c')](_0xded1('0x5d')):undefined});}return null;})[_0xded1('0x35')](function(_0x1e6178){if(_0x1e6178){_0x2311ff[_0xded1('0x64')]=_0x1e6178[_0xded1('0x65')]({'plain':!![]});interaction_log['info'](_0xded1('0x66'),_0x266d37['user']['id'],_0x266d37[_0xded1('0x5f')][_0xded1('0x38')],_0x266d37[_0xded1('0x5f')]['role'],_0x2311ff['interaction']['id'],_0x266d37['body']?JSON[_0xded1('0x25')](_0x266d37[_0xded1('0x57')]):_0xded1('0x67'));return respondWithRpcPromise('AcceptMessage',_0xded1('0x68'),_0x2311ff);}return null;})[_0xded1('0x35')](function(_0x31bdc7){if(_0x31bdc7){if(_0x266d37['body']['manual']){_0x2311ff['message'][_0xded1('0x69')]=util['format'](_0xded1('0x6a'),_0x266d37[_0xded1('0x5f')][_0xded1('0x38')]);_0x2311ff['message'][_0xded1('0x6b')]=_0x2311ff['channel'];_0x2311ff[_0xded1('0x28')][_0xded1('0x6c')]='accept';return respondWithRpcPromise('EventManager',_0xded1('0x6d'),{'event':_0xded1('0x6e'),'message':_['merge'](_0x2311ff[_0xded1('0x28')],JSON[_0xded1('0x6f')](_0x2311ff[_0xded1('0x64')][_0xded1('0x70')]))},client9002)[_0xded1('0x35')](function(){return _0x2311ff;});}return _0x2311ff;}return null;})[_0xded1('0x35')](respondWithResult(_0x362a92,null))[_0xded1('0x29')](handleError(_0x362a92,null));};var interaction_log=require(_0xded1('0x13'))(_0xded1('0x71'));exports[_0xded1('0x32')]=function(_0x3202d5,_0x10a126,_0x4a2ffc){var _0x42d200={'agent':{},'channel':_0xded1('0x72')};if(_0x3202d5[_0xded1('0x57')]['id']){delete _0x3202d5[_0xded1('0x57')]['id'];}_0x3202d5[_0xded1('0x57')][_0xded1('0x5e')]=_0x3202d5[_0xded1('0x57')]['UserId']||_0x3202d5[_0xded1('0x5f')]['id'];_0x42d200['agent']['id']=_0x3202d5['body']['UserId'];return db[_0xded1('0x3b')][_0xded1('0x55')]({'where':{'id':_0x3202d5[_0xded1('0x53')]['id'],'UserId':null}})[_0xded1('0x35')](handleEntityNotFound(_0x10a126,null))[_0xded1('0x35')](function(_0x59a2a7){if(_0x59a2a7){_0x42d200[_0xded1('0x28')]=_0x59a2a7[_0xded1('0x65')]({'plain':!![]});return db[_0xded1('0x61')]['find']({'where':{'id':_0x59a2a7[_0xded1('0x62')]}});}return null;})[_0xded1('0x35')](handleEntityNotFound(_0x10a126,null))[_0xded1('0x35')](function(_0xfe0c76){if(_0xfe0c76){_0x42d200[_0xded1('0x64')]=_0xfe0c76[_0xded1('0x65')]({'plain':!![]});interaction_log['info'](_0xded1('0x73'),_0x3202d5[_0xded1('0x5f')]['id'],_0x3202d5[_0xded1('0x5f')][_0xded1('0x38')],_0x3202d5[_0xded1('0x5f')]['role'],_0x42d200[_0xded1('0x64')]['id'],_0x3202d5['body']?JSON[_0xded1('0x25')](_0x3202d5['body']):_0xded1('0x67'));return respondWithRpcPromise(_0xded1('0x74'),'rejectMessage',_0x42d200);}return null;})['then'](function(_0x553a63){if(_0x553a63){_0x553a63[_0xded1('0x28')][_0xded1('0x69')]=util['format']('SIP/%s',_0x3202d5[_0xded1('0x5f')][_0xded1('0x38')]);_0x553a63[_0xded1('0x28')][_0xded1('0x6b')]=_0x42d200[_0xded1('0x6b')];_0x553a63['message'][_0xded1('0x6c')]='reject';respondWithRpcPromise('EventManager',_0xded1('0x6d'),{'event':_0xded1('0x75'),'message':_0x553a63['message']},client9002);return _0x42d200;}return null;})['then'](respondWithResult(_0x10a126,null))[_0xded1('0x29')](handleError(_0x10a126,null));};
\ No newline at end of file
+var _0xd53f=['util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./chatMessage.socket','jayson/promise','client','http','request','ChatMessage,\x20%s,\x20%s','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','error','code','message','info','result','catch','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','reject','save','update','then','stack','name','send','map','ChatMessage','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','where','pick','filter','merge','type','VIRTUAL','options','includeAll','params','rawAttributes','include','find','create','body','destroy','describe','chat-interactions','chat','read','format','YYYY-MM-DD\x20HH:mm:ss','UserId','agent','ChatInteraction','ChatInteractionId','isNil','read1stAt','interaction','user','role','stringify','AcceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','QueryTypes','SELECT','contact','fullname','email','internal','manual','SIP/%s','channel','motionChannel','event','accept','EventManager','acceptmessage','get','null','RejectMessage','rejectMessage','sequelize','interface','parse','formData','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache'];(function(_0x308a1d,_0x3d379d){var _0x5eb875=function(_0x464dbe){while(--_0x464dbe){_0x308a1d['push'](_0x308a1d['shift']());}};_0x5eb875(++_0x3d379d);}(_0xd53f,0x80));var _0xfd53=function(_0x4ce641,_0x5297cc){_0x4ce641=_0x4ce641-0x0;var _0x1dd6a4=_0xd53f[_0x4ce641];return _0x1dd6a4;};'use strict';var emlformat=require(_0xfd53('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xfd53('0x1'));var jsonpatch=require(_0xfd53('0x2'));var rp=require(_0xfd53('0x3'));var moment=require(_0xfd53('0x4'));var BPromise=require(_0xfd53('0x5'));var Mustache=require(_0xfd53('0x6'));var util=require(_0xfd53('0x7'));var path=require(_0xfd53('0x8'));var sox=require(_0xfd53('0x9'));var csv=require(_0xfd53('0xa'));var ejs=require(_0xfd53('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xfd53('0xc'));var squel=require(_0xfd53('0xd'));var crypto=require(_0xfd53('0xe'));var jsforce=require(_0xfd53('0xf'));var deskjs=require(_0xfd53('0x10'));var toCsv=require(_0xfd53('0xa'));var querystring=require(_0xfd53('0x11'));var Papa=require(_0xfd53('0x12'));var Redis=require(_0xfd53('0x13'));var authService=require(_0xfd53('0x14'));var qs=require(_0xfd53('0x15'));var as=require(_0xfd53('0x16'));var hardwareService=require(_0xfd53('0x17'));var logger=require(_0xfd53('0x18'))(_0xfd53('0x19'));var utils=require(_0xfd53('0x1a'));var config=require('../../config/environment');var licenseUtil=require(_0xfd53('0x1b'));var db=require(_0xfd53('0x1c'))['db'];config['redis']=_[_0xfd53('0x1d')](config[_0xfd53('0x1e')],{'host':_0xfd53('0x1f'),'port':0x18eb});var socket=require(_0xfd53('0x20'))(new Redis(config['redis']));require(_0xfd53('0x21'))['register'](socket);var jayson=require(_0xfd53('0x22'));var client=jayson[_0xfd53('0x23')][_0xfd53('0x24')]({'port':0x232c});var client9002=jayson[_0xfd53('0x23')][_0xfd53('0x24')]({'port':0x232a});function respondWithRpcPromise(_0x1b57ae,_0xeb1a46,_0x574863,_0x3d5db9){return new BPromise(function(_0x247892,_0x5323c0){var _0x4d96c3=_0x3d5db9||client;return _0x4d96c3[_0xfd53('0x25')](_0x1b57ae,_0x574863)['then'](function(_0x1c09a5){logger['info'](_0xfd53('0x26'),_0xeb1a46,_0xfd53('0x27'));logger[_0xfd53('0x28')](_0xfd53('0x29'),_0xeb1a46,'request\x20sent',JSON['stringify'](_0x1c09a5));if(_0x1c09a5[_0xfd53('0x2a')]){if(_0x1c09a5[_0xfd53('0x2a')][_0xfd53('0x2b')]===0x1f4){logger[_0xfd53('0x2a')](_0xfd53('0x26'),_0xeb1a46,_0x1c09a5[_0xfd53('0x2a')]['message']);return _0x5323c0(_0x1c09a5['error'][_0xfd53('0x2c')]);}logger['error'](_0xfd53('0x26'),_0xeb1a46,_0x1c09a5[_0xfd53('0x2a')][_0xfd53('0x2c')]);return _0x247892(_0x1c09a5[_0xfd53('0x2a')][_0xfd53('0x2c')]);}else{logger[_0xfd53('0x2d')](_0xfd53('0x26'),_0xeb1a46,_0xfd53('0x27'));_0x247892(_0x1c09a5[_0xfd53('0x2e')][_0xfd53('0x2c')]);}})[_0xfd53('0x2f')](function(_0x26f27d){logger[_0xfd53('0x2a')](_0xfd53('0x26'),_0xeb1a46,_0x26f27d);_0x5323c0(_0x26f27d);});});}function respondWithStatusCode(_0x1531fb,_0x4c8efc){_0x4c8efc=_0x4c8efc||0xcc;return function(_0x41b2c3){if(_0x41b2c3){return _0x1531fb[_0xfd53('0x30')](_0x4c8efc);}return _0x1531fb[_0xfd53('0x31')](_0x4c8efc)[_0xfd53('0x32')]();};}function respondWithResult(_0x58df7c,_0x2256a4){_0x2256a4=_0x2256a4||0xc8;return function(_0x1d3ac5){if(_0x1d3ac5){return _0x58df7c[_0xfd53('0x31')](_0x2256a4)[_0xfd53('0x33')](_0x1d3ac5);}};}function respondWithFilteredResult(_0x263d8b,_0x2c1a1f){return function(_0x92ee9d){if(_0x92ee9d){var _0x34b5a2=typeof _0x2c1a1f[_0xfd53('0x34')]===_0xfd53('0x35')&&typeof _0x2c1a1f[_0xfd53('0x36')]===_0xfd53('0x35');var _0x35c168=_0x92ee9d[_0xfd53('0x37')];var _0x527dd3=_0x34b5a2?0x0:_0x2c1a1f[_0xfd53('0x34')];var _0x54548d=_0x34b5a2?_0x92ee9d[_0xfd53('0x37')]:_0x2c1a1f['offset']+_0x2c1a1f[_0xfd53('0x36')];var _0x2b6558;if(_0x54548d>=_0x35c168){_0x54548d=_0x35c168;_0x2b6558=0xc8;}else{_0x2b6558=0xce;}_0x263d8b[_0xfd53('0x31')](_0x2b6558);return _0x263d8b[_0xfd53('0x38')](_0xfd53('0x39'),_0x527dd3+'-'+_0x54548d+'/'+_0x35c168)['json'](_0x92ee9d);}return null;};}function patchUpdates(_0x22074c){return function(_0x599490){try{jsonpatch['apply'](_0x599490,_0x22074c,!![]);}catch(_0x1dc216){return BPromise[_0xfd53('0x3a')](_0x1dc216);}return _0x599490[_0xfd53('0x3b')]();};}function saveUpdates(_0x5ef299,_0x1099ac){return function(_0x33e407){if(_0x33e407){return _0x33e407[_0xfd53('0x3c')](_0x5ef299)[_0xfd53('0x3d')](function(_0x31ce00){return _0x31ce00;});}return null;};}function removeEntity(_0x5ea790,_0x160e8b){return function(_0x3cc5df){if(_0x3cc5df){return _0x3cc5df['destroy']()[_0xfd53('0x3d')](function(){_0x5ea790['status'](0xcc)[_0xfd53('0x32')]();});}};}function handleEntityNotFound(_0x29da84,_0x5dbad7){return function(_0x4ba7be){if(!_0x4ba7be){_0x29da84['sendStatus'](0x194);}return _0x4ba7be;};}function handleError(_0x54076a,_0x14c1b7){_0x14c1b7=_0x14c1b7||0x1f4;return function(_0x53fb5f){logger['error'](_0x53fb5f[_0xfd53('0x3e')]);if(_0x53fb5f['name']){delete _0x53fb5f[_0xfd53('0x3f')];}_0x54076a[_0xfd53('0x31')](_0x14c1b7)[_0xfd53('0x40')](_0x53fb5f);};}exports['index']=function(_0x114b3e,_0x55f620){var _0x24003e={},_0x5597ac={},_0x16e1a5={'count':0x0,'rows':[]};var _0xb81ade=_[_0xfd53('0x41')](db[_0xfd53('0x42')]['rawAttributes'],function(_0x53ce62){return{'name':_0x53ce62[_0xfd53('0x43')],'type':_0x53ce62['type'][_0xfd53('0x44')]};});_0x5597ac[_0xfd53('0x45')]=_[_0xfd53('0x41')](_0xb81ade,'name');_0x5597ac[_0xfd53('0x46')]=_[_0xfd53('0x47')](_0x114b3e['query']);_0x5597ac[_0xfd53('0x48')]=_[_0xfd53('0x49')](_0x5597ac[_0xfd53('0x45')],_0x5597ac['query']);_0x24003e[_0xfd53('0x4a')]=_[_0xfd53('0x49')](_0x5597ac[_0xfd53('0x45')],qs[_0xfd53('0x4b')](_0x114b3e[_0xfd53('0x46')][_0xfd53('0x4b')]));_0x24003e[_0xfd53('0x4a')]=_0x24003e[_0xfd53('0x4a')][_0xfd53('0x4c')]?_0x24003e[_0xfd53('0x4a')]:_0x5597ac[_0xfd53('0x45')];if(!_0x114b3e[_0xfd53('0x46')][_0xfd53('0x4d')](_0xfd53('0x4e'))){_0x24003e[_0xfd53('0x36')]=qs[_0xfd53('0x36')](_0x114b3e['query']['limit']);_0x24003e[_0xfd53('0x34')]=qs[_0xfd53('0x34')](_0x114b3e[_0xfd53('0x46')]['offset']);}_0x24003e['order']=qs['sort'](_0x114b3e[_0xfd53('0x46')]['sort']);_0x24003e[_0xfd53('0x4f')]=qs[_0xfd53('0x48')](_[_0xfd53('0x50')](_0x114b3e[_0xfd53('0x46')],_0x5597ac['filters']),_0xb81ade);if(_0x114b3e[_0xfd53('0x46')][_0xfd53('0x51')]){_0x24003e['where']=_[_0xfd53('0x52')](_0x24003e[_0xfd53('0x4f')],{'$or':_[_0xfd53('0x41')](_0xb81ade,function(_0x1264f0){if(_0x1264f0[_0xfd53('0x53')]!==_0xfd53('0x54')){var _0x5c6977={};_0x5c6977[_0x1264f0[_0xfd53('0x3f')]]={'$like':'%'+_0x114b3e[_0xfd53('0x46')][_0xfd53('0x51')]+'%'};return _0x5c6977;}})});}_0x24003e=_[_0xfd53('0x52')]({},_0x24003e,_0x114b3e[_0xfd53('0x55')]);var _0x255d07={'where':_0x24003e[_0xfd53('0x4f')]};return db[_0xfd53('0x42')][_0xfd53('0x37')](_0x255d07)[_0xfd53('0x3d')](function(_0x403379){_0x16e1a5['count']=_0x403379;if(_0x114b3e[_0xfd53('0x46')][_0xfd53('0x56')]){_0x24003e['include']=[{'all':!![]}];}return db[_0xfd53('0x42')]['findAll'](_0x24003e);})[_0xfd53('0x3d')](function(_0x542dca){_0x16e1a5['rows']=_0x542dca;return _0x16e1a5;})['then'](respondWithFilteredResult(_0x55f620,_0x24003e))['catch'](handleError(_0x55f620,null));};exports['show']=function(_0x5d6250,_0x28b33e){var _0x22f7a3={'raw':!![],'where':{'id':_0x5d6250[_0xfd53('0x57')]['id']}},_0x2e5971={};_0x2e5971[_0xfd53('0x45')]=_[_0xfd53('0x47')](db['ChatMessage'][_0xfd53('0x58')]);_0x2e5971['query']=_[_0xfd53('0x47')](_0x5d6250[_0xfd53('0x46')]);_0x2e5971[_0xfd53('0x48')]=_['intersection'](_0x2e5971[_0xfd53('0x45')],_0x2e5971[_0xfd53('0x46')]);_0x22f7a3[_0xfd53('0x4a')]=_['intersection'](_0x2e5971[_0xfd53('0x45')],qs[_0xfd53('0x4b')](_0x5d6250[_0xfd53('0x46')][_0xfd53('0x4b')]));_0x22f7a3[_0xfd53('0x4a')]=_0x22f7a3[_0xfd53('0x4a')][_0xfd53('0x4c')]?_0x22f7a3[_0xfd53('0x4a')]:_0x2e5971[_0xfd53('0x45')];if(_0x5d6250[_0xfd53('0x46')][_0xfd53('0x56')]){_0x22f7a3[_0xfd53('0x59')]=[{'all':!![]}];}_0x22f7a3=_[_0xfd53('0x52')]({},_0x22f7a3,_0x5d6250[_0xfd53('0x55')]);return db['ChatMessage'][_0xfd53('0x5a')](_0x22f7a3)[_0xfd53('0x3d')](handleEntityNotFound(_0x28b33e,null))['then'](respondWithResult(_0x28b33e,null))[_0xfd53('0x2f')](handleError(_0x28b33e,null));};exports[_0xfd53('0x5b')]=function(_0x2b3451,_0x46ee0e){return db[_0xfd53('0x42')][_0xfd53('0x5b')](_0x2b3451[_0xfd53('0x5c')],{})[_0xfd53('0x3d')](respondWithResult(_0x46ee0e,0xc9))[_0xfd53('0x2f')](handleError(_0x46ee0e,null));};exports[_0xfd53('0x3c')]=function(_0x44f260,_0x493ec6){if(_0x44f260[_0xfd53('0x5c')]['id']){delete _0x44f260[_0xfd53('0x5c')]['id'];}return db['ChatMessage'][_0xfd53('0x5a')]({'where':{'id':_0x44f260['params']['id']}})[_0xfd53('0x3d')](handleEntityNotFound(_0x493ec6,null))['then'](saveUpdates(_0x44f260['body'],null))[_0xfd53('0x3d')](respondWithResult(_0x493ec6,null))[_0xfd53('0x2f')](handleError(_0x493ec6,null));};exports[_0xfd53('0x5d')]=function(_0x236f3a,_0x3fe119){return db[_0xfd53('0x42')][_0xfd53('0x5a')]({'where':{'id':_0x236f3a['params']['id']}})['then'](handleEntityNotFound(_0x3fe119,null))[_0xfd53('0x3d')](removeEntity(_0x3fe119,null))[_0xfd53('0x2f')](handleError(_0x3fe119,null));};exports[_0xfd53('0x5e')]=function(_0x1fa623,_0x256c75){return db[_0xfd53('0x42')][_0xfd53('0x5e')]()[_0xfd53('0x3d')](respondWithResult(_0x256c75,null))[_0xfd53('0x2f')](handleError(_0x256c75,null));};var interaction_log=require(_0xfd53('0x18'))(_0xfd53('0x5f'));exports['accept']=function(_0x1ccccf,_0x5f030a,_0x45eb76){var _0x432c36={'agent':{},'channel':_0xfd53('0x60')};if(_0x1ccccf[_0xfd53('0x5c')]['id']){delete _0x1ccccf[_0xfd53('0x5c')]['id'];}_0x1ccccf[_0xfd53('0x5c')][_0xfd53('0x61')]=!![];_0x1ccccf[_0xfd53('0x5c')]['readAt']=moment()[_0xfd53('0x62')](_0xfd53('0x63'));_0x1ccccf[_0xfd53('0x5c')][_0xfd53('0x64')]=_0x1ccccf['body']['UserId']||_0x1ccccf['user']['id'];_0x432c36[_0xfd53('0x65')]['id']=_0x1ccccf[_0xfd53('0x5c')]['UserId'];return db[_0xfd53('0x42')][_0xfd53('0x5a')]({'where':{'id':_0x1ccccf[_0xfd53('0x57')]['id'],'UserId':null}})[_0xfd53('0x3d')](handleEntityNotFound(_0x5f030a,null))[_0xfd53('0x3d')](saveUpdates(_0x1ccccf[_0xfd53('0x5c')],null))[_0xfd53('0x3d')](function(_0x43b4f8){if(_0x43b4f8){_0x432c36['message']=_0x43b4f8['get']({'plain':!![]});return db[_0xfd53('0x66')]['find']({'where':{'id':_0x43b4f8[_0xfd53('0x67')]}});}return null;})[_0xfd53('0x3d')](handleEntityNotFound(_0x5f030a,null))[_0xfd53('0x3d')](function(_0x3c5d71){if(_0x3c5d71){return _0x3c5d71[_0xfd53('0x3c')]({'UserId':_0x1ccccf[_0xfd53('0x5c')][_0xfd53('0x64')],'read1stAt':_[_0xfd53('0x68')](_0x3c5d71[_0xfd53('0x69')])?moment()[_0xfd53('0x62')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0xfd53('0x3d')](function(_0x8c5e6e){if(_0x8c5e6e){_0x432c36[_0xfd53('0x6a')]=_0x8c5e6e['get']({'plain':!![]});interaction_log['info']('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x1ccccf[_0xfd53('0x6b')]['id'],_0x1ccccf[_0xfd53('0x6b')][_0xfd53('0x3f')],_0x1ccccf[_0xfd53('0x6b')][_0xfd53('0x6c')],_0x432c36[_0xfd53('0x6a')]['id'],_0x1ccccf[_0xfd53('0x5c')]?JSON[_0xfd53('0x6d')](_0x1ccccf[_0xfd53('0x5c')]):'null');return respondWithRpcPromise(_0xfd53('0x6e'),'acceptMessage',_0x432c36);}return null;})[_0xfd53('0x3d')](function(_0x40ffaa){var _0x35829a=_0xfd53('0x6f')+_0x40ffaa['message'][_0xfd53('0x70')];return db['sequelize']['query'](_0x35829a,{'type':db['Sequelize'][_0xfd53('0x71')][_0xfd53('0x72')],'raw':!![]})[_0xfd53('0x3d')](function(_0x3074e4){return _0x3074e4;});})[_0xfd53('0x3d')](function(_0x372077){if(_0x372077){_0x432c36['message'][_0xfd53('0x73')]=_0x372077[0x0];if(!_0x1ccccf[_0xfd53('0x5c')]['UserId'])return;return db['User'][_0xfd53('0x5a')]({'where':{'id':_0x1ccccf[_0xfd53('0x5c')][_0xfd53('0x64')],'role':_0xfd53('0x65')},'attributes':['id',_0xfd53('0x3f'),_0xfd53('0x74'),_0xfd53('0x75'),_0xfd53('0x76')],'raw':!![]});}return null;})['then'](function(_0x229044){if(!_0x229044)return null;_0x432c36['message']['agent']=_0x229044;return _0x432c36;})[_0xfd53('0x3d')](function(_0x163fca){if(_0x163fca){if(_0x1ccccf[_0xfd53('0x5c')][_0xfd53('0x77')]){_0x432c36[_0xfd53('0x2c')]['interface']=util[_0xfd53('0x62')](_0xfd53('0x78'),_0x1ccccf['user']['name']);_0x432c36['message'][_0xfd53('0x79')]=_0x432c36[_0xfd53('0x79')];_0x432c36[_0xfd53('0x2c')][_0xfd53('0x7a')]=_0x432c36[_0xfd53('0x79')];_0x432c36[_0xfd53('0x2c')][_0xfd53('0x7b')]=_0xfd53('0x7c');return respondWithRpcPromise('EventManager',_0xfd53('0x7d'),{'event':_0xfd53('0x7e'),'message':_[_0xfd53('0x52')](_0x432c36['message'],JSON['parse'](_0x432c36[_0xfd53('0x6a')]['formData']))},client9002)[_0xfd53('0x3d')](function(){return _0x432c36;});}return _0x432c36;}return null;})['then'](respondWithResult(_0x5f030a,null))[_0xfd53('0x2f')](handleError(_0x5f030a,null));};var interaction_log=require('../../config/logger')(_0xfd53('0x5f'));exports['reject']=function(_0x2f1a2f,_0x164f21,_0x3670ea){var _0x1f8881={'agent':{},'channel':_0xfd53('0x60')};if(_0x2f1a2f[_0xfd53('0x5c')]['id']){delete _0x2f1a2f[_0xfd53('0x5c')]['id'];}_0x2f1a2f[_0xfd53('0x5c')][_0xfd53('0x64')]=_0x2f1a2f[_0xfd53('0x5c')][_0xfd53('0x64')]||_0x2f1a2f['user']['id'];_0x1f8881['agent']['id']=_0x2f1a2f[_0xfd53('0x5c')][_0xfd53('0x64')];return db[_0xfd53('0x42')][_0xfd53('0x5a')]({'where':{'id':_0x2f1a2f['params']['id'],'UserId':null}})['then'](handleEntityNotFound(_0x164f21,null))['then'](function(_0x506673){if(_0x506673){_0x1f8881[_0xfd53('0x2c')]=_0x506673[_0xfd53('0x7f')]({'plain':!![]});return db[_0xfd53('0x66')][_0xfd53('0x5a')]({'where':{'id':_0x506673[_0xfd53('0x67')]}});}return null;})['then'](handleEntityNotFound(_0x164f21,null))[_0xfd53('0x3d')](function(_0x1b2589){if(_0x1b2589){_0x1f8881[_0xfd53('0x6a')]=_0x1b2589[_0xfd53('0x7f')]({'plain':!![]});interaction_log[_0xfd53('0x2d')]('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x2f1a2f[_0xfd53('0x6b')]['id'],_0x2f1a2f['user'][_0xfd53('0x3f')],_0x2f1a2f['user'][_0xfd53('0x6c')],_0x1f8881[_0xfd53('0x6a')]['id'],_0x2f1a2f['body']?JSON[_0xfd53('0x6d')](_0x2f1a2f['body']):_0xfd53('0x80'));return respondWithRpcPromise(_0xfd53('0x81'),_0xfd53('0x82'),_0x1f8881);}return null;})[_0xfd53('0x3d')](function(_0x5e2f26){var _0x2853bf=_0xfd53('0x6f')+_0x5e2f26[_0xfd53('0x2c')][_0xfd53('0x70')];return db[_0xfd53('0x83')]['query'](_0x2853bf,{'type':db['Sequelize'][_0xfd53('0x71')][_0xfd53('0x72')],'raw':!![]})[_0xfd53('0x3d')](function(_0xa088e6){return _0xa088e6;});})[_0xfd53('0x3d')](function(_0x45093f){if(_0x45093f){_0x1f8881[_0xfd53('0x2c')][_0xfd53('0x73')]=_0x45093f[0x0];if(!_0x2f1a2f[_0xfd53('0x5c')][_0xfd53('0x64')])return;return db['User']['find']({'where':{'id':_0x2f1a2f[_0xfd53('0x5c')]['UserId'],'role':'agent'},'attributes':['id',_0xfd53('0x3f'),_0xfd53('0x74'),_0xfd53('0x75'),'internal'],'raw':!![]});}return null;})[_0xfd53('0x3d')](function(_0x5e9996){if(!_0x5e9996)return null;_0x1f8881[_0xfd53('0x2c')][_0xfd53('0x65')]=_0x5e9996;return _0x1f8881;})[_0xfd53('0x3d')](function(_0x421b81){if(_0x421b81){_0x421b81[_0xfd53('0x2c')][_0xfd53('0x84')]=util[_0xfd53('0x62')](_0xfd53('0x78'),_0x2f1a2f[_0xfd53('0x6b')][_0xfd53('0x3f')]);_0x421b81[_0xfd53('0x2c')][_0xfd53('0x79')]=_0x1f8881['channel'];_0x421b81[_0xfd53('0x2c')][_0xfd53('0x7a')]=_0x1f8881['channel'];_0x421b81['message']['event']=_0xfd53('0x3a');respondWithRpcPromise(_0xfd53('0x7d'),'EventManager',{'event':'rejectmessage','message':_[_0xfd53('0x52')](_0x1f8881[_0xfd53('0x2c')],JSON[_0xfd53('0x85')](_0x1f8881[_0xfd53('0x6a')][_0xfd53('0x86')]))},client9002);return _0x1f8881;}return null;})[_0xfd53('0x3d')](respondWithResult(_0x164f21,null))['catch'](handleError(_0x164f21,null));};
\ No newline at end of file