Built motion from commit 00bf23f6.|2.6.16
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 1bb1684..525a727 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x4244=['socket.io-emitter','register','jayson/promise','client','http','test','Sequelize','request','then','info','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','ChatMessage,\x20%s,\x20%s','message','result','status','end','json','offset','limit','Content-Range','reject','save','update','sendStatus','stack','name','index','ChatMessage','rawAttributes','fieldName','type','key','model','map','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','options','count','includeAll','findAll','rows','catch','params','include','find','create','body','destroy','describe','chat-interactions','accept','chat','read','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','CmContact','Contact','get','ChatInteraction','ChatInteractionId','isNil','read1stAt','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','interaction','AcceptMessage','interface','event','EventManager','acceptmessage','parse','formData','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','null','RejectMessage','rejectMessage','channel','rejectmessage','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','bluebird','mustache','path','ejs','squel','jsforce','desk.js','to-csv','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','redis','localhost'];(function(_0x336ca2,_0x1a813a){var _0xda59a6=function(_0x47caa6){while(--_0x47caa6){_0x336ca2['push'](_0x336ca2['shift']());}};_0xda59a6(++_0x1a813a);}(_0x4244,0x1c5));var _0x4424=function(_0x41911d,_0x4594b7){_0x41911d=_0x41911d-0x0;var _0x468552=_0x4244[_0x41911d];return _0x468552;};'use strict';var pdf=require(_0x4424('0x0'));var emlformat=require(_0x4424('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x4424('0x2'));var jsonpatch=require(_0x4424('0x3'));var rp=require(_0x4424('0x4'));var moment=require('moment');var BPromise=require(_0x4424('0x5'));var Mustache=require(_0x4424('0x6'));var util=require('util');var path=require(_0x4424('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x4424('0x8'));var fs=require('fs');var _=require('lodash');var squel=require(_0x4424('0x9'));var crypto=require('crypto');var jsforce=require(_0x4424('0xa'));var deskjs=require(_0x4424('0xb'));var toCsv=require(_0x4424('0xc'));var querystring=require(_0x4424('0xd'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x4424('0xe'));var qs=require(_0x4424('0xf'));var as=require(_0x4424('0x10'));var hardwareService=require(_0x4424('0x11'));var logger=require(_0x4424('0x12'))(_0x4424('0x13'));var utils=require('../../config/utils');var config=require(_0x4424('0x14'));var db=require('../../mysqldb')['db'];config['redis']=_['defaults'](config[_0x4424('0x15')],{'host':_0x4424('0x16'),'port':0x18eb});var socket=require(_0x4424('0x17'))(new Redis(config[_0x4424('0x15')]));require('./chatMessage.socket')[_0x4424('0x18')](socket);var jayson=require(_0x4424('0x19'));var client=jayson[_0x4424('0x1a')][_0x4424('0x1b')]({'port':0x232c});var client9002=jayson[_0x4424('0x1a')]['http']({'port':0x232a});function checkPasswordPattern(_0x1c5a51,_0x347979,_0x9016d4){if(_0x9016d4){var _0x2f053a=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x2f053a[_0x4424('0x1c')](_0x347979)){return _0x1c5a51;}else{throw new db[(_0x4424('0x1d'))]['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 _0x1c5a51;}}function respondWithRpcPromise(_0x11120d,_0xcdf81e,_0x663d55,_0x3940a7){return new BPromise(function(_0x12d151,_0x327984){var _0xfe78ab=_0x3940a7||client;return _0xfe78ab[_0x4424('0x1e')](_0x11120d,_0x663d55)[_0x4424('0x1f')](function(_0x1073d0){logger[_0x4424('0x20')]('ChatMessage,\x20%s,\x20%s',_0xcdf81e,_0x4424('0x21'));logger[_0x4424('0x22')](_0x4424('0x23'),_0xcdf81e,_0x4424('0x21'),JSON[_0x4424('0x24')](_0x1073d0));if(_0x1073d0['error']){if(_0x1073d0[_0x4424('0x25')]['code']===0x1f4){logger[_0x4424('0x25')](_0x4424('0x26'),_0xcdf81e,_0x1073d0[_0x4424('0x25')][_0x4424('0x27')]);return _0x327984(_0x1073d0[_0x4424('0x25')][_0x4424('0x27')]);}logger[_0x4424('0x25')]('ChatMessage,\x20%s,\x20%s',_0xcdf81e,_0x1073d0[_0x4424('0x25')][_0x4424('0x27')]);return _0x12d151(_0x1073d0[_0x4424('0x25')][_0x4424('0x27')]);}else{logger[_0x4424('0x20')](_0x4424('0x26'),_0xcdf81e,_0x4424('0x21'));_0x12d151(_0x1073d0[_0x4424('0x28')][_0x4424('0x27')]);}})['catch'](function(_0x5174ae){logger[_0x4424('0x25')](_0x4424('0x26'),_0xcdf81e,_0x5174ae);_0x327984(_0x5174ae);});});}function respondWithStatusCode(_0x2980b4,_0x336531){_0x336531=_0x336531||0xcc;return function(_0x3f73c6){if(_0x3f73c6){return _0x2980b4['sendStatus'](_0x336531);}return _0x2980b4[_0x4424('0x29')](_0x336531)[_0x4424('0x2a')]();};}function respondWithResult(_0x471bc5,_0x111d13){_0x111d13=_0x111d13||0xc8;return function(_0x5c92ca){if(_0x5c92ca){return _0x471bc5[_0x4424('0x29')](_0x111d13)[_0x4424('0x2b')](_0x5c92ca);}};}function respondWithFilteredResult(_0x775086,_0x287f08){return function(_0xd937c2){if(_0xd937c2){var _0x1a1f23=_0xd937c2['count'],_0x5cad9e=_0x287f08[_0x4424('0x2c')],_0x4b6b90=_0x287f08[_0x4424('0x2c')]+_0x287f08[_0x4424('0x2d')],_0x3213a2;if(_0x4b6b90>=_0x1a1f23){_0x4b6b90=_0x1a1f23;_0x3213a2=0xc8;}else{_0x3213a2=0xce;}_0x775086[_0x4424('0x29')](_0x3213a2);return _0x775086['set'](_0x4424('0x2e'),_0x5cad9e+'-'+_0x4b6b90+'/'+_0x1a1f23)[_0x4424('0x2b')](_0xd937c2);}return null;};}function patchUpdates(_0x3cb5f8){return function(_0x353985){try{jsonpatch['apply'](_0x353985,_0x3cb5f8,!![]);}catch(_0x18ea19){return BPromise[_0x4424('0x2f')](_0x18ea19);}return _0x353985[_0x4424('0x30')]();};}function saveUpdates(_0x481716,_0x5a448d){return function(_0x1a08b1){if(_0x1a08b1){return _0x1a08b1[_0x4424('0x31')](_0x481716)[_0x4424('0x1f')](function(_0x1272e6){return _0x1272e6;});}return null;};}function removeEntity(_0x46bd56,_0x38c1b7){return function(_0x156940){if(_0x156940){return _0x156940['destroy']()[_0x4424('0x1f')](function(){_0x46bd56[_0x4424('0x29')](0xcc)['end']();});}};}function handleEntityNotFound(_0x506364,_0x5076f6){return function(_0x2ba3e4){if(!_0x2ba3e4){_0x506364[_0x4424('0x32')](0x194);}return _0x2ba3e4;};}function handleError(_0x452e4e,_0x50930e){_0x50930e=_0x50930e||0x1f4;return function(_0x1e2428){logger['error'](_0x1e2428[_0x4424('0x33')]);if(_0x1e2428[_0x4424('0x34')]){delete _0x1e2428['name'];}_0x452e4e[_0x4424('0x29')](_0x50930e)['send'](_0x1e2428);};}exports[_0x4424('0x35')]=function(_0x57b2a4,_0x504b04){var _0x5c86f4={},_0x19f5f6={},_0x51b054={'count':0x0,'rows':[]};var _0x2b2f0c=_['map'](db[_0x4424('0x36')][_0x4424('0x37')],function(_0x176fa1){return{'name':_0x176fa1[_0x4424('0x38')],'type':_0x176fa1[_0x4424('0x39')][_0x4424('0x3a')]};});_0x19f5f6[_0x4424('0x3b')]=_[_0x4424('0x3c')](_0x2b2f0c,_0x4424('0x34'));_0x19f5f6[_0x4424('0x3d')]=_[_0x4424('0x3e')](_0x57b2a4['query']);_0x19f5f6[_0x4424('0x3f')]=_[_0x4424('0x40')](_0x19f5f6[_0x4424('0x3b')],_0x19f5f6['query']);_0x5c86f4[_0x4424('0x41')]=_[_0x4424('0x40')](_0x19f5f6[_0x4424('0x3b')],qs[_0x4424('0x42')](_0x57b2a4[_0x4424('0x3d')]['fields']));_0x5c86f4[_0x4424('0x41')]=_0x5c86f4['attributes'][_0x4424('0x43')]?_0x5c86f4['attributes']:_0x19f5f6[_0x4424('0x3b')];if(!_0x57b2a4[_0x4424('0x3d')][_0x4424('0x44')]('nolimit')){_0x5c86f4[_0x4424('0x2d')]=qs[_0x4424('0x2d')](_0x57b2a4[_0x4424('0x3d')]['limit']);_0x5c86f4['offset']=qs[_0x4424('0x2c')](_0x57b2a4[_0x4424('0x3d')][_0x4424('0x2c')]);}_0x5c86f4[_0x4424('0x45')]=qs[_0x4424('0x46')](_0x57b2a4[_0x4424('0x3d')]['sort']);_0x5c86f4[_0x4424('0x47')]=qs[_0x4424('0x3f')](_[_0x4424('0x48')](_0x57b2a4['query'],_0x19f5f6[_0x4424('0x3f')]));if(_0x57b2a4[_0x4424('0x3d')][_0x4424('0x49')]){_0x5c86f4['where']=_[_0x4424('0x4a')](_0x5c86f4[_0x4424('0x47')],{'$or':_[_0x4424('0x3c')](_0x2b2f0c,function(_0x409993){if(_0x409993[_0x4424('0x39')]!=='VIRTUAL'){var _0x2cbb98={};_0x2cbb98[_0x409993[_0x4424('0x34')]]={'$like':'%'+_0x57b2a4['query'][_0x4424('0x49')]+'%'};return _0x2cbb98;}})});}_0x5c86f4=_[_0x4424('0x4a')]({},_0x5c86f4,_0x57b2a4[_0x4424('0x4b')]);var _0x174c07={'where':_0x5c86f4[_0x4424('0x47')]};return db[_0x4424('0x36')]['count'](_0x174c07)['then'](function(_0x2bba11){_0x51b054[_0x4424('0x4c')]=_0x2bba11;if(_0x57b2a4[_0x4424('0x3d')][_0x4424('0x4d')]){_0x5c86f4['include']=[{'all':!![]}];}return db['ChatMessage'][_0x4424('0x4e')](_0x5c86f4);})['then'](function(_0x529130){_0x51b054[_0x4424('0x4f')]=_0x529130;return _0x51b054;})[_0x4424('0x1f')](respondWithFilteredResult(_0x504b04,_0x5c86f4))[_0x4424('0x50')](handleError(_0x504b04,null));};exports['show']=function(_0x16f430,_0xbe4727){var _0x4c9def={'raw':!![],'where':{'id':_0x16f430[_0x4424('0x51')]['id']}},_0x1d8325={};_0x1d8325[_0x4424('0x3b')]=_[_0x4424('0x3e')](db[_0x4424('0x36')][_0x4424('0x37')]);_0x1d8325[_0x4424('0x3d')]=_[_0x4424('0x3e')](_0x16f430[_0x4424('0x3d')]);_0x1d8325[_0x4424('0x3f')]=_[_0x4424('0x40')](_0x1d8325[_0x4424('0x3b')],_0x1d8325['query']);_0x4c9def[_0x4424('0x41')]=_[_0x4424('0x40')](_0x1d8325[_0x4424('0x3b')],qs[_0x4424('0x42')](_0x16f430[_0x4424('0x3d')]['fields']));_0x4c9def[_0x4424('0x41')]=_0x4c9def['attributes']['length']?_0x4c9def['attributes']:_0x1d8325[_0x4424('0x3b')];if(_0x16f430[_0x4424('0x3d')][_0x4424('0x4d')]){_0x4c9def[_0x4424('0x52')]=[{'all':!![]}];}_0x4c9def=_[_0x4424('0x4a')]({},_0x4c9def,_0x16f430[_0x4424('0x4b')]);return db['ChatMessage'][_0x4424('0x53')](_0x4c9def)['then'](handleEntityNotFound(_0xbe4727,null))['then'](respondWithResult(_0xbe4727,null))[_0x4424('0x50')](handleError(_0xbe4727,null));};exports[_0x4424('0x54')]=function(_0x48ce46,_0x568ebb){return db[_0x4424('0x36')][_0x4424('0x54')](_0x48ce46[_0x4424('0x55')],{})[_0x4424('0x1f')](respondWithResult(_0x568ebb,0xc9))[_0x4424('0x50')](handleError(_0x568ebb,null));};exports['update']=function(_0x1e039b,_0x14ffd6){if(_0x1e039b[_0x4424('0x55')]['id']){delete _0x1e039b[_0x4424('0x55')]['id'];}return db['ChatMessage'][_0x4424('0x53')]({'where':{'id':_0x1e039b['params']['id']}})[_0x4424('0x1f')](handleEntityNotFound(_0x14ffd6,null))[_0x4424('0x1f')](saveUpdates(_0x1e039b[_0x4424('0x55')],null))[_0x4424('0x1f')](respondWithResult(_0x14ffd6,null))[_0x4424('0x50')](handleError(_0x14ffd6,null));};exports[_0x4424('0x56')]=function(_0x1906e0,_0x394e63){return db[_0x4424('0x36')][_0x4424('0x53')]({'where':{'id':_0x1906e0[_0x4424('0x51')]['id']}})['then'](handleEntityNotFound(_0x394e63,null))[_0x4424('0x1f')](removeEntity(_0x394e63,null))[_0x4424('0x50')](handleError(_0x394e63,null));};exports[_0x4424('0x57')]=function(_0x50229d,_0xd1596f){return db[_0x4424('0x36')][_0x4424('0x57')]()[_0x4424('0x1f')](respondWithResult(_0xd1596f,null))['catch'](handleError(_0xd1596f,null));};var interaction_log=require(_0x4424('0x12'))(_0x4424('0x58'));exports[_0x4424('0x59')]=function(_0x4861db,_0x500170,_0x451e04){var _0x35a0b3={'channel':_0x4424('0x5a')};if(_0x4861db[_0x4424('0x55')]['id']){delete _0x4861db[_0x4424('0x55')]['id'];}_0x4861db[_0x4424('0x55')][_0x4424('0x5b')]=!![];_0x4861db[_0x4424('0x55')]['readAt']=moment()[_0x4424('0x5c')](_0x4424('0x5d'));_0x4861db['body']['UserId']=_0x4861db[_0x4424('0x55')][_0x4424('0x5e')]||_0x4861db[_0x4424('0x5f')]['id'];return db['ChatMessage'][_0x4424('0x53')]({'where':{'id':_0x4861db[_0x4424('0x51')]['id'],'UserId':null},'include':[{'model':db[_0x4424('0x60')],'as':_0x4424('0x61')}]})[_0x4424('0x1f')](handleEntityNotFound(_0x500170,null))[_0x4424('0x1f')](saveUpdates(_0x4861db['body'],null))[_0x4424('0x1f')](function(_0x5852b9){if(_0x5852b9){_0x35a0b3[_0x4424('0x27')]=_0x5852b9[_0x4424('0x62')]({'plain':!![]});return db[_0x4424('0x63')][_0x4424('0x53')]({'where':{'id':_0x5852b9[_0x4424('0x64')]}});}return null;})[_0x4424('0x1f')](handleEntityNotFound(_0x500170,null))[_0x4424('0x1f')](function(_0x19ff24){if(_0x19ff24){return _0x19ff24['update']({'UserId':_0x4861db[_0x4424('0x55')][_0x4424('0x5e')],'read1stAt':_[_0x4424('0x65')](_0x19ff24[_0x4424('0x66')])?moment()[_0x4424('0x5c')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0x4424('0x1f')](function(_0x5dedbf){if(_0x5dedbf){_0x35a0b3['interaction']=_0x5dedbf[_0x4424('0x62')]({'plain':!![]});interaction_log[_0x4424('0x20')](_0x4424('0x67'),_0x4861db[_0x4424('0x5f')]['id'],_0x4861db[_0x4424('0x5f')][_0x4424('0x34')],_0x4861db['user'][_0x4424('0x68')],_0x35a0b3[_0x4424('0x69')]['id'],_0x4861db[_0x4424('0x55')]?JSON[_0x4424('0x24')](_0x4861db['body']):'null');return respondWithRpcPromise(_0x4424('0x6a'),'acceptMessage',_0x35a0b3);}return null;})[_0x4424('0x1f')](function(_0x4a5d04){if(_0x4a5d04){if(_0x4861db['body']['manual']){_0x35a0b3[_0x4424('0x27')][_0x4424('0x6b')]=util[_0x4424('0x5c')]('SIP/%s',_0x4861db[_0x4424('0x5f')]['name']);_0x35a0b3[_0x4424('0x27')]['channel']=_0x35a0b3['channel'];_0x35a0b3[_0x4424('0x27')][_0x4424('0x6c')]=_0x4424('0x59');return respondWithRpcPromise(_0x4424('0x6d'),_0x4424('0x6d'),{'event':_0x4424('0x6e'),'message':_[_0x4424('0x4a')](_0x35a0b3['message'],JSON[_0x4424('0x6f')](_0x35a0b3['interaction'][_0x4424('0x70')]))},client9002)[_0x4424('0x1f')](function(){return _0x35a0b3;});}return _0x35a0b3;}return null;})['then'](respondWithResult(_0x500170,null))['catch'](handleError(_0x500170,null));};var interaction_log=require(_0x4424('0x12'))('chat-interactions');exports[_0x4424('0x2f')]=function(_0x22150b,_0x3761f4,_0x2f31ce){var _0x5b5174={'agent':{},'channel':'chat'};if(_0x22150b['body']['id']){delete _0x22150b['body']['id'];}_0x22150b[_0x4424('0x55')][_0x4424('0x5e')]=_0x22150b[_0x4424('0x55')][_0x4424('0x5e')]||_0x22150b[_0x4424('0x5f')]['id'];_0x5b5174['agent']['id']=_0x22150b[_0x4424('0x55')]['UserId'];return db['ChatMessage'][_0x4424('0x53')]({'where':{'id':_0x22150b[_0x4424('0x51')]['id'],'UserId':null}})[_0x4424('0x1f')](handleEntityNotFound(_0x3761f4,null))[_0x4424('0x1f')](function(_0x7965a7){if(_0x7965a7){_0x5b5174[_0x4424('0x27')]=_0x7965a7[_0x4424('0x62')]({'plain':!![]});return db['ChatInteraction'][_0x4424('0x53')]({'where':{'id':_0x7965a7[_0x4424('0x64')]}});}return null;})[_0x4424('0x1f')](handleEntityNotFound(_0x3761f4,null))[_0x4424('0x1f')](function(_0x1bc903){if(_0x1bc903){_0x5b5174[_0x4424('0x69')]=_0x1bc903['get']({'plain':!![]});interaction_log['info'](_0x4424('0x71'),_0x22150b[_0x4424('0x5f')]['id'],_0x22150b[_0x4424('0x5f')]['name'],_0x22150b['user'][_0x4424('0x68')],_0x5b5174[_0x4424('0x69')]['id'],_0x22150b[_0x4424('0x55')]?JSON[_0x4424('0x24')](_0x22150b[_0x4424('0x55')]):_0x4424('0x72'));return respondWithRpcPromise(_0x4424('0x73'),_0x4424('0x74'),_0x5b5174);}return null;})[_0x4424('0x1f')](function(_0x2bedd9){if(_0x2bedd9){_0x2bedd9[_0x4424('0x27')]['interface']=util[_0x4424('0x5c')]('SIP/%s',_0x22150b[_0x4424('0x5f')]['name']);_0x2bedd9['message'][_0x4424('0x75')]=_0x5b5174[_0x4424('0x75')];_0x2bedd9[_0x4424('0x27')][_0x4424('0x6c')]=_0x4424('0x2f');respondWithRpcPromise(_0x4424('0x6d'),_0x4424('0x6d'),{'event':_0x4424('0x76'),'message':_0x2bedd9['message']},client9002);return _0x5b5174;}return null;})['then'](respondWithResult(_0x3761f4,null))[_0x4424('0x50')](handleError(_0x3761f4,null));};
\ No newline at end of file
+var _0x3a71=['info','[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','contact','User','email','internal','manual','interface','SIP/%s','channel','event','accept','EventManager','acceptmessage','parse','formData','reject','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','Sequelize','SELECT','motionChannel','eml-format','rimraf','fast-json-patch','request-promise','bluebird','util','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','./chatMessage.socket','jayson/promise','client','http','request','ChatMessage,\x20%s,\x20%s','debug','ChatMessage,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','sendStatus','status','json','offset','undefined','count','limit','set','Content-Range','apply','then','destroy','end','stack','name','send','index','map','ChatMessage','rawAttributes','fieldName','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','merge','type','VIRTUAL','filter','options','includeAll','include','findAll','rows','catch','show','params','keys','find','create','body','update','describe','chat-interactions','chat','read','format','UserId','user','agent','ChatInteraction','YYYY-MM-DD\x20HH:mm:ss','interaction','get'];(function(_0x549cc0,_0x4b244d){var _0x1bfc0f=function(_0x2660d0){while(--_0x2660d0){_0x549cc0['push'](_0x549cc0['shift']());}};_0x1bfc0f(++_0x4b244d);}(_0x3a71,0x1ad));var _0x13a7=function(_0x27d7b9,_0x4c1554){_0x27d7b9=_0x27d7b9-0x0;var _0x1a8dd0=_0x3a71[_0x27d7b9];return _0x1a8dd0;};'use strict';var emlformat=require(_0x13a7('0x0'));var rimraf=require(_0x13a7('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x13a7('0x2'));var rp=require(_0x13a7('0x3'));var moment=require('moment');var BPromise=require(_0x13a7('0x4'));var Mustache=require('mustache');var util=require(_0x13a7('0x5'));var path=require('path');var sox=require('sox');var csv=require(_0x13a7('0x6'));var ejs=require(_0x13a7('0x7'));var fs=require('fs');var fs_extra=require(_0x13a7('0x8'));var _=require(_0x13a7('0x9'));var squel=require(_0x13a7('0xa'));var crypto=require(_0x13a7('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x13a7('0xc'));var toCsv=require('to-csv');var querystring=require(_0x13a7('0xd'));var Papa=require(_0x13a7('0xe'));var Redis=require('ioredis');var authService=require(_0x13a7('0xf'));var qs=require(_0x13a7('0x10'));var as=require(_0x13a7('0x11'));var hardwareService=require(_0x13a7('0x12'));var logger=require(_0x13a7('0x13'))(_0x13a7('0x14'));var utils=require(_0x13a7('0x15'));var config=require(_0x13a7('0x16'));var licenseUtil=require(_0x13a7('0x17'));var db=require(_0x13a7('0x18'))['db'];config[_0x13a7('0x19')]=_['defaults'](config['redis'],{'host':_0x13a7('0x1a'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x13a7('0x19')]));require(_0x13a7('0x1b'))['register'](socket);var jayson=require(_0x13a7('0x1c'));var client=jayson[_0x13a7('0x1d')][_0x13a7('0x1e')]({'port':0x232c});var client9002=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x2affd4,_0x2f2282,_0x58ebcb,_0x3c845e){return new BPromise(function(_0x334657,_0x2ff99a){var _0x1ee96f=_0x3c845e||client;return _0x1ee96f[_0x13a7('0x1f')](_0x2affd4,_0x58ebcb)['then'](function(_0x2a0517){logger['info'](_0x13a7('0x20'),_0x2f2282,'request\x20sent');logger[_0x13a7('0x21')](_0x13a7('0x22'),_0x2f2282,_0x13a7('0x23'),JSON[_0x13a7('0x24')](_0x2a0517));if(_0x2a0517[_0x13a7('0x25')]){if(_0x2a0517[_0x13a7('0x25')][_0x13a7('0x26')]===0x1f4){logger[_0x13a7('0x25')](_0x13a7('0x20'),_0x2f2282,_0x2a0517[_0x13a7('0x25')][_0x13a7('0x27')]);return _0x2ff99a(_0x2a0517['error'][_0x13a7('0x27')]);}logger[_0x13a7('0x25')](_0x13a7('0x20'),_0x2f2282,_0x2a0517[_0x13a7('0x25')][_0x13a7('0x27')]);return _0x334657(_0x2a0517['error']['message']);}else{logger['info'](_0x13a7('0x20'),_0x2f2282,_0x13a7('0x23'));_0x334657(_0x2a0517[_0x13a7('0x28')][_0x13a7('0x27')]);}})['catch'](function(_0x17a2f1){logger[_0x13a7('0x25')](_0x13a7('0x20'),_0x2f2282,_0x17a2f1);_0x2ff99a(_0x17a2f1);});});}function respondWithStatusCode(_0x58ca1f,_0xf6b27){_0xf6b27=_0xf6b27||0xcc;return function(_0x4f0b2e){if(_0x4f0b2e){return _0x58ca1f[_0x13a7('0x29')](_0xf6b27);}return _0x58ca1f[_0x13a7('0x2a')](_0xf6b27)['end']();};}function respondWithResult(_0x571e2d,_0x51b48c){_0x51b48c=_0x51b48c||0xc8;return function(_0x485e4f){if(_0x485e4f){return _0x571e2d[_0x13a7('0x2a')](_0x51b48c)[_0x13a7('0x2b')](_0x485e4f);}};}function respondWithFilteredResult(_0x5a03bb,_0x4e1142){return function(_0x545947){if(_0x545947){var _0x2c9954=typeof _0x4e1142[_0x13a7('0x2c')]===_0x13a7('0x2d')&&typeof _0x4e1142['limit']===_0x13a7('0x2d');var _0x2ce2a6=_0x545947[_0x13a7('0x2e')];var _0x1e4d04=_0x2c9954?0x0:_0x4e1142[_0x13a7('0x2c')];var _0x3e65a9=_0x2c9954?_0x545947[_0x13a7('0x2e')]:_0x4e1142['offset']+_0x4e1142[_0x13a7('0x2f')];var _0x20448d;if(_0x3e65a9>=_0x2ce2a6){_0x3e65a9=_0x2ce2a6;_0x20448d=0xc8;}else{_0x20448d=0xce;}_0x5a03bb[_0x13a7('0x2a')](_0x20448d);return _0x5a03bb[_0x13a7('0x30')](_0x13a7('0x31'),_0x1e4d04+'-'+_0x3e65a9+'/'+_0x2ce2a6)[_0x13a7('0x2b')](_0x545947);}return null;};}function patchUpdates(_0x502a9a){return function(_0x34d58e){try{jsonpatch[_0x13a7('0x32')](_0x34d58e,_0x502a9a,!![]);}catch(_0x2a5072){return BPromise['reject'](_0x2a5072);}return _0x34d58e['save']();};}function saveUpdates(_0x7d854e,_0x1c44e5){return function(_0x1be5da){if(_0x1be5da){return _0x1be5da['update'](_0x7d854e)[_0x13a7('0x33')](function(_0x1aaad8){return _0x1aaad8;});}return null;};}function removeEntity(_0xcb0fae,_0x1cc7a8){return function(_0x4a1c33){if(_0x4a1c33){return _0x4a1c33[_0x13a7('0x34')]()[_0x13a7('0x33')](function(){_0xcb0fae[_0x13a7('0x2a')](0xcc)[_0x13a7('0x35')]();});}};}function handleEntityNotFound(_0x1ae2ea,_0x549497){return function(_0xfdae39){if(!_0xfdae39){_0x1ae2ea['sendStatus'](0x194);}return _0xfdae39;};}function handleError(_0x3d2f69,_0x54aff0){_0x54aff0=_0x54aff0||0x1f4;return function(_0x58be94){logger[_0x13a7('0x25')](_0x58be94[_0x13a7('0x36')]);if(_0x58be94[_0x13a7('0x37')]){delete _0x58be94[_0x13a7('0x37')];}_0x3d2f69['status'](_0x54aff0)[_0x13a7('0x38')](_0x58be94);};}exports[_0x13a7('0x39')]=function(_0x5ed4de,_0x295798){var _0x4ba208={},_0x4f02c4={},_0x5b7550={'count':0x0,'rows':[]};var _0xba47d6=_[_0x13a7('0x3a')](db[_0x13a7('0x3b')][_0x13a7('0x3c')],function(_0x1cf607){return{'name':_0x1cf607[_0x13a7('0x3d')],'type':_0x1cf607['type']['key']};});_0x4f02c4[_0x13a7('0x3e')]=_[_0x13a7('0x3a')](_0xba47d6,_0x13a7('0x37'));_0x4f02c4[_0x13a7('0x3f')]=_['keys'](_0x5ed4de[_0x13a7('0x3f')]);_0x4f02c4[_0x13a7('0x40')]=_[_0x13a7('0x41')](_0x4f02c4[_0x13a7('0x3e')],_0x4f02c4[_0x13a7('0x3f')]);_0x4ba208[_0x13a7('0x42')]=_[_0x13a7('0x41')](_0x4f02c4[_0x13a7('0x3e')],qs[_0x13a7('0x43')](_0x5ed4de[_0x13a7('0x3f')]['fields']));_0x4ba208[_0x13a7('0x42')]=_0x4ba208['attributes'][_0x13a7('0x44')]?_0x4ba208[_0x13a7('0x42')]:_0x4f02c4['model'];if(!_0x5ed4de['query'][_0x13a7('0x45')](_0x13a7('0x46'))){_0x4ba208['limit']=qs[_0x13a7('0x2f')](_0x5ed4de[_0x13a7('0x3f')]['limit']);_0x4ba208['offset']=qs[_0x13a7('0x2c')](_0x5ed4de[_0x13a7('0x3f')][_0x13a7('0x2c')]);}_0x4ba208[_0x13a7('0x47')]=qs[_0x13a7('0x48')](_0x5ed4de['query']['sort']);_0x4ba208['where']=qs[_0x13a7('0x40')](_['pick'](_0x5ed4de[_0x13a7('0x3f')],_0x4f02c4[_0x13a7('0x40')]),_0xba47d6);if(_0x5ed4de[_0x13a7('0x3f')]['filter']){_0x4ba208[_0x13a7('0x49')]=_[_0x13a7('0x4a')](_0x4ba208[_0x13a7('0x49')],{'$or':_[_0x13a7('0x3a')](_0xba47d6,function(_0x15b1b7){if(_0x15b1b7[_0x13a7('0x4b')]!==_0x13a7('0x4c')){var _0x4c8e02={};_0x4c8e02[_0x15b1b7['name']]={'$like':'%'+_0x5ed4de[_0x13a7('0x3f')][_0x13a7('0x4d')]+'%'};return _0x4c8e02;}})});}_0x4ba208=_[_0x13a7('0x4a')]({},_0x4ba208,_0x5ed4de[_0x13a7('0x4e')]);var _0x220e10={'where':_0x4ba208[_0x13a7('0x49')]};return db['ChatMessage'][_0x13a7('0x2e')](_0x220e10)['then'](function(_0x3ec86d){_0x5b7550['count']=_0x3ec86d;if(_0x5ed4de[_0x13a7('0x3f')][_0x13a7('0x4f')]){_0x4ba208[_0x13a7('0x50')]=[{'all':!![]}];}return db[_0x13a7('0x3b')][_0x13a7('0x51')](_0x4ba208);})[_0x13a7('0x33')](function(_0x348bfd){_0x5b7550[_0x13a7('0x52')]=_0x348bfd;return _0x5b7550;})[_0x13a7('0x33')](respondWithFilteredResult(_0x295798,_0x4ba208))[_0x13a7('0x53')](handleError(_0x295798,null));};exports[_0x13a7('0x54')]=function(_0x9a2799,_0x48aaa6){var _0x6432bc={'raw':!![],'where':{'id':_0x9a2799[_0x13a7('0x55')]['id']}},_0x58c0a5={};_0x58c0a5[_0x13a7('0x3e')]=_['keys'](db[_0x13a7('0x3b')][_0x13a7('0x3c')]);_0x58c0a5[_0x13a7('0x3f')]=_[_0x13a7('0x56')](_0x9a2799['query']);_0x58c0a5['filters']=_[_0x13a7('0x41')](_0x58c0a5[_0x13a7('0x3e')],_0x58c0a5[_0x13a7('0x3f')]);_0x6432bc[_0x13a7('0x42')]=_[_0x13a7('0x41')](_0x58c0a5['model'],qs[_0x13a7('0x43')](_0x9a2799[_0x13a7('0x3f')][_0x13a7('0x43')]));_0x6432bc['attributes']=_0x6432bc[_0x13a7('0x42')][_0x13a7('0x44')]?_0x6432bc[_0x13a7('0x42')]:_0x58c0a5['model'];if(_0x9a2799['query'][_0x13a7('0x4f')]){_0x6432bc[_0x13a7('0x50')]=[{'all':!![]}];}_0x6432bc=_[_0x13a7('0x4a')]({},_0x6432bc,_0x9a2799[_0x13a7('0x4e')]);return db[_0x13a7('0x3b')][_0x13a7('0x57')](_0x6432bc)[_0x13a7('0x33')](handleEntityNotFound(_0x48aaa6,null))[_0x13a7('0x33')](respondWithResult(_0x48aaa6,null))[_0x13a7('0x53')](handleError(_0x48aaa6,null));};exports[_0x13a7('0x58')]=function(_0xf6cc0c,_0x1ff769){return db[_0x13a7('0x3b')][_0x13a7('0x58')](_0xf6cc0c[_0x13a7('0x59')],{})[_0x13a7('0x33')](respondWithResult(_0x1ff769,0xc9))['catch'](handleError(_0x1ff769,null));};exports[_0x13a7('0x5a')]=function(_0xd7b2d2,_0x3a5c5c){if(_0xd7b2d2[_0x13a7('0x59')]['id']){delete _0xd7b2d2[_0x13a7('0x59')]['id'];}return db[_0x13a7('0x3b')][_0x13a7('0x57')]({'where':{'id':_0xd7b2d2[_0x13a7('0x55')]['id']}})['then'](handleEntityNotFound(_0x3a5c5c,null))[_0x13a7('0x33')](saveUpdates(_0xd7b2d2[_0x13a7('0x59')],null))[_0x13a7('0x33')](respondWithResult(_0x3a5c5c,null))[_0x13a7('0x53')](handleError(_0x3a5c5c,null));};exports[_0x13a7('0x34')]=function(_0x4183cb,_0x194426){return db['ChatMessage'][_0x13a7('0x57')]({'where':{'id':_0x4183cb[_0x13a7('0x55')]['id']}})[_0x13a7('0x33')](handleEntityNotFound(_0x194426,null))[_0x13a7('0x33')](removeEntity(_0x194426,null))['catch'](handleError(_0x194426,null));};exports['describe']=function(_0xc26147,_0x24969e){return db[_0x13a7('0x3b')][_0x13a7('0x5b')]()[_0x13a7('0x33')](respondWithResult(_0x24969e,null))[_0x13a7('0x53')](handleError(_0x24969e,null));};var interaction_log=require(_0x13a7('0x13'))(_0x13a7('0x5c'));exports['accept']=function(_0x1b8250,_0x4867bc,_0x70e9a8){var _0x30c17c={'agent':{},'channel':_0x13a7('0x5d')};if(_0x1b8250[_0x13a7('0x59')]['id']){delete _0x1b8250[_0x13a7('0x59')]['id'];}_0x1b8250[_0x13a7('0x59')][_0x13a7('0x5e')]=!![];_0x1b8250[_0x13a7('0x59')]['readAt']=moment()[_0x13a7('0x5f')]('YYYY-MM-DD\x20HH:mm:ss');_0x1b8250[_0x13a7('0x59')][_0x13a7('0x60')]=_0x1b8250[_0x13a7('0x59')][_0x13a7('0x60')]||_0x1b8250[_0x13a7('0x61')]['id'];_0x30c17c[_0x13a7('0x62')]['id']=_0x1b8250[_0x13a7('0x59')][_0x13a7('0x60')];return db['ChatMessage']['find']({'where':{'id':_0x1b8250[_0x13a7('0x55')]['id'],'UserId':null}})[_0x13a7('0x33')](handleEntityNotFound(_0x4867bc,null))[_0x13a7('0x33')](saveUpdates(_0x1b8250[_0x13a7('0x59')],null))[_0x13a7('0x33')](function(_0x9832a){if(_0x9832a){_0x30c17c[_0x13a7('0x27')]=_0x9832a['get']({'plain':!![]});return db[_0x13a7('0x63')][_0x13a7('0x57')]({'where':{'id':_0x9832a['ChatInteractionId']}});}return null;})[_0x13a7('0x33')](handleEntityNotFound(_0x4867bc,null))[_0x13a7('0x33')](function(_0x1b969a){if(_0x1b969a){return _0x1b969a['update']({'UserId':_0x1b8250['body'][_0x13a7('0x60')],'read1stAt':_['isNil'](_0x1b969a['read1stAt'])?moment()['format'](_0x13a7('0x64')):undefined});}return null;})[_0x13a7('0x33')](function(_0x571d98){if(_0x571d98){_0x30c17c[_0x13a7('0x65')]=_0x571d98[_0x13a7('0x66')]({'plain':!![]});interaction_log[_0x13a7('0x67')](_0x13a7('0x68'),_0x1b8250['user']['id'],_0x1b8250[_0x13a7('0x61')][_0x13a7('0x37')],_0x1b8250[_0x13a7('0x61')][_0x13a7('0x69')],_0x30c17c[_0x13a7('0x65')]['id'],_0x1b8250[_0x13a7('0x59')]?JSON['stringify'](_0x1b8250[_0x13a7('0x59')]):_0x13a7('0x6a'));return respondWithRpcPromise(_0x13a7('0x6b'),_0x13a7('0x6c'),_0x30c17c);}return null;})[_0x13a7('0x33')](function(_0x4be950){var _0x379cf5=_0x13a7('0x6d')+_0x4be950[_0x13a7('0x27')][_0x13a7('0x6e')];return db[_0x13a7('0x6f')]['query'](_0x379cf5,{'type':db['Sequelize']['QueryTypes']['SELECT'],'raw':!![]})[_0x13a7('0x33')](function(_0x523c08){return _0x523c08;});})[_0x13a7('0x33')](function(_0x38dde4){if(_0x38dde4){_0x30c17c[_0x13a7('0x27')][_0x13a7('0x70')]=_0x38dde4[0x0];if(!_0x1b8250[_0x13a7('0x59')][_0x13a7('0x60')])return;return db[_0x13a7('0x71')]['find']({'where':{'id':_0x1b8250[_0x13a7('0x59')][_0x13a7('0x60')],'role':'agent'},'attributes':['id',_0x13a7('0x37'),'fullname',_0x13a7('0x72'),_0x13a7('0x73')],'raw':!![]});}return null;})[_0x13a7('0x33')](function(_0x1bd698){if(!_0x1bd698)return null;_0x30c17c[_0x13a7('0x27')][_0x13a7('0x62')]=_0x1bd698;return _0x30c17c;})[_0x13a7('0x33')](function(_0x492827){if(_0x492827){if(_0x1b8250[_0x13a7('0x59')][_0x13a7('0x74')]){_0x30c17c[_0x13a7('0x27')][_0x13a7('0x75')]=util[_0x13a7('0x5f')](_0x13a7('0x76'),_0x1b8250[_0x13a7('0x61')]['name']);_0x30c17c[_0x13a7('0x27')][_0x13a7('0x77')]=_0x30c17c[_0x13a7('0x77')];_0x30c17c['message']['motionChannel']=_0x30c17c['channel'];_0x30c17c['message'][_0x13a7('0x78')]=_0x13a7('0x79');return respondWithRpcPromise(_0x13a7('0x7a'),_0x13a7('0x7a'),{'event':_0x13a7('0x7b'),'message':_['merge'](_0x30c17c[_0x13a7('0x27')],JSON[_0x13a7('0x7c')](_0x30c17c['interaction'][_0x13a7('0x7d')]))},client9002)[_0x13a7('0x33')](function(){return _0x30c17c;});}return _0x30c17c;}return null;})[_0x13a7('0x33')](respondWithResult(_0x4867bc,null))['catch'](handleError(_0x4867bc,null));};var interaction_log=require('../../config/logger')(_0x13a7('0x5c'));exports[_0x13a7('0x7e')]=function(_0x30b48f,_0x3c3ee3,_0x5b6854){var _0x4c3016={'agent':{},'channel':'chat'};if(_0x30b48f[_0x13a7('0x59')]['id']){delete _0x30b48f[_0x13a7('0x59')]['id'];}_0x30b48f[_0x13a7('0x59')]['UserId']=_0x30b48f[_0x13a7('0x59')][_0x13a7('0x60')]||_0x30b48f[_0x13a7('0x61')]['id'];_0x4c3016['agent']['id']=_0x30b48f[_0x13a7('0x59')][_0x13a7('0x60')];return db[_0x13a7('0x3b')][_0x13a7('0x57')]({'where':{'id':_0x30b48f['params']['id'],'UserId':null}})[_0x13a7('0x33')](handleEntityNotFound(_0x3c3ee3,null))[_0x13a7('0x33')](function(_0xb8444){if(_0xb8444){_0x4c3016[_0x13a7('0x27')]=_0xb8444[_0x13a7('0x66')]({'plain':!![]});return db[_0x13a7('0x63')][_0x13a7('0x57')]({'where':{'id':_0xb8444['ChatInteractionId']}});}return null;})[_0x13a7('0x33')](handleEntityNotFound(_0x3c3ee3,null))[_0x13a7('0x33')](function(_0x4039a4){if(_0x4039a4){_0x4c3016[_0x13a7('0x65')]=_0x4039a4[_0x13a7('0x66')]({'plain':!![]});interaction_log[_0x13a7('0x67')](_0x13a7('0x7f'),_0x30b48f[_0x13a7('0x61')]['id'],_0x30b48f[_0x13a7('0x61')][_0x13a7('0x37')],_0x30b48f[_0x13a7('0x61')]['role'],_0x4c3016['interaction']['id'],_0x30b48f[_0x13a7('0x59')]?JSON[_0x13a7('0x24')](_0x30b48f[_0x13a7('0x59')]):_0x13a7('0x6a'));return respondWithRpcPromise(_0x13a7('0x80'),_0x13a7('0x81'),_0x4c3016);}return null;})[_0x13a7('0x33')](function(_0xe4f503){var _0x4c69bb=_0x13a7('0x6d')+_0xe4f503[_0x13a7('0x27')][_0x13a7('0x6e')];return db['sequelize'][_0x13a7('0x3f')](_0x4c69bb,{'type':db[_0x13a7('0x82')]['QueryTypes'][_0x13a7('0x83')],'raw':!![]})['then'](function(_0x5a2412){return _0x5a2412;});})[_0x13a7('0x33')](function(_0x287634){if(_0x287634){_0x4c3016['message']['contact']=_0x287634[0x0];if(!_0x30b48f[_0x13a7('0x59')][_0x13a7('0x60')])return;return db[_0x13a7('0x71')][_0x13a7('0x57')]({'where':{'id':_0x30b48f[_0x13a7('0x59')][_0x13a7('0x60')],'role':_0x13a7('0x62')},'attributes':['id','name','fullname',_0x13a7('0x72'),_0x13a7('0x73')],'raw':!![]});}return null;})[_0x13a7('0x33')](function(_0x45ebad){if(!_0x45ebad)return null;_0x4c3016['message']['agent']=_0x45ebad;return _0x4c3016;})['then'](function(_0xd16f1c){if(_0xd16f1c){_0xd16f1c[_0x13a7('0x27')]['interface']=util[_0x13a7('0x5f')](_0x13a7('0x76'),_0x30b48f[_0x13a7('0x61')][_0x13a7('0x37')]);_0xd16f1c['message']['channel']=_0x4c3016[_0x13a7('0x77')];_0xd16f1c['message'][_0x13a7('0x84')]=_0x4c3016[_0x13a7('0x77')];_0xd16f1c[_0x13a7('0x27')]['event']=_0x13a7('0x7e');respondWithRpcPromise(_0x13a7('0x7a'),'EventManager',{'event':'rejectmessage','message':_[_0x13a7('0x4a')](_0x4c3016[_0x13a7('0x27')],JSON[_0x13a7('0x7c')](_0x4c3016[_0x13a7('0x65')][_0x13a7('0x7d')]))},client9002);return _0x4c3016;}return null;})[_0x13a7('0x33')](respondWithResult(_0x3c3ee3,null))['catch'](handleError(_0x3c3ee3,null));};
\ No newline at end of file