Built motion from commit 1fa89557.|2.6.10
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index c607b00..4b37ce6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1291=['rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','./chatMessage.socket','register','jayson/promise','client','http','test','Sequelize','request','then','info','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','error','code','ChatMessage,\x20%s,\x20%s','message','result','catch','sendStatus','status','end','offset','set','Content-Range','json','apply','reject','save','update','destroy','stack','name','index','map','ChatMessage','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','fields','hasOwnProperty','limit','sort','where','pick','filter','VIRTUAL','merge','options','count','includeAll','include','findAll','rows','show','intersection','find','create','body','params','accept','chat','readAt','YYYY-MM-DD\x20HH:mm:ss','UserId','CmContact','Contact','get','ChatInteraction','ChatInteractionId','isNil','read1stAt','format','interaction','user','role','stringify','null','AcceptMessage','acceptMessage','interface','SIP/%s','channel','event','EventManager','acceptmessage','parse','formData','chat-interactions','agent','rejectmessage','html-pdf'];(function(_0x5e3b04,_0xbb6795){var _0x1fc44d=function(_0x3472a1){while(--_0x3472a1){_0x5e3b04['push'](_0x5e3b04['shift']());}};_0x1fc44d(++_0xbb6795);}(_0x1291,0x7c));var _0x1129=function(_0x208271,_0x2060c3){_0x208271=_0x208271-0x0;var _0x3c831f=_0x1291[_0x208271];return _0x3c831f;};'use strict';var pdf=require(_0x1129('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x1129('0x1'));var zipdir=require(_0x1129('0x2'));var jsonpatch=require(_0x1129('0x3'));var rp=require(_0x1129('0x4'));var moment=require('moment');var BPromise=require(_0x1129('0x5'));var Mustache=require(_0x1129('0x6'));var util=require(_0x1129('0x7'));var path=require(_0x1129('0x8'));var sox=require('sox');var csv=require(_0x1129('0x9'));var ejs=require(_0x1129('0xa'));var fs=require('fs');var _=require(_0x1129('0xb'));var squel=require(_0x1129('0xc'));var crypto=require(_0x1129('0xd'));var jsforce=require(_0x1129('0xe'));var deskjs=require(_0x1129('0xf'));var toCsv=require(_0x1129('0x9'));var querystring=require(_0x1129('0x10'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x1129('0x11'));var qs=require(_0x1129('0x12'));var as=require(_0x1129('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x1129('0x14'))(_0x1129('0x15'));var utils=require(_0x1129('0x16'));var config=require(_0x1129('0x17'));var db=require(_0x1129('0x18'))['db'];config[_0x1129('0x19')]=_[_0x1129('0x1a')](config[_0x1129('0x19')],{'host':_0x1129('0x1b'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x1129('0x19')]));require(_0x1129('0x1c'))[_0x1129('0x1d')](socket);var jayson=require(_0x1129('0x1e'));var client=jayson[_0x1129('0x1f')][_0x1129('0x20')]({'port':0x232c});var client9002=jayson[_0x1129('0x1f')][_0x1129('0x20')]({'port':0x232a});function checkPasswordPattern(_0x8d241,_0xa7414d,_0x5eeeba){if(_0x5eeeba){var _0x5b2203=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x5b2203[_0x1129('0x21')](_0xa7414d)){return _0x8d241;}else{throw new db[(_0x1129('0x22'))]['ValidationError']('The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.');}}else{return _0x8d241;}}function respondWithRpcPromise(_0xc8f30e,_0x1c2368,_0x3f3172,_0x2d7fb2){return new BPromise(function(_0x1139b9,_0x5639ce){var _0x38b043=_0x2d7fb2||client;return _0x38b043[_0x1129('0x23')](_0xc8f30e,_0x3f3172)[_0x1129('0x24')](function(_0x5a59e5){logger[_0x1129('0x25')]('ChatMessage,\x20%s,\x20%s',_0x1c2368,_0x1129('0x26'));logger[_0x1129('0x27')](_0x1129('0x28'),_0x1c2368,_0x1129('0x26'),JSON['stringify'](_0x5a59e5));if(_0x5a59e5['error']){if(_0x5a59e5[_0x1129('0x29')][_0x1129('0x2a')]===0x1f4){logger[_0x1129('0x29')](_0x1129('0x2b'),_0x1c2368,_0x5a59e5[_0x1129('0x29')][_0x1129('0x2c')]);return _0x5639ce(_0x5a59e5[_0x1129('0x29')]['message']);}logger[_0x1129('0x29')](_0x1129('0x2b'),_0x1c2368,_0x5a59e5[_0x1129('0x29')][_0x1129('0x2c')]);return _0x1139b9(_0x5a59e5[_0x1129('0x29')]['message']);}else{logger[_0x1129('0x25')](_0x1129('0x2b'),_0x1c2368,_0x1129('0x26'));_0x1139b9(_0x5a59e5[_0x1129('0x2d')][_0x1129('0x2c')]);}})[_0x1129('0x2e')](function(_0xe533eb){logger[_0x1129('0x29')]('ChatMessage,\x20%s,\x20%s',_0x1c2368,_0xe533eb);_0x5639ce(_0xe533eb);});});}function respondWithStatusCode(_0x4474f7,_0x2442ad){_0x2442ad=_0x2442ad||0xcc;return function(_0x6d587f){if(_0x6d587f){return _0x4474f7[_0x1129('0x2f')](_0x2442ad);}return _0x4474f7[_0x1129('0x30')](_0x2442ad)[_0x1129('0x31')]();};}function respondWithResult(_0x494119,_0x2a5508){_0x2a5508=_0x2a5508||0xc8;return function(_0x528a37){if(_0x528a37){return _0x494119['status'](_0x2a5508)['json'](_0x528a37);}};}function respondWithFilteredResult(_0x152236,_0x19e05f){return function(_0x1240bf){if(_0x1240bf){var _0x1f1200=_0x1240bf['count'],_0x29f215=_0x19e05f[_0x1129('0x32')],_0x3972c8=_0x19e05f[_0x1129('0x32')]+_0x19e05f['limit'],_0x2a4403;if(_0x3972c8>=_0x1f1200){_0x3972c8=_0x1f1200;_0x2a4403=0xc8;}else{_0x2a4403=0xce;}_0x152236[_0x1129('0x30')](_0x2a4403);return _0x152236[_0x1129('0x33')](_0x1129('0x34'),_0x29f215+'-'+_0x3972c8+'/'+_0x1f1200)[_0x1129('0x35')](_0x1240bf);}return null;};}function patchUpdates(_0x3e735f){return function(_0x1e252e){try{jsonpatch[_0x1129('0x36')](_0x1e252e,_0x3e735f,!![]);}catch(_0xf08996){return BPromise[_0x1129('0x37')](_0xf08996);}return _0x1e252e[_0x1129('0x38')]();};}function saveUpdates(_0x1d9e17,_0x463db2){return function(_0x28c711){if(_0x28c711){return _0x28c711[_0x1129('0x39')](_0x1d9e17)[_0x1129('0x24')](function(_0x3e11c6){return _0x3e11c6;});}return null;};}function removeEntity(_0x4087f3,_0x320260){return function(_0x15e160){if(_0x15e160){return _0x15e160[_0x1129('0x3a')]()['then'](function(){_0x4087f3[_0x1129('0x30')](0xcc)[_0x1129('0x31')]();});}};}function handleEntityNotFound(_0x256136,_0x30869b){return function(_0x801813){if(!_0x801813){_0x256136[_0x1129('0x2f')](0x194);}return _0x801813;};}function handleError(_0x3f64fc,_0x3f57bb){_0x3f57bb=_0x3f57bb||0x1f4;return function(_0x5650ab){logger['error'](_0x5650ab[_0x1129('0x3b')]);if(_0x5650ab[_0x1129('0x3c')]){delete _0x5650ab[_0x1129('0x3c')];}_0x3f64fc[_0x1129('0x30')](_0x3f57bb)['send'](_0x5650ab);};}exports[_0x1129('0x3d')]=function(_0x1429a0,_0x3c7fb0){var _0x2a3dad={},_0x1873b3={},_0x1540f1={'count':0x0,'rows':[]};var _0x1215b2=_[_0x1129('0x3e')](db[_0x1129('0x3f')][_0x1129('0x40')],function(_0xa79c63){return{'name':_0xa79c63[_0x1129('0x41')],'type':_0xa79c63[_0x1129('0x42')][_0x1129('0x43')]};});_0x1873b3[_0x1129('0x44')]=_[_0x1129('0x3e')](_0x1215b2,_0x1129('0x3c'));_0x1873b3[_0x1129('0x45')]=_[_0x1129('0x46')](_0x1429a0[_0x1129('0x45')]);_0x1873b3[_0x1129('0x47')]=_['intersection'](_0x1873b3[_0x1129('0x44')],_0x1873b3[_0x1129('0x45')]);_0x2a3dad[_0x1129('0x48')]=_['intersection'](_0x1873b3['model'],qs[_0x1129('0x49')](_0x1429a0['query'][_0x1129('0x49')]));_0x2a3dad[_0x1129('0x48')]=_0x2a3dad['attributes']['length']?_0x2a3dad[_0x1129('0x48')]:_0x1873b3[_0x1129('0x44')];if(!_0x1429a0[_0x1129('0x45')][_0x1129('0x4a')]('nolimit')){_0x2a3dad[_0x1129('0x4b')]=qs[_0x1129('0x4b')](_0x1429a0[_0x1129('0x45')]['limit']);_0x2a3dad[_0x1129('0x32')]=qs['offset'](_0x1429a0[_0x1129('0x45')]['offset']);}_0x2a3dad['order']=qs[_0x1129('0x4c')](_0x1429a0[_0x1129('0x45')][_0x1129('0x4c')]);_0x2a3dad[_0x1129('0x4d')]=qs[_0x1129('0x47')](_[_0x1129('0x4e')](_0x1429a0[_0x1129('0x45')],_0x1873b3[_0x1129('0x47')]),_0x1215b2);if(_0x1429a0['query'][_0x1129('0x4f')]){_0x2a3dad[_0x1129('0x4d')]=_['merge'](_0x2a3dad['where'],{'$or':_[_0x1129('0x3e')](_0x1215b2,function(_0x677505){if(_0x677505['type']!==_0x1129('0x50')){var _0x5a27c6={};_0x5a27c6[_0x677505[_0x1129('0x3c')]]={'$like':'%'+_0x1429a0[_0x1129('0x45')][_0x1129('0x4f')]+'%'};return _0x5a27c6;}})});}_0x2a3dad=_[_0x1129('0x51')]({},_0x2a3dad,_0x1429a0[_0x1129('0x52')]);var _0x4a3109={'where':_0x2a3dad['where']};return db['ChatMessage'][_0x1129('0x53')](_0x4a3109)[_0x1129('0x24')](function(_0x2aa330){_0x1540f1[_0x1129('0x53')]=_0x2aa330;if(_0x1429a0[_0x1129('0x45')][_0x1129('0x54')]){_0x2a3dad[_0x1129('0x55')]=[{'all':!![]}];}return db[_0x1129('0x3f')][_0x1129('0x56')](_0x2a3dad);})[_0x1129('0x24')](function(_0x27b088){_0x1540f1[_0x1129('0x57')]=_0x27b088;return _0x1540f1;})[_0x1129('0x24')](respondWithFilteredResult(_0x3c7fb0,_0x2a3dad))['catch'](handleError(_0x3c7fb0,null));};exports[_0x1129('0x58')]=function(_0x333bbe,_0x291d16){var _0x65cd85={'raw':!![],'where':{'id':_0x333bbe['params']['id']}},_0x56659d={};_0x56659d[_0x1129('0x44')]=_[_0x1129('0x46')](db[_0x1129('0x3f')][_0x1129('0x40')]);_0x56659d[_0x1129('0x45')]=_[_0x1129('0x46')](_0x333bbe[_0x1129('0x45')]);_0x56659d[_0x1129('0x47')]=_[_0x1129('0x59')](_0x56659d[_0x1129('0x44')],_0x56659d['query']);_0x65cd85[_0x1129('0x48')]=_['intersection'](_0x56659d[_0x1129('0x44')],qs[_0x1129('0x49')](_0x333bbe['query'][_0x1129('0x49')]));_0x65cd85[_0x1129('0x48')]=_0x65cd85['attributes']['length']?_0x65cd85[_0x1129('0x48')]:_0x56659d['model'];if(_0x333bbe[_0x1129('0x45')][_0x1129('0x54')]){_0x65cd85[_0x1129('0x55')]=[{'all':!![]}];}_0x65cd85=_['merge']({},_0x65cd85,_0x333bbe[_0x1129('0x52')]);return db['ChatMessage'][_0x1129('0x5a')](_0x65cd85)['then'](handleEntityNotFound(_0x291d16,null))[_0x1129('0x24')](respondWithResult(_0x291d16,null))[_0x1129('0x2e')](handleError(_0x291d16,null));};exports[_0x1129('0x5b')]=function(_0x41472d,_0x9be90b){return db[_0x1129('0x3f')][_0x1129('0x5b')](_0x41472d[_0x1129('0x5c')],{})['then'](respondWithResult(_0x9be90b,0xc9))[_0x1129('0x2e')](handleError(_0x9be90b,null));};exports['update']=function(_0x420cba,_0x284da4){if(_0x420cba['body']['id']){delete _0x420cba[_0x1129('0x5c')]['id'];}return db[_0x1129('0x3f')]['find']({'where':{'id':_0x420cba[_0x1129('0x5d')]['id']}})['then'](handleEntityNotFound(_0x284da4,null))[_0x1129('0x24')](saveUpdates(_0x420cba[_0x1129('0x5c')],null))[_0x1129('0x24')](respondWithResult(_0x284da4,null))[_0x1129('0x2e')](handleError(_0x284da4,null));};exports[_0x1129('0x3a')]=function(_0x4f1bda,_0x290b23){return db[_0x1129('0x3f')][_0x1129('0x5a')]({'where':{'id':_0x4f1bda['params']['id']}})[_0x1129('0x24')](handleEntityNotFound(_0x290b23,null))[_0x1129('0x24')](removeEntity(_0x290b23,null))[_0x1129('0x2e')](handleError(_0x290b23,null));};exports['describe']=function(_0x537816,_0x16723e){return db[_0x1129('0x3f')]['describe']()[_0x1129('0x24')](respondWithResult(_0x16723e,null))[_0x1129('0x2e')](handleError(_0x16723e,null));};var interaction_log=require(_0x1129('0x14'))('chat-interactions');exports[_0x1129('0x5e')]=function(_0x261945,_0x43a17c,_0x58c97c){var _0x503046={'channel':_0x1129('0x5f')};if(_0x261945[_0x1129('0x5c')]['id']){delete _0x261945['body']['id'];}_0x261945[_0x1129('0x5c')]['read']=!![];_0x261945[_0x1129('0x5c')][_0x1129('0x60')]=moment()['format'](_0x1129('0x61'));_0x261945[_0x1129('0x5c')][_0x1129('0x62')]=_0x261945[_0x1129('0x5c')]['UserId']||_0x261945['user']['id'];return db[_0x1129('0x3f')][_0x1129('0x5a')]({'where':{'id':_0x261945[_0x1129('0x5d')]['id'],'UserId':null},'include':[{'model':db[_0x1129('0x63')],'as':_0x1129('0x64')}]})[_0x1129('0x24')](handleEntityNotFound(_0x43a17c,null))[_0x1129('0x24')](saveUpdates(_0x261945[_0x1129('0x5c')],null))['then'](function(_0x324d55){if(_0x324d55){_0x503046['message']=_0x324d55[_0x1129('0x65')]({'plain':!![]});return db[_0x1129('0x66')][_0x1129('0x5a')]({'where':{'id':_0x324d55[_0x1129('0x67')]}});}return null;})['then'](handleEntityNotFound(_0x43a17c,null))[_0x1129('0x24')](function(_0x37ca63){if(_0x37ca63){return _0x37ca63[_0x1129('0x39')]({'UserId':_0x261945[_0x1129('0x5c')][_0x1129('0x62')],'read1stAt':_[_0x1129('0x68')](_0x37ca63[_0x1129('0x69')])?moment()[_0x1129('0x6a')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0x1129('0x24')](function(_0x44bb8b){if(_0x44bb8b){_0x503046[_0x1129('0x6b')]=_0x44bb8b[_0x1129('0x65')]({'plain':!![]});interaction_log[_0x1129('0x25')]('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x261945[_0x1129('0x6c')]['id'],_0x261945[_0x1129('0x6c')][_0x1129('0x3c')],_0x261945[_0x1129('0x6c')][_0x1129('0x6d')],_0x503046[_0x1129('0x6b')]['id'],_0x261945['body']?JSON[_0x1129('0x6e')](_0x261945['body']):_0x1129('0x6f'));return respondWithRpcPromise(_0x1129('0x70'),_0x1129('0x71'),_0x503046);}return null;})[_0x1129('0x24')](function(_0x70a7d4){if(_0x70a7d4){if(_0x261945[_0x1129('0x5c')]['manual']){_0x503046[_0x1129('0x2c')][_0x1129('0x72')]=util['format'](_0x1129('0x73'),_0x261945[_0x1129('0x6c')]['name']);_0x503046[_0x1129('0x2c')][_0x1129('0x74')]=_0x503046[_0x1129('0x74')];_0x503046[_0x1129('0x2c')][_0x1129('0x75')]='accept';return respondWithRpcPromise(_0x1129('0x76'),_0x1129('0x76'),{'event':_0x1129('0x77'),'message':_[_0x1129('0x51')](_0x503046[_0x1129('0x2c')],JSON[_0x1129('0x78')](_0x503046['interaction'][_0x1129('0x79')]))},client9002)[_0x1129('0x24')](function(){return _0x503046;});}return _0x503046;}return null;})[_0x1129('0x24')](respondWithResult(_0x43a17c,null))[_0x1129('0x2e')](handleError(_0x43a17c,null));};var interaction_log=require('../../config/logger')(_0x1129('0x7a'));exports[_0x1129('0x37')]=function(_0xb038e9,_0x126fe2,_0x5ad002){var _0x532659={'agent':{},'channel':_0x1129('0x5f')};if(_0xb038e9[_0x1129('0x5c')]['id']){delete _0xb038e9[_0x1129('0x5c')]['id'];}_0xb038e9[_0x1129('0x5c')]['UserId']=_0xb038e9[_0x1129('0x5c')][_0x1129('0x62')]||_0xb038e9[_0x1129('0x6c')]['id'];_0x532659[_0x1129('0x7b')]['id']=_0xb038e9['body'][_0x1129('0x62')];return db[_0x1129('0x3f')][_0x1129('0x5a')]({'where':{'id':_0xb038e9[_0x1129('0x5d')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x126fe2,null))[_0x1129('0x24')](function(_0x508ffe){if(_0x508ffe){_0x532659[_0x1129('0x2c')]=_0x508ffe[_0x1129('0x65')]({'plain':!![]});return db[_0x1129('0x66')][_0x1129('0x5a')]({'where':{'id':_0x508ffe[_0x1129('0x67')]}});}return null;})[_0x1129('0x24')](handleEntityNotFound(_0x126fe2,null))[_0x1129('0x24')](function(_0x1f357a){if(_0x1f357a){_0x532659['interaction']=_0x1f357a[_0x1129('0x65')]({'plain':!![]});interaction_log['info']('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0xb038e9[_0x1129('0x6c')]['id'],_0xb038e9['user'][_0x1129('0x3c')],_0xb038e9[_0x1129('0x6c')][_0x1129('0x6d')],_0x532659[_0x1129('0x6b')]['id'],_0xb038e9[_0x1129('0x5c')]?JSON['stringify'](_0xb038e9[_0x1129('0x5c')]):_0x1129('0x6f'));return respondWithRpcPromise('RejectMessage','rejectMessage',_0x532659);}return null;})[_0x1129('0x24')](function(_0x5c117d){if(_0x5c117d){_0x5c117d[_0x1129('0x2c')]['interface']=util['format']('SIP/%s',_0xb038e9[_0x1129('0x6c')][_0x1129('0x3c')]);_0x5c117d[_0x1129('0x2c')][_0x1129('0x74')]=_0x532659[_0x1129('0x74')];_0x5c117d[_0x1129('0x2c')]['event']=_0x1129('0x37');respondWithRpcPromise(_0x1129('0x76'),_0x1129('0x76'),{'event':_0x1129('0x7c'),'message':_0x5c117d[_0x1129('0x2c')]},client9002);return _0x532659;}return null;})[_0x1129('0x24')](respondWithResult(_0x126fe2,null))[_0x1129('0x2e')](handleError(_0x126fe2,null));};
\ No newline at end of file
+var _0xce13=['register','jayson/promise','client','http','request','then','info','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','ChatMessage,\x20%s,\x20%s','message','result','catch','sendStatus','status','offset','undefined','count','limit','Content-Range','json','apply','reject','save','update','destroy','stack','send','index','map','ChatMessage','rawAttributes','fieldName','type','key','model','name','query','keys','filters','attributes','intersection','fields','hasOwnProperty','nolimit','order','sort','where','filter','merge','VIRTUAL','options','includeAll','include','findAll','params','length','create','body','find','describe','chat','read','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','get','ChatInteraction','isNil','read1stAt','interaction','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','sequelize','Sequelize','SELECT','contact','User','internal','manual','channel','motionChannel','event','accept','EventManager','acceptmessage','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','RejectMessage','ContactId','QueryTypes','fullname','email','rejectmessage','parse','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','path','to-csv','ejs','fs-extra','lodash','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/license/util','redis','socket.io-emitter','./chatMessage.socket'];(function(_0x486f4a,_0x478dc7){var _0x135d99=function(_0x434008){while(--_0x434008){_0x486f4a['push'](_0x486f4a['shift']());}};_0x135d99(++_0x478dc7);}(_0xce13,0xe3));var _0x3ce1=function(_0x195723,_0x1c0d7b){_0x195723=_0x195723-0x0;var _0x271c4b=_0xce13[_0x195723];return _0x271c4b;};'use strict';var emlformat=require(_0x3ce1('0x0'));var rimraf=require(_0x3ce1('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x3ce1('0x2'));var rp=require(_0x3ce1('0x3'));var moment=require(_0x3ce1('0x4'));var BPromise=require(_0x3ce1('0x5'));var Mustache=require(_0x3ce1('0x6'));var util=require('util');var path=require(_0x3ce1('0x7'));var sox=require('sox');var csv=require(_0x3ce1('0x8'));var ejs=require(_0x3ce1('0x9'));var fs=require('fs');var fs_extra=require(_0x3ce1('0xa'));var _=require(_0x3ce1('0xb'));var squel=require('squel');var crypto=require(_0x3ce1('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x3ce1('0xd'));var toCsv=require(_0x3ce1('0x8'));var querystring=require('querystring');var Papa=require(_0x3ce1('0xe'));var Redis=require(_0x3ce1('0xf'));var authService=require(_0x3ce1('0x10'));var qs=require(_0x3ce1('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x3ce1('0x12'));var logger=require(_0x3ce1('0x13'))(_0x3ce1('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x3ce1('0x15'));var db=require('../../mysqldb')['db'];config['redis']=_['defaults'](config[_0x3ce1('0x16')],{'host':'localhost','port':0x18eb});var socket=require(_0x3ce1('0x17'))(new Redis(config[_0x3ce1('0x16')]));require(_0x3ce1('0x18'))[_0x3ce1('0x19')](socket);var jayson=require(_0x3ce1('0x1a'));var client=jayson[_0x3ce1('0x1b')]['http']({'port':0x232c});var client9002=jayson[_0x3ce1('0x1b')][_0x3ce1('0x1c')]({'port':0x232a});function respondWithRpcPromise(_0x266ed1,_0x78504c,_0xcb2096,_0x381d39){return new BPromise(function(_0xf3170b,_0x358c0b){var _0x47b9b2=_0x381d39||client;return _0x47b9b2[_0x3ce1('0x1d')](_0x266ed1,_0xcb2096)[_0x3ce1('0x1e')](function(_0x50f840){logger[_0x3ce1('0x1f')]('ChatMessage,\x20%s,\x20%s',_0x78504c,_0x3ce1('0x20'));logger[_0x3ce1('0x21')](_0x3ce1('0x22'),_0x78504c,_0x3ce1('0x20'),JSON[_0x3ce1('0x23')](_0x50f840));if(_0x50f840[_0x3ce1('0x24')]){if(_0x50f840[_0x3ce1('0x24')]['code']===0x1f4){logger['error']('ChatMessage,\x20%s,\x20%s',_0x78504c,_0x50f840['error']['message']);return _0x358c0b(_0x50f840['error']['message']);}logger[_0x3ce1('0x24')](_0x3ce1('0x25'),_0x78504c,_0x50f840[_0x3ce1('0x24')][_0x3ce1('0x26')]);return _0xf3170b(_0x50f840[_0x3ce1('0x24')][_0x3ce1('0x26')]);}else{logger[_0x3ce1('0x1f')](_0x3ce1('0x25'),_0x78504c,_0x3ce1('0x20'));_0xf3170b(_0x50f840[_0x3ce1('0x27')]['message']);}})[_0x3ce1('0x28')](function(_0x1fc0f0){logger['error'](_0x3ce1('0x25'),_0x78504c,_0x1fc0f0);_0x358c0b(_0x1fc0f0);});});}function respondWithStatusCode(_0x42afb5,_0x33dddc){_0x33dddc=_0x33dddc||0xcc;return function(_0x32697c){if(_0x32697c){return _0x42afb5[_0x3ce1('0x29')](_0x33dddc);}return _0x42afb5[_0x3ce1('0x2a')](_0x33dddc)['end']();};}function respondWithResult(_0x57b5c4,_0x54db38){_0x54db38=_0x54db38||0xc8;return function(_0x21fe12){if(_0x21fe12){return _0x57b5c4['status'](_0x54db38)['json'](_0x21fe12);}};}function respondWithFilteredResult(_0x53aa1,_0x5c61c9){return function(_0x3e2dba){if(_0x3e2dba){var _0x327a77=typeof _0x5c61c9[_0x3ce1('0x2b')]===_0x3ce1('0x2c')&&typeof _0x5c61c9['limit']===_0x3ce1('0x2c');var _0x479086=_0x3e2dba[_0x3ce1('0x2d')];var _0x532f4b=_0x327a77?0x0:_0x5c61c9['offset'];var _0x3e96af=_0x327a77?_0x3e2dba[_0x3ce1('0x2d')]:_0x5c61c9[_0x3ce1('0x2b')]+_0x5c61c9[_0x3ce1('0x2e')];var _0x507f0a;if(_0x3e96af>=_0x479086){_0x3e96af=_0x479086;_0x507f0a=0xc8;}else{_0x507f0a=0xce;}_0x53aa1['status'](_0x507f0a);return _0x53aa1['set'](_0x3ce1('0x2f'),_0x532f4b+'-'+_0x3e96af+'/'+_0x479086)[_0x3ce1('0x30')](_0x3e2dba);}return null;};}function patchUpdates(_0x2bf4e5){return function(_0x5e6a4e){try{jsonpatch[_0x3ce1('0x31')](_0x5e6a4e,_0x2bf4e5,!![]);}catch(_0x310615){return BPromise[_0x3ce1('0x32')](_0x310615);}return _0x5e6a4e[_0x3ce1('0x33')]();};}function saveUpdates(_0x1eb000,_0x3513dd){return function(_0x154a7a){if(_0x154a7a){return _0x154a7a[_0x3ce1('0x34')](_0x1eb000)[_0x3ce1('0x1e')](function(_0x53a7ab){return _0x53a7ab;});}return null;};}function removeEntity(_0x5d8fa6,_0x37d8c6){return function(_0xe3aea4){if(_0xe3aea4){return _0xe3aea4[_0x3ce1('0x35')]()[_0x3ce1('0x1e')](function(){_0x5d8fa6[_0x3ce1('0x2a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x532ef7,_0x9b3268){return function(_0x2ee8a0){if(!_0x2ee8a0){_0x532ef7[_0x3ce1('0x29')](0x194);}return _0x2ee8a0;};}function handleError(_0xb87344,_0x2a1ab6){_0x2a1ab6=_0x2a1ab6||0x1f4;return function(_0x26a608){logger[_0x3ce1('0x24')](_0x26a608[_0x3ce1('0x36')]);if(_0x26a608['name']){delete _0x26a608['name'];}_0xb87344[_0x3ce1('0x2a')](_0x2a1ab6)[_0x3ce1('0x37')](_0x26a608);};}exports[_0x3ce1('0x38')]=function(_0x75d92f,_0x457c14){var _0x1e0055={},_0x160e72={},_0x3f4caa={'count':0x0,'rows':[]};var _0x2be0d3=_[_0x3ce1('0x39')](db[_0x3ce1('0x3a')][_0x3ce1('0x3b')],function(_0x3b166d){return{'name':_0x3b166d[_0x3ce1('0x3c')],'type':_0x3b166d[_0x3ce1('0x3d')][_0x3ce1('0x3e')]};});_0x160e72[_0x3ce1('0x3f')]=_[_0x3ce1('0x39')](_0x2be0d3,_0x3ce1('0x40'));_0x160e72[_0x3ce1('0x41')]=_[_0x3ce1('0x42')](_0x75d92f['query']);_0x160e72[_0x3ce1('0x43')]=_['intersection'](_0x160e72[_0x3ce1('0x3f')],_0x160e72['query']);_0x1e0055[_0x3ce1('0x44')]=_[_0x3ce1('0x45')](_0x160e72['model'],qs[_0x3ce1('0x46')](_0x75d92f[_0x3ce1('0x41')][_0x3ce1('0x46')]));_0x1e0055[_0x3ce1('0x44')]=_0x1e0055[_0x3ce1('0x44')]['length']?_0x1e0055['attributes']:_0x160e72[_0x3ce1('0x3f')];if(!_0x75d92f[_0x3ce1('0x41')][_0x3ce1('0x47')](_0x3ce1('0x48'))){_0x1e0055['limit']=qs['limit'](_0x75d92f['query']['limit']);_0x1e0055[_0x3ce1('0x2b')]=qs[_0x3ce1('0x2b')](_0x75d92f[_0x3ce1('0x41')]['offset']);}_0x1e0055[_0x3ce1('0x49')]=qs['sort'](_0x75d92f[_0x3ce1('0x41')][_0x3ce1('0x4a')]);_0x1e0055[_0x3ce1('0x4b')]=qs['filters'](_['pick'](_0x75d92f[_0x3ce1('0x41')],_0x160e72[_0x3ce1('0x43')]),_0x2be0d3);if(_0x75d92f[_0x3ce1('0x41')][_0x3ce1('0x4c')]){_0x1e0055['where']=_[_0x3ce1('0x4d')](_0x1e0055['where'],{'$or':_[_0x3ce1('0x39')](_0x2be0d3,function(_0x4b0a9d){if(_0x4b0a9d[_0x3ce1('0x3d')]!==_0x3ce1('0x4e')){var _0x514b46={};_0x514b46[_0x4b0a9d[_0x3ce1('0x40')]]={'$like':'%'+_0x75d92f[_0x3ce1('0x41')][_0x3ce1('0x4c')]+'%'};return _0x514b46;}})});}_0x1e0055=_['merge']({},_0x1e0055,_0x75d92f[_0x3ce1('0x4f')]);var _0x984314={'where':_0x1e0055[_0x3ce1('0x4b')]};return db[_0x3ce1('0x3a')][_0x3ce1('0x2d')](_0x984314)[_0x3ce1('0x1e')](function(_0x33ddc0){_0x3f4caa[_0x3ce1('0x2d')]=_0x33ddc0;if(_0x75d92f['query'][_0x3ce1('0x50')]){_0x1e0055[_0x3ce1('0x51')]=[{'all':!![]}];}return db[_0x3ce1('0x3a')][_0x3ce1('0x52')](_0x1e0055);})[_0x3ce1('0x1e')](function(_0x5526da){_0x3f4caa['rows']=_0x5526da;return _0x3f4caa;})[_0x3ce1('0x1e')](respondWithFilteredResult(_0x457c14,_0x1e0055))[_0x3ce1('0x28')](handleError(_0x457c14,null));};exports['show']=function(_0x206805,_0x4d57c2){var _0x43354e={'raw':!![],'where':{'id':_0x206805[_0x3ce1('0x53')]['id']}},_0x17c99b={};_0x17c99b[_0x3ce1('0x3f')]=_['keys'](db[_0x3ce1('0x3a')][_0x3ce1('0x3b')]);_0x17c99b[_0x3ce1('0x41')]=_[_0x3ce1('0x42')](_0x206805['query']);_0x17c99b[_0x3ce1('0x43')]=_['intersection'](_0x17c99b[_0x3ce1('0x3f')],_0x17c99b['query']);_0x43354e[_0x3ce1('0x44')]=_[_0x3ce1('0x45')](_0x17c99b[_0x3ce1('0x3f')],qs['fields'](_0x206805['query']['fields']));_0x43354e[_0x3ce1('0x44')]=_0x43354e['attributes'][_0x3ce1('0x54')]?_0x43354e[_0x3ce1('0x44')]:_0x17c99b['model'];if(_0x206805[_0x3ce1('0x41')]['includeAll']){_0x43354e[_0x3ce1('0x51')]=[{'all':!![]}];}_0x43354e=_[_0x3ce1('0x4d')]({},_0x43354e,_0x206805[_0x3ce1('0x4f')]);return db['ChatMessage']['find'](_0x43354e)[_0x3ce1('0x1e')](handleEntityNotFound(_0x4d57c2,null))[_0x3ce1('0x1e')](respondWithResult(_0x4d57c2,null))['catch'](handleError(_0x4d57c2,null));};exports[_0x3ce1('0x55')]=function(_0x540d6a,_0x15e0be){return db[_0x3ce1('0x3a')][_0x3ce1('0x55')](_0x540d6a['body'],{})[_0x3ce1('0x1e')](respondWithResult(_0x15e0be,0xc9))[_0x3ce1('0x28')](handleError(_0x15e0be,null));};exports['update']=function(_0x47ac87,_0x4c0095){if(_0x47ac87['body']['id']){delete _0x47ac87[_0x3ce1('0x56')]['id'];}return db[_0x3ce1('0x3a')][_0x3ce1('0x57')]({'where':{'id':_0x47ac87[_0x3ce1('0x53')]['id']}})[_0x3ce1('0x1e')](handleEntityNotFound(_0x4c0095,null))[_0x3ce1('0x1e')](saveUpdates(_0x47ac87['body'],null))['then'](respondWithResult(_0x4c0095,null))[_0x3ce1('0x28')](handleError(_0x4c0095,null));};exports[_0x3ce1('0x35')]=function(_0x410d1a,_0x34b2af){return db[_0x3ce1('0x3a')][_0x3ce1('0x57')]({'where':{'id':_0x410d1a[_0x3ce1('0x53')]['id']}})[_0x3ce1('0x1e')](handleEntityNotFound(_0x34b2af,null))[_0x3ce1('0x1e')](removeEntity(_0x34b2af,null))['catch'](handleError(_0x34b2af,null));};exports[_0x3ce1('0x58')]=function(_0x3d8e87,_0x3e3afb){return db['ChatMessage']['describe']()[_0x3ce1('0x1e')](respondWithResult(_0x3e3afb,null))['catch'](handleError(_0x3e3afb,null));};var interaction_log=require(_0x3ce1('0x13'))('chat-interactions');exports['accept']=function(_0x1013aa,_0x23a82a,_0x5138f6){var _0x594d52={'agent':{},'channel':_0x3ce1('0x59')};if(_0x1013aa[_0x3ce1('0x56')]['id']){delete _0x1013aa[_0x3ce1('0x56')]['id'];}_0x1013aa[_0x3ce1('0x56')][_0x3ce1('0x5a')]=!![];_0x1013aa[_0x3ce1('0x56')]['readAt']=moment()['format'](_0x3ce1('0x5b'));_0x1013aa['body']['UserId']=_0x1013aa[_0x3ce1('0x56')][_0x3ce1('0x5c')]||_0x1013aa[_0x3ce1('0x5d')]['id'];_0x594d52[_0x3ce1('0x5e')]['id']=_0x1013aa['body'][_0x3ce1('0x5c')];return db[_0x3ce1('0x3a')][_0x3ce1('0x57')]({'where':{'id':_0x1013aa['params']['id'],'UserId':null}})['then'](handleEntityNotFound(_0x23a82a,null))[_0x3ce1('0x1e')](saveUpdates(_0x1013aa['body'],null))[_0x3ce1('0x1e')](function(_0x4412ae){if(_0x4412ae){_0x594d52['message']=_0x4412ae[_0x3ce1('0x5f')]({'plain':!![]});return db[_0x3ce1('0x60')][_0x3ce1('0x57')]({'where':{'id':_0x4412ae['ChatInteractionId']}});}return null;})[_0x3ce1('0x1e')](handleEntityNotFound(_0x23a82a,null))[_0x3ce1('0x1e')](function(_0x2971e2){if(_0x2971e2){return _0x2971e2[_0x3ce1('0x34')]({'UserId':_0x1013aa[_0x3ce1('0x56')][_0x3ce1('0x5c')],'read1stAt':_[_0x3ce1('0x61')](_0x2971e2[_0x3ce1('0x62')])?moment()['format'](_0x3ce1('0x5b')):undefined});}return null;})[_0x3ce1('0x1e')](function(_0x4a743a){if(_0x4a743a){_0x594d52[_0x3ce1('0x63')]=_0x4a743a[_0x3ce1('0x5f')]({'plain':!![]});interaction_log['info'](_0x3ce1('0x64'),_0x1013aa[_0x3ce1('0x5d')]['id'],_0x1013aa[_0x3ce1('0x5d')]['name'],_0x1013aa[_0x3ce1('0x5d')]['role'],_0x594d52[_0x3ce1('0x63')]['id'],_0x1013aa[_0x3ce1('0x56')]?JSON[_0x3ce1('0x23')](_0x1013aa[_0x3ce1('0x56')]):_0x3ce1('0x65'));return respondWithRpcPromise('AcceptMessage',_0x3ce1('0x66'),_0x594d52);}return null;})['then'](function(_0x3e8791){var _0x30dbfb=_0x3ce1('0x67')+_0x3e8791[_0x3ce1('0x26')]['ContactId'];return db[_0x3ce1('0x68')][_0x3ce1('0x41')](_0x30dbfb,{'type':db[_0x3ce1('0x69')]['QueryTypes'][_0x3ce1('0x6a')],'raw':!![]})[_0x3ce1('0x1e')](function(_0x12add2){return _0x12add2;});})[_0x3ce1('0x1e')](function(_0x3444e2){if(_0x3444e2){_0x594d52[_0x3ce1('0x26')][_0x3ce1('0x6b')]=_0x3444e2[0x0];if(!_0x1013aa[_0x3ce1('0x56')][_0x3ce1('0x5c')])return;return db[_0x3ce1('0x6c')][_0x3ce1('0x57')]({'where':{'id':_0x1013aa[_0x3ce1('0x56')][_0x3ce1('0x5c')],'role':'agent'},'attributes':['id','name','fullname','email',_0x3ce1('0x6d')],'raw':!![]});}return null;})['then'](function(_0x2c98e4){if(!_0x2c98e4)return null;_0x594d52['message'][_0x3ce1('0x5e')]=_0x2c98e4;return _0x594d52;})[_0x3ce1('0x1e')](function(_0xeb1996){if(_0xeb1996){if(_0x1013aa[_0x3ce1('0x56')][_0x3ce1('0x6e')]){_0x594d52['message']['interface']=util['format']('SIP/%s',_0x1013aa[_0x3ce1('0x5d')]['name']);_0x594d52[_0x3ce1('0x26')][_0x3ce1('0x6f')]=_0x594d52['channel'];_0x594d52[_0x3ce1('0x26')][_0x3ce1('0x70')]=_0x594d52[_0x3ce1('0x6f')];_0x594d52[_0x3ce1('0x26')][_0x3ce1('0x71')]=_0x3ce1('0x72');return respondWithRpcPromise(_0x3ce1('0x73'),_0x3ce1('0x73'),{'event':_0x3ce1('0x74'),'message':_[_0x3ce1('0x4d')](_0x594d52[_0x3ce1('0x26')],JSON['parse'](_0x594d52[_0x3ce1('0x63')]['formData']))},client9002)['then'](function(){return _0x594d52;});}return _0x594d52;}return null;})['then'](respondWithResult(_0x23a82a,null))['catch'](handleError(_0x23a82a,null));};var interaction_log=require(_0x3ce1('0x13'))('chat-interactions');exports[_0x3ce1('0x32')]=function(_0x365595,_0x573433,_0x4f91a7){var _0x42999f={'agent':{},'channel':'chat'};if(_0x365595[_0x3ce1('0x56')]['id']){delete _0x365595[_0x3ce1('0x56')]['id'];}_0x365595[_0x3ce1('0x56')]['UserId']=_0x365595[_0x3ce1('0x56')]['UserId']||_0x365595[_0x3ce1('0x5d')]['id'];_0x42999f['agent']['id']=_0x365595['body'][_0x3ce1('0x5c')];return db[_0x3ce1('0x3a')][_0x3ce1('0x57')]({'where':{'id':_0x365595[_0x3ce1('0x53')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x573433,null))[_0x3ce1('0x1e')](function(_0x181aeb){if(_0x181aeb){_0x42999f[_0x3ce1('0x26')]=_0x181aeb[_0x3ce1('0x5f')]({'plain':!![]});return db[_0x3ce1('0x60')][_0x3ce1('0x57')]({'where':{'id':_0x181aeb['ChatInteractionId']}});}return null;})[_0x3ce1('0x1e')](handleEntityNotFound(_0x573433,null))[_0x3ce1('0x1e')](function(_0x4a0aef){if(_0x4a0aef){_0x42999f[_0x3ce1('0x63')]=_0x4a0aef[_0x3ce1('0x5f')]({'plain':!![]});interaction_log['info'](_0x3ce1('0x75'),_0x365595[_0x3ce1('0x5d')]['id'],_0x365595[_0x3ce1('0x5d')][_0x3ce1('0x40')],_0x365595[_0x3ce1('0x5d')][_0x3ce1('0x76')],_0x42999f[_0x3ce1('0x63')]['id'],_0x365595[_0x3ce1('0x56')]?JSON[_0x3ce1('0x23')](_0x365595[_0x3ce1('0x56')]):_0x3ce1('0x65'));return respondWithRpcPromise(_0x3ce1('0x77'),'rejectMessage',_0x42999f);}return null;})[_0x3ce1('0x1e')](function(_0x57cb88){var _0xc7013d=_0x3ce1('0x67')+_0x57cb88[_0x3ce1('0x26')][_0x3ce1('0x78')];return db[_0x3ce1('0x68')][_0x3ce1('0x41')](_0xc7013d,{'type':db['Sequelize'][_0x3ce1('0x79')][_0x3ce1('0x6a')],'raw':!![]})[_0x3ce1('0x1e')](function(_0x458079){return _0x458079;});})[_0x3ce1('0x1e')](function(_0x2eea32){if(_0x2eea32){_0x42999f['message'][_0x3ce1('0x6b')]=_0x2eea32[0x0];if(!_0x365595['body']['UserId'])return;return db[_0x3ce1('0x6c')][_0x3ce1('0x57')]({'where':{'id':_0x365595[_0x3ce1('0x56')][_0x3ce1('0x5c')],'role':_0x3ce1('0x5e')},'attributes':['id',_0x3ce1('0x40'),_0x3ce1('0x7a'),_0x3ce1('0x7b'),_0x3ce1('0x6d')],'raw':!![]});}return null;})[_0x3ce1('0x1e')](function(_0x1af494){if(!_0x1af494)return null;_0x42999f[_0x3ce1('0x26')][_0x3ce1('0x5e')]=_0x1af494;return _0x42999f;})[_0x3ce1('0x1e')](function(_0x562ca3){if(_0x562ca3){_0x562ca3['message']['interface']=util['format']('SIP/%s',_0x365595[_0x3ce1('0x5d')][_0x3ce1('0x40')]);_0x562ca3[_0x3ce1('0x26')][_0x3ce1('0x6f')]=_0x42999f['channel'];_0x562ca3[_0x3ce1('0x26')]['motionChannel']=_0x42999f[_0x3ce1('0x6f')];_0x562ca3[_0x3ce1('0x26')][_0x3ce1('0x71')]=_0x3ce1('0x32');respondWithRpcPromise(_0x3ce1('0x73'),_0x3ce1('0x73'),{'event':_0x3ce1('0x7c'),'message':_[_0x3ce1('0x4d')](_0x42999f[_0x3ce1('0x26')],JSON[_0x3ce1('0x7d')](_0x42999f[_0x3ce1('0x63')]['formData']))},client9002);return _0x42999f;}return null;})[_0x3ce1('0x1e')](respondWithResult(_0x573433,null))[_0x3ce1('0x28')](handleError(_0x573433,null));};
\ No newline at end of file