Built motion from commit 9d7072cc.|2.5.39
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 506494b..4edc428 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x134c=['send','index','map','ChatMessage','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','options','include','findAll','rows','params','includeAll','create','body','find','describe','../../config/logger','accept','chat','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','CmContact','Contact','get','ChatInteraction','ChatInteractionId','isNil','read1stAt','interaction','info','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','acceptMessage','manual','SIP/%s','channel','EventManager','acceptmessage','parse','formData','chat-interactions','agent','null','rejectMessage','interface','event','reject','rejectmessage','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','redis','defaults','localhost','socket.io-emitter','./chatMessage.socket','register','http','request','ChatMessage,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','catch','status','json','count','offset','limit','set','Content-Range','apply','save','update','then','destroy','sendStatus','stack','name'];(function(_0x7db46d,_0x1d5989){var _0x35a46d=function(_0x3355c9){while(--_0x3355c9){_0x7db46d['push'](_0x7db46d['shift']());}};_0x35a46d(++_0x1d5989);}(_0x134c,0x1ca));var _0xc134=function(_0x4cf0b7,_0x560029){_0x4cf0b7=_0x4cf0b7-0x0;var _0x545f10=_0x134c[_0x4cf0b7];return _0x545f10;};'use strict';var pdf=require(_0xc134('0x0'));var emlformat=require(_0xc134('0x1'));var rimraf=require(_0xc134('0x2'));var zipdir=require(_0xc134('0x3'));var jsonpatch=require(_0xc134('0x4'));var rp=require(_0xc134('0x5'));var moment=require(_0xc134('0x6'));var BPromise=require(_0xc134('0x7'));var Mustache=require(_0xc134('0x8'));var util=require(_0xc134('0x9'));var path=require(_0xc134('0xa'));var sox=require(_0xc134('0xb'));var csv=require(_0xc134('0xc'));var ejs=require(_0xc134('0xd'));var fs=require('fs');var _=require(_0xc134('0xe'));var squel=require('squel');var crypto=require(_0xc134('0xf'));var jsforce=require(_0xc134('0x10'));var deskjs=require(_0xc134('0x11'));var toCsv=require(_0xc134('0xc'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xc134('0x12'));var qs=require(_0xc134('0x13'));var as=require(_0xc134('0x14'));var hardwareService=require(_0xc134('0x15'));var logger=require('../../config/logger')(_0xc134('0x16'));var utils=require(_0xc134('0x17'));var config=require(_0xc134('0x18'));var licenseUtil=require(_0xc134('0x19'));var db=require('../../mysqldb')['db'];config[_0xc134('0x1a')]=_[_0xc134('0x1b')](config['redis'],{'host':_0xc134('0x1c'),'port':0x18eb});var socket=require(_0xc134('0x1d'))(new Redis(config['redis']));require(_0xc134('0x1e'))[_0xc134('0x1f')](socket);var jayson=require('jayson/promise');var client=jayson['client'][_0xc134('0x20')]({'port':0x232c});var client9002=jayson['client'][_0xc134('0x20')]({'port':0x232a});function respondWithRpcPromise(_0xc3d10,_0x36adbd,_0x5066ea,_0x1c53d6){return new BPromise(function(_0x22fd6d,_0x302806){var _0x262361=_0x1c53d6||client;return _0x262361[_0xc134('0x21')](_0xc3d10,_0x5066ea)['then'](function(_0x2d10c0){logger['info'](_0xc134('0x22'),_0x36adbd,_0xc134('0x23'));logger[_0xc134('0x24')]('ChatMessage,\x20%s,\x20%s,\x20%s',_0x36adbd,'request\x20sent',JSON[_0xc134('0x25')](_0x2d10c0));if(_0x2d10c0[_0xc134('0x26')]){if(_0x2d10c0[_0xc134('0x26')][_0xc134('0x27')]===0x1f4){logger[_0xc134('0x26')](_0xc134('0x22'),_0x36adbd,_0x2d10c0['error'][_0xc134('0x28')]);return _0x302806(_0x2d10c0[_0xc134('0x26')][_0xc134('0x28')]);}logger[_0xc134('0x26')](_0xc134('0x22'),_0x36adbd,_0x2d10c0[_0xc134('0x26')][_0xc134('0x28')]);return _0x22fd6d(_0x2d10c0[_0xc134('0x26')][_0xc134('0x28')]);}else{logger['info']('ChatMessage,\x20%s,\x20%s',_0x36adbd,_0xc134('0x23'));_0x22fd6d(_0x2d10c0[_0xc134('0x29')]['message']);}})[_0xc134('0x2a')](function(_0x1b7d4d){logger['error'](_0xc134('0x22'),_0x36adbd,_0x1b7d4d);_0x302806(_0x1b7d4d);});});}function respondWithStatusCode(_0x254d5d,_0x33e4c7){_0x33e4c7=_0x33e4c7||0xcc;return function(_0x4bf83a){if(_0x4bf83a){return _0x254d5d['sendStatus'](_0x33e4c7);}return _0x254d5d[_0xc134('0x2b')](_0x33e4c7)['end']();};}function respondWithResult(_0x5eebb4,_0x359abe){_0x359abe=_0x359abe||0xc8;return function(_0x29cceb){if(_0x29cceb){return _0x5eebb4[_0xc134('0x2b')](_0x359abe)[_0xc134('0x2c')](_0x29cceb);}};}function respondWithFilteredResult(_0x4c8aeb,_0x34c429){return function(_0x384707){if(_0x384707){var _0x5b0cbf=_0x384707[_0xc134('0x2d')],_0x2e61b2=_0x34c429[_0xc134('0x2e')],_0x474ed9=_0x34c429['offset']+_0x34c429[_0xc134('0x2f')],_0x42b0f3;if(_0x474ed9>=_0x5b0cbf){_0x474ed9=_0x5b0cbf;_0x42b0f3=0xc8;}else{_0x42b0f3=0xce;}_0x4c8aeb['status'](_0x42b0f3);return _0x4c8aeb[_0xc134('0x30')](_0xc134('0x31'),_0x2e61b2+'-'+_0x474ed9+'/'+_0x5b0cbf)[_0xc134('0x2c')](_0x384707);}return null;};}function patchUpdates(_0x504a06){return function(_0x520d15){try{jsonpatch[_0xc134('0x32')](_0x520d15,_0x504a06,!![]);}catch(_0x12fca5){return BPromise['reject'](_0x12fca5);}return _0x520d15[_0xc134('0x33')]();};}function saveUpdates(_0x11ac1f,_0x525000){return function(_0x1f1d8b){if(_0x1f1d8b){return _0x1f1d8b[_0xc134('0x34')](_0x11ac1f)[_0xc134('0x35')](function(_0x57727a){return _0x57727a;});}return null;};}function removeEntity(_0x191d5b,_0x2d1f9d){return function(_0x5c6eed){if(_0x5c6eed){return _0x5c6eed[_0xc134('0x36')]()['then'](function(){_0x191d5b[_0xc134('0x2b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x504192,_0x48ba07){return function(_0xe7ae4e){if(!_0xe7ae4e){_0x504192[_0xc134('0x37')](0x194);}return _0xe7ae4e;};}function handleError(_0x3df770,_0x4d025d){_0x4d025d=_0x4d025d||0x1f4;return function(_0x26fa5e){logger['error'](_0x26fa5e[_0xc134('0x38')]);if(_0x26fa5e[_0xc134('0x39')]){delete _0x26fa5e[_0xc134('0x39')];}_0x3df770[_0xc134('0x2b')](_0x4d025d)[_0xc134('0x3a')](_0x26fa5e);};}exports[_0xc134('0x3b')]=function(_0x5267a8,_0x3de5b9){var _0x248970={},_0x177b4f={},_0x5bbd4a={'count':0x0,'rows':[]};var _0x4ffe2d=_[_0xc134('0x3c')](db[_0xc134('0x3d')][_0xc134('0x3e')],function(_0x1bf15e){return{'name':_0x1bf15e[_0xc134('0x3f')],'type':_0x1bf15e[_0xc134('0x40')][_0xc134('0x41')]};});_0x177b4f[_0xc134('0x42')]=_[_0xc134('0x3c')](_0x4ffe2d,'name');_0x177b4f[_0xc134('0x43')]=_[_0xc134('0x44')](_0x5267a8[_0xc134('0x43')]);_0x177b4f[_0xc134('0x45')]=_[_0xc134('0x46')](_0x177b4f[_0xc134('0x42')],_0x177b4f[_0xc134('0x43')]);_0x248970['attributes']=_[_0xc134('0x46')](_0x177b4f[_0xc134('0x42')],qs[_0xc134('0x47')](_0x5267a8['query'][_0xc134('0x47')]));_0x248970[_0xc134('0x48')]=_0x248970['attributes'][_0xc134('0x49')]?_0x248970[_0xc134('0x48')]:_0x177b4f[_0xc134('0x42')];if(!_0x5267a8[_0xc134('0x43')][_0xc134('0x4a')](_0xc134('0x4b'))){_0x248970[_0xc134('0x2f')]=qs[_0xc134('0x2f')](_0x5267a8[_0xc134('0x43')]['limit']);_0x248970['offset']=qs['offset'](_0x5267a8[_0xc134('0x43')][_0xc134('0x2e')]);}_0x248970[_0xc134('0x4c')]=qs[_0xc134('0x4d')](_0x5267a8[_0xc134('0x43')][_0xc134('0x4d')]);_0x248970[_0xc134('0x4e')]=qs[_0xc134('0x45')](_[_0xc134('0x4f')](_0x5267a8[_0xc134('0x43')],_0x177b4f[_0xc134('0x45')]),_0x4ffe2d);if(_0x5267a8[_0xc134('0x43')][_0xc134('0x50')]){_0x248970[_0xc134('0x4e')]=_['merge'](_0x248970[_0xc134('0x4e')],{'$or':_[_0xc134('0x3c')](_0x4ffe2d,function(_0x554dab){if(_0x554dab[_0xc134('0x40')]!==_0xc134('0x51')){var _0x23a0af={};_0x23a0af[_0x554dab[_0xc134('0x39')]]={'$like':'%'+_0x5267a8[_0xc134('0x43')][_0xc134('0x50')]+'%'};return _0x23a0af;}})});}_0x248970=_[_0xc134('0x52')]({},_0x248970,_0x5267a8[_0xc134('0x53')]);var _0x2d002c={'where':_0x248970['where']};return db[_0xc134('0x3d')][_0xc134('0x2d')](_0x2d002c)[_0xc134('0x35')](function(_0x16055e){_0x5bbd4a[_0xc134('0x2d')]=_0x16055e;if(_0x5267a8[_0xc134('0x43')]['includeAll']){_0x248970[_0xc134('0x54')]=[{'all':!![]}];}return db[_0xc134('0x3d')][_0xc134('0x55')](_0x248970);})[_0xc134('0x35')](function(_0x3e58db){_0x5bbd4a[_0xc134('0x56')]=_0x3e58db;return _0x5bbd4a;})[_0xc134('0x35')](respondWithFilteredResult(_0x3de5b9,_0x248970))[_0xc134('0x2a')](handleError(_0x3de5b9,null));};exports['show']=function(_0x244c1a,_0x5d8df4){var _0x1f32cb={'raw':!![],'where':{'id':_0x244c1a[_0xc134('0x57')]['id']}},_0x244b6c={};_0x244b6c['model']=_[_0xc134('0x44')](db[_0xc134('0x3d')]['rawAttributes']);_0x244b6c[_0xc134('0x43')]=_['keys'](_0x244c1a[_0xc134('0x43')]);_0x244b6c[_0xc134('0x45')]=_[_0xc134('0x46')](_0x244b6c['model'],_0x244b6c['query']);_0x1f32cb[_0xc134('0x48')]=_[_0xc134('0x46')](_0x244b6c['model'],qs[_0xc134('0x47')](_0x244c1a[_0xc134('0x43')][_0xc134('0x47')]));_0x1f32cb[_0xc134('0x48')]=_0x1f32cb['attributes'][_0xc134('0x49')]?_0x1f32cb[_0xc134('0x48')]:_0x244b6c[_0xc134('0x42')];if(_0x244c1a[_0xc134('0x43')][_0xc134('0x58')]){_0x1f32cb[_0xc134('0x54')]=[{'all':!![]}];}_0x1f32cb=_[_0xc134('0x52')]({},_0x1f32cb,_0x244c1a[_0xc134('0x53')]);return db[_0xc134('0x3d')]['find'](_0x1f32cb)[_0xc134('0x35')](handleEntityNotFound(_0x5d8df4,null))['then'](respondWithResult(_0x5d8df4,null))[_0xc134('0x2a')](handleError(_0x5d8df4,null));};exports['create']=function(_0x194694,_0x2f2779){return db[_0xc134('0x3d')][_0xc134('0x59')](_0x194694[_0xc134('0x5a')],{})[_0xc134('0x35')](respondWithResult(_0x2f2779,0xc9))[_0xc134('0x2a')](handleError(_0x2f2779,null));};exports[_0xc134('0x34')]=function(_0x1e8414,_0x241041){if(_0x1e8414[_0xc134('0x5a')]['id']){delete _0x1e8414['body']['id'];}return db[_0xc134('0x3d')][_0xc134('0x5b')]({'where':{'id':_0x1e8414[_0xc134('0x57')]['id']}})[_0xc134('0x35')](handleEntityNotFound(_0x241041,null))['then'](saveUpdates(_0x1e8414[_0xc134('0x5a')],null))['then'](respondWithResult(_0x241041,null))[_0xc134('0x2a')](handleError(_0x241041,null));};exports[_0xc134('0x36')]=function(_0x1303f6,_0x44d35d){return db[_0xc134('0x3d')][_0xc134('0x5b')]({'where':{'id':_0x1303f6[_0xc134('0x57')]['id']}})['then'](handleEntityNotFound(_0x44d35d,null))[_0xc134('0x35')](removeEntity(_0x44d35d,null))['catch'](handleError(_0x44d35d,null));};exports[_0xc134('0x5c')]=function(_0x3beb67,_0xd3df03){return db[_0xc134('0x3d')][_0xc134('0x5c')]()['then'](respondWithResult(_0xd3df03,null))[_0xc134('0x2a')](handleError(_0xd3df03,null));};var interaction_log=require(_0xc134('0x5d'))('chat-interactions');exports[_0xc134('0x5e')]=function(_0x2bddf6,_0x21fe0,_0x5b3091){var _0x3b8c36={'agent':{},'channel':_0xc134('0x5f')};if(_0x2bddf6[_0xc134('0x5a')]['id']){delete _0x2bddf6['body']['id'];}_0x2bddf6[_0xc134('0x5a')][_0xc134('0x60')]=!![];_0x2bddf6[_0xc134('0x5a')][_0xc134('0x61')]=moment()[_0xc134('0x62')](_0xc134('0x63'));_0x2bddf6['body'][_0xc134('0x64')]=_0x2bddf6['body']['UserId']||_0x2bddf6[_0xc134('0x65')]['id'];_0x3b8c36['agent']['id']=_0x2bddf6['body']['UserId'];return db['ChatMessage'][_0xc134('0x5b')]({'where':{'id':_0x2bddf6['params']['id'],'UserId':null},'include':[{'model':db[_0xc134('0x66')],'as':_0xc134('0x67')}]})['then'](handleEntityNotFound(_0x21fe0,null))[_0xc134('0x35')](saveUpdates(_0x2bddf6['body'],null))[_0xc134('0x35')](function(_0x2e37dd){if(_0x2e37dd){_0x3b8c36[_0xc134('0x28')]=_0x2e37dd[_0xc134('0x68')]({'plain':!![]});return db[_0xc134('0x69')][_0xc134('0x5b')]({'where':{'id':_0x2e37dd[_0xc134('0x6a')]}});}return null;})[_0xc134('0x35')](handleEntityNotFound(_0x21fe0,null))[_0xc134('0x35')](function(_0x2a7b3d){if(_0x2a7b3d){return _0x2a7b3d[_0xc134('0x34')]({'UserId':_0x2bddf6[_0xc134('0x5a')][_0xc134('0x64')],'read1stAt':_[_0xc134('0x6b')](_0x2a7b3d[_0xc134('0x6c')])?moment()['format']('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0xc134('0x35')](function(_0x63172d){if(_0x63172d){_0x3b8c36[_0xc134('0x6d')]=_0x63172d['get']({'plain':!![]});interaction_log[_0xc134('0x6e')](_0xc134('0x6f'),_0x2bddf6[_0xc134('0x65')]['id'],_0x2bddf6['user'][_0xc134('0x39')],_0x2bddf6['user'][_0xc134('0x70')],_0x3b8c36[_0xc134('0x6d')]['id'],_0x2bddf6[_0xc134('0x5a')]?JSON['stringify'](_0x2bddf6['body']):'null');return respondWithRpcPromise('AcceptMessage',_0xc134('0x71'),_0x3b8c36);}return null;})['then'](function(_0x46a469){if(_0x46a469){if(_0x2bddf6[_0xc134('0x5a')][_0xc134('0x72')]){_0x3b8c36[_0xc134('0x28')]['interface']=util[_0xc134('0x62')](_0xc134('0x73'),_0x2bddf6[_0xc134('0x65')][_0xc134('0x39')]);_0x3b8c36[_0xc134('0x28')][_0xc134('0x74')]=_0x3b8c36[_0xc134('0x74')];_0x3b8c36['message']['event']=_0xc134('0x5e');return respondWithRpcPromise('EventManager',_0xc134('0x75'),{'event':_0xc134('0x76'),'message':_[_0xc134('0x52')](_0x3b8c36[_0xc134('0x28')],JSON[_0xc134('0x77')](_0x3b8c36[_0xc134('0x6d')][_0xc134('0x78')]))},client9002)[_0xc134('0x35')](function(){return _0x3b8c36;});}return _0x3b8c36;}return null;})['then'](respondWithResult(_0x21fe0,null))[_0xc134('0x2a')](handleError(_0x21fe0,null));};var interaction_log=require(_0xc134('0x5d'))(_0xc134('0x79'));exports['reject']=function(_0x1d9a17,_0x23ad74,_0x492ba5){var _0x494bfd={'agent':{},'channel':_0xc134('0x5f')};if(_0x1d9a17['body']['id']){delete _0x1d9a17['body']['id'];}_0x1d9a17[_0xc134('0x5a')]['UserId']=_0x1d9a17[_0xc134('0x5a')][_0xc134('0x64')]||_0x1d9a17['user']['id'];_0x494bfd[_0xc134('0x7a')]['id']=_0x1d9a17['body'][_0xc134('0x64')];return db[_0xc134('0x3d')][_0xc134('0x5b')]({'where':{'id':_0x1d9a17[_0xc134('0x57')]['id'],'UserId':null}})[_0xc134('0x35')](handleEntityNotFound(_0x23ad74,null))['then'](function(_0x13d607){if(_0x13d607){_0x494bfd[_0xc134('0x28')]=_0x13d607[_0xc134('0x68')]({'plain':!![]});return db[_0xc134('0x69')][_0xc134('0x5b')]({'where':{'id':_0x13d607[_0xc134('0x6a')]}});}return null;})[_0xc134('0x35')](handleEntityNotFound(_0x23ad74,null))[_0xc134('0x35')](function(_0x21d404){if(_0x21d404){_0x494bfd[_0xc134('0x6d')]=_0x21d404[_0xc134('0x68')]({'plain':!![]});interaction_log['info']('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x1d9a17['user']['id'],_0x1d9a17[_0xc134('0x65')][_0xc134('0x39')],_0x1d9a17[_0xc134('0x65')]['role'],_0x494bfd[_0xc134('0x6d')]['id'],_0x1d9a17[_0xc134('0x5a')]?JSON[_0xc134('0x25')](_0x1d9a17[_0xc134('0x5a')]):_0xc134('0x7b'));return respondWithRpcPromise('RejectMessage',_0xc134('0x7c'),_0x494bfd);}return null;})['then'](function(_0x2e9ebe){if(_0x2e9ebe){_0x2e9ebe['message'][_0xc134('0x7d')]=util[_0xc134('0x62')](_0xc134('0x73'),_0x1d9a17['user']['name']);_0x2e9ebe['message'][_0xc134('0x74')]=_0x494bfd[_0xc134('0x74')];_0x2e9ebe[_0xc134('0x28')][_0xc134('0x7e')]=_0xc134('0x7f');respondWithRpcPromise(_0xc134('0x75'),_0xc134('0x75'),{'event':_0xc134('0x80'),'message':_0x2e9ebe[_0xc134('0x28')]},client9002);return _0x494bfd;}return null;})[_0xc134('0x35')](respondWithResult(_0x23ad74,null))['catch'](handleError(_0x23ad74,null));};
\ No newline at end of file
+var _0x2d34=['reject','save','stack','name','send','index','rawAttributes','type','key','model','keys','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','map','merge','options','ChatMessage','includeAll','findAll','show','params','include','find','create','body','update','destroy','describe','accept','chat','read','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','ChatInteraction','ChatInteractionId','read1stAt','interaction','get','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','AcceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','QueryTypes','SELECT','contact','User','fullname','email','internal','manual','SIP/%s','channel','motionChannel','event','EventManager','acceptmessage','formData','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','interface','rejectmessage','parse','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','path','to-csv','fs-extra','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','./chatMessage.socket','client','http','request','then','info','ChatMessage,\x20%s,\x20%s','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','sendStatus','status','end','offset','undefined','count','limit','set','Content-Range','json'];(function(_0x14add3,_0x13ce8d){var _0x4a174f=function(_0x2b3ed7){while(--_0x2b3ed7){_0x14add3['push'](_0x14add3['shift']());}};_0x4a174f(++_0x13ce8d);}(_0x2d34,0x156));var _0x42d3=function(_0x4f7b41,_0x133043){_0x4f7b41=_0x4f7b41-0x0;var _0x5caa2b=_0x2d34[_0x4f7b41];return _0x5caa2b;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x42d3('0x0'));var zipdir=require(_0x42d3('0x1'));var jsonpatch=require(_0x42d3('0x2'));var rp=require(_0x42d3('0x3'));var moment=require(_0x42d3('0x4'));var BPromise=require(_0x42d3('0x5'));var Mustache=require('mustache');var util=require('util');var path=require(_0x42d3('0x6'));var sox=require('sox');var csv=require(_0x42d3('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x42d3('0x8'));var _=require('lodash');var squel=require('squel');var crypto=require(_0x42d3('0x9'));var jsforce=require(_0x42d3('0xa'));var deskjs=require(_0x42d3('0xb'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x42d3('0xc'));var Redis=require(_0x42d3('0xd'));var authService=require(_0x42d3('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0x42d3('0xf'));var hardwareService=require(_0x42d3('0x10'));var logger=require(_0x42d3('0x11'))(_0x42d3('0x12'));var utils=require(_0x42d3('0x13'));var config=require(_0x42d3('0x14'));var licenseUtil=require(_0x42d3('0x15'));var db=require(_0x42d3('0x16'))['db'];config[_0x42d3('0x17')]=_[_0x42d3('0x18')](config[_0x42d3('0x17')],{'host':'localhost','port':0x18eb});var socket=require(_0x42d3('0x19'))(new Redis(config[_0x42d3('0x17')]));require(_0x42d3('0x1a'))['register'](socket);var jayson=require('jayson/promise');var client=jayson[_0x42d3('0x1b')][_0x42d3('0x1c')]({'port':0x232c});var client9002=jayson['client'][_0x42d3('0x1c')]({'port':0x232a});function respondWithRpcPromise(_0x460abe,_0x18c64c,_0x29f928,_0x1cb8d7){return new BPromise(function(_0x552ec3,_0x314432){var _0x463e53=_0x1cb8d7||client;return _0x463e53[_0x42d3('0x1d')](_0x460abe,_0x29f928)[_0x42d3('0x1e')](function(_0xc9a998){logger[_0x42d3('0x1f')](_0x42d3('0x20'),_0x18c64c,_0x42d3('0x21'));logger[_0x42d3('0x22')](_0x42d3('0x23'),_0x18c64c,_0x42d3('0x21'),JSON[_0x42d3('0x24')](_0xc9a998));if(_0xc9a998[_0x42d3('0x25')]){if(_0xc9a998[_0x42d3('0x25')][_0x42d3('0x26')]===0x1f4){logger[_0x42d3('0x25')](_0x42d3('0x20'),_0x18c64c,_0xc9a998[_0x42d3('0x25')][_0x42d3('0x27')]);return _0x314432(_0xc9a998[_0x42d3('0x25')][_0x42d3('0x27')]);}logger[_0x42d3('0x25')]('ChatMessage,\x20%s,\x20%s',_0x18c64c,_0xc9a998[_0x42d3('0x25')][_0x42d3('0x27')]);return _0x552ec3(_0xc9a998[_0x42d3('0x25')][_0x42d3('0x27')]);}else{logger[_0x42d3('0x1f')](_0x42d3('0x20'),_0x18c64c,_0x42d3('0x21'));_0x552ec3(_0xc9a998['result']['message']);}})[_0x42d3('0x28')](function(_0x4040be){logger[_0x42d3('0x25')](_0x42d3('0x20'),_0x18c64c,_0x4040be);_0x314432(_0x4040be);});});}function respondWithStatusCode(_0x23a1cb,_0x22d485){_0x22d485=_0x22d485||0xcc;return function(_0x460d49){if(_0x460d49){return _0x23a1cb[_0x42d3('0x29')](_0x22d485);}return _0x23a1cb[_0x42d3('0x2a')](_0x22d485)[_0x42d3('0x2b')]();};}function respondWithResult(_0x18b48c,_0x23a71b){_0x23a71b=_0x23a71b||0xc8;return function(_0x306e30){if(_0x306e30){return _0x18b48c[_0x42d3('0x2a')](_0x23a71b)['json'](_0x306e30);}};}function respondWithFilteredResult(_0x2ff955,_0x5c8b68){return function(_0x13ec03){if(_0x13ec03){var _0x211f5e=typeof _0x5c8b68[_0x42d3('0x2c')]===_0x42d3('0x2d')&&typeof _0x5c8b68['limit']===_0x42d3('0x2d');var _0x4a0e06=_0x13ec03[_0x42d3('0x2e')];var _0x254947=_0x211f5e?0x0:_0x5c8b68['offset'];var _0x560fc8=_0x211f5e?_0x13ec03[_0x42d3('0x2e')]:_0x5c8b68['offset']+_0x5c8b68[_0x42d3('0x2f')];var _0x2c70b7;if(_0x560fc8>=_0x4a0e06){_0x560fc8=_0x4a0e06;_0x2c70b7=0xc8;}else{_0x2c70b7=0xce;}_0x2ff955[_0x42d3('0x2a')](_0x2c70b7);return _0x2ff955[_0x42d3('0x30')](_0x42d3('0x31'),_0x254947+'-'+_0x560fc8+'/'+_0x4a0e06)[_0x42d3('0x32')](_0x13ec03);}return null;};}function patchUpdates(_0x4e62fc){return function(_0x2e1398){try{jsonpatch['apply'](_0x2e1398,_0x4e62fc,!![]);}catch(_0x5699e2){return BPromise[_0x42d3('0x33')](_0x5699e2);}return _0x2e1398[_0x42d3('0x34')]();};}function saveUpdates(_0x49b10c,_0x3dbcb1){return function(_0x1fc760){if(_0x1fc760){return _0x1fc760['update'](_0x49b10c)['then'](function(_0x4b7aa3){return _0x4b7aa3;});}return null;};}function removeEntity(_0x42afa6,_0x3fd0ec){return function(_0xb7615a){if(_0xb7615a){return _0xb7615a['destroy']()[_0x42d3('0x1e')](function(){_0x42afa6[_0x42d3('0x2a')](0xcc)[_0x42d3('0x2b')]();});}};}function handleEntityNotFound(_0x5106bd,_0x5d6e56){return function(_0x437929){if(!_0x437929){_0x5106bd[_0x42d3('0x29')](0x194);}return _0x437929;};}function handleError(_0x2053da,_0x13f02d){_0x13f02d=_0x13f02d||0x1f4;return function(_0x11c028){logger[_0x42d3('0x25')](_0x11c028[_0x42d3('0x35')]);if(_0x11c028[_0x42d3('0x36')]){delete _0x11c028[_0x42d3('0x36')];}_0x2053da[_0x42d3('0x2a')](_0x13f02d)[_0x42d3('0x37')](_0x11c028);};}exports[_0x42d3('0x38')]=function(_0x216112,_0x336c41){var _0x343c45={},_0x1fe9dc={},_0x5c1215={'count':0x0,'rows':[]};var _0x41cdd3=_['map'](db['ChatMessage'][_0x42d3('0x39')],function(_0x1ed69f){return{'name':_0x1ed69f['fieldName'],'type':_0x1ed69f[_0x42d3('0x3a')][_0x42d3('0x3b')]};});_0x1fe9dc[_0x42d3('0x3c')]=_['map'](_0x41cdd3,_0x42d3('0x36'));_0x1fe9dc['query']=_[_0x42d3('0x3d')](_0x216112[_0x42d3('0x3e')]);_0x1fe9dc[_0x42d3('0x3f')]=_['intersection'](_0x1fe9dc[_0x42d3('0x3c')],_0x1fe9dc[_0x42d3('0x3e')]);_0x343c45[_0x42d3('0x40')]=_[_0x42d3('0x41')](_0x1fe9dc['model'],qs[_0x42d3('0x42')](_0x216112[_0x42d3('0x3e')][_0x42d3('0x42')]));_0x343c45['attributes']=_0x343c45['attributes'][_0x42d3('0x43')]?_0x343c45[_0x42d3('0x40')]:_0x1fe9dc[_0x42d3('0x3c')];if(!_0x216112['query'][_0x42d3('0x44')](_0x42d3('0x45'))){_0x343c45[_0x42d3('0x2f')]=qs[_0x42d3('0x2f')](_0x216112[_0x42d3('0x3e')][_0x42d3('0x2f')]);_0x343c45[_0x42d3('0x2c')]=qs[_0x42d3('0x2c')](_0x216112[_0x42d3('0x3e')][_0x42d3('0x2c')]);}_0x343c45['order']=qs[_0x42d3('0x46')](_0x216112[_0x42d3('0x3e')][_0x42d3('0x46')]);_0x343c45[_0x42d3('0x47')]=qs['filters'](_[_0x42d3('0x48')](_0x216112[_0x42d3('0x3e')],_0x1fe9dc[_0x42d3('0x3f')]),_0x41cdd3);if(_0x216112[_0x42d3('0x3e')][_0x42d3('0x49')]){_0x343c45[_0x42d3('0x47')]=_['merge'](_0x343c45[_0x42d3('0x47')],{'$or':_[_0x42d3('0x4a')](_0x41cdd3,function(_0x489132){if(_0x489132[_0x42d3('0x3a')]!=='VIRTUAL'){var _0x468801={};_0x468801[_0x489132[_0x42d3('0x36')]]={'$like':'%'+_0x216112[_0x42d3('0x3e')][_0x42d3('0x49')]+'%'};return _0x468801;}})});}_0x343c45=_[_0x42d3('0x4b')]({},_0x343c45,_0x216112[_0x42d3('0x4c')]);var _0x53e334={'where':_0x343c45['where']};return db[_0x42d3('0x4d')][_0x42d3('0x2e')](_0x53e334)[_0x42d3('0x1e')](function(_0x1b0798){_0x5c1215[_0x42d3('0x2e')]=_0x1b0798;if(_0x216112[_0x42d3('0x3e')][_0x42d3('0x4e')]){_0x343c45['include']=[{'all':!![]}];}return db[_0x42d3('0x4d')][_0x42d3('0x4f')](_0x343c45);})[_0x42d3('0x1e')](function(_0x32e73a){_0x5c1215['rows']=_0x32e73a;return _0x5c1215;})['then'](respondWithFilteredResult(_0x336c41,_0x343c45))[_0x42d3('0x28')](handleError(_0x336c41,null));};exports[_0x42d3('0x50')]=function(_0x475bc0,_0x20e895){var _0x35fb71={'raw':!![],'where':{'id':_0x475bc0[_0x42d3('0x51')]['id']}},_0x49c816={};_0x49c816[_0x42d3('0x3c')]=_[_0x42d3('0x3d')](db['ChatMessage'][_0x42d3('0x39')]);_0x49c816[_0x42d3('0x3e')]=_[_0x42d3('0x3d')](_0x475bc0[_0x42d3('0x3e')]);_0x49c816[_0x42d3('0x3f')]=_['intersection'](_0x49c816[_0x42d3('0x3c')],_0x49c816[_0x42d3('0x3e')]);_0x35fb71['attributes']=_[_0x42d3('0x41')](_0x49c816[_0x42d3('0x3c')],qs[_0x42d3('0x42')](_0x475bc0[_0x42d3('0x3e')][_0x42d3('0x42')]));_0x35fb71[_0x42d3('0x40')]=_0x35fb71['attributes'][_0x42d3('0x43')]?_0x35fb71['attributes']:_0x49c816['model'];if(_0x475bc0[_0x42d3('0x3e')][_0x42d3('0x4e')]){_0x35fb71[_0x42d3('0x52')]=[{'all':!![]}];}_0x35fb71=_['merge']({},_0x35fb71,_0x475bc0[_0x42d3('0x4c')]);return db['ChatMessage'][_0x42d3('0x53')](_0x35fb71)[_0x42d3('0x1e')](handleEntityNotFound(_0x20e895,null))[_0x42d3('0x1e')](respondWithResult(_0x20e895,null))[_0x42d3('0x28')](handleError(_0x20e895,null));};exports['create']=function(_0x301b90,_0x24e836){return db[_0x42d3('0x4d')][_0x42d3('0x54')](_0x301b90[_0x42d3('0x55')],{})[_0x42d3('0x1e')](respondWithResult(_0x24e836,0xc9))[_0x42d3('0x28')](handleError(_0x24e836,null));};exports[_0x42d3('0x56')]=function(_0x226ea4,_0x4daab6){if(_0x226ea4[_0x42d3('0x55')]['id']){delete _0x226ea4[_0x42d3('0x55')]['id'];}return db[_0x42d3('0x4d')][_0x42d3('0x53')]({'where':{'id':_0x226ea4['params']['id']}})['then'](handleEntityNotFound(_0x4daab6,null))[_0x42d3('0x1e')](saveUpdates(_0x226ea4[_0x42d3('0x55')],null))[_0x42d3('0x1e')](respondWithResult(_0x4daab6,null))[_0x42d3('0x28')](handleError(_0x4daab6,null));};exports[_0x42d3('0x57')]=function(_0x3c07c8,_0x1929c4){return db[_0x42d3('0x4d')]['find']({'where':{'id':_0x3c07c8[_0x42d3('0x51')]['id']}})[_0x42d3('0x1e')](handleEntityNotFound(_0x1929c4,null))[_0x42d3('0x1e')](removeEntity(_0x1929c4,null))[_0x42d3('0x28')](handleError(_0x1929c4,null));};exports[_0x42d3('0x58')]=function(_0x46894a,_0x52b5fc){return db[_0x42d3('0x4d')][_0x42d3('0x58')]()[_0x42d3('0x1e')](respondWithResult(_0x52b5fc,null))['catch'](handleError(_0x52b5fc,null));};var interaction_log=require(_0x42d3('0x11'))('chat-interactions');exports[_0x42d3('0x59')]=function(_0x3c8751,_0x332eb2,_0x5a4a47){var _0x46b19a={'agent':{},'channel':_0x42d3('0x5a')};if(_0x3c8751[_0x42d3('0x55')]['id']){delete _0x3c8751['body']['id'];}_0x3c8751[_0x42d3('0x55')][_0x42d3('0x5b')]=!![];_0x3c8751['body']['readAt']=moment()[_0x42d3('0x5c')](_0x42d3('0x5d'));_0x3c8751['body'][_0x42d3('0x5e')]=_0x3c8751[_0x42d3('0x55')][_0x42d3('0x5e')]||_0x3c8751[_0x42d3('0x5f')]['id'];_0x46b19a[_0x42d3('0x60')]['id']=_0x3c8751[_0x42d3('0x55')][_0x42d3('0x5e')];return db[_0x42d3('0x4d')]['find']({'where':{'id':_0x3c8751[_0x42d3('0x51')]['id'],'UserId':null}})[_0x42d3('0x1e')](handleEntityNotFound(_0x332eb2,null))[_0x42d3('0x1e')](saveUpdates(_0x3c8751['body'],null))[_0x42d3('0x1e')](function(_0x5abc9d){if(_0x5abc9d){_0x46b19a[_0x42d3('0x27')]=_0x5abc9d['get']({'plain':!![]});return db[_0x42d3('0x61')][_0x42d3('0x53')]({'where':{'id':_0x5abc9d[_0x42d3('0x62')]}});}return null;})[_0x42d3('0x1e')](handleEntityNotFound(_0x332eb2,null))[_0x42d3('0x1e')](function(_0x51bdf){if(_0x51bdf){return _0x51bdf[_0x42d3('0x56')]({'UserId':_0x3c8751[_0x42d3('0x55')][_0x42d3('0x5e')],'read1stAt':_['isNil'](_0x51bdf[_0x42d3('0x63')])?moment()[_0x42d3('0x5c')](_0x42d3('0x5d')):undefined});}return null;})[_0x42d3('0x1e')](function(_0x3aacef){if(_0x3aacef){_0x46b19a[_0x42d3('0x64')]=_0x3aacef[_0x42d3('0x65')]({'plain':!![]});interaction_log['info'](_0x42d3('0x66'),_0x3c8751[_0x42d3('0x5f')]['id'],_0x3c8751[_0x42d3('0x5f')][_0x42d3('0x36')],_0x3c8751['user'][_0x42d3('0x67')],_0x46b19a[_0x42d3('0x64')]['id'],_0x3c8751[_0x42d3('0x55')]?JSON['stringify'](_0x3c8751[_0x42d3('0x55')]):_0x42d3('0x68'));return respondWithRpcPromise(_0x42d3('0x69'),'acceptMessage',_0x46b19a);}return null;})[_0x42d3('0x1e')](function(_0x736f67){var _0x408d02=_0x42d3('0x6a')+_0x736f67['message'][_0x42d3('0x6b')];return db[_0x42d3('0x6c')][_0x42d3('0x3e')](_0x408d02,{'type':db[_0x42d3('0x6d')][_0x42d3('0x6e')][_0x42d3('0x6f')],'raw':!![]})[_0x42d3('0x1e')](function(_0x3c262a){return _0x3c262a;});})[_0x42d3('0x1e')](function(_0x429921){if(_0x429921){_0x46b19a['message'][_0x42d3('0x70')]=_0x429921[0x0];if(!_0x3c8751[_0x42d3('0x55')]['UserId'])return;return db[_0x42d3('0x71')][_0x42d3('0x53')]({'where':{'id':_0x3c8751['body'][_0x42d3('0x5e')],'role':_0x42d3('0x60')},'attributes':['id',_0x42d3('0x36'),_0x42d3('0x72'),_0x42d3('0x73'),_0x42d3('0x74')],'raw':!![]});}return null;})['then'](function(_0xf04261){if(!_0xf04261)return null;_0x46b19a[_0x42d3('0x27')]['agent']=_0xf04261;return _0x46b19a;})[_0x42d3('0x1e')](function(_0x3ed984){if(_0x3ed984){if(_0x3c8751[_0x42d3('0x55')][_0x42d3('0x75')]){_0x46b19a[_0x42d3('0x27')]['interface']=util['format'](_0x42d3('0x76'),_0x3c8751[_0x42d3('0x5f')][_0x42d3('0x36')]);_0x46b19a[_0x42d3('0x27')][_0x42d3('0x77')]=_0x46b19a[_0x42d3('0x77')];_0x46b19a[_0x42d3('0x27')][_0x42d3('0x78')]=_0x46b19a[_0x42d3('0x77')];_0x46b19a[_0x42d3('0x27')][_0x42d3('0x79')]=_0x42d3('0x59');return respondWithRpcPromise('EventManager',_0x42d3('0x7a'),{'event':_0x42d3('0x7b'),'message':_['merge'](_0x46b19a[_0x42d3('0x27')],JSON['parse'](_0x46b19a[_0x42d3('0x64')][_0x42d3('0x7c')]))},client9002)['then'](function(){return _0x46b19a;});}return _0x46b19a;}return null;})[_0x42d3('0x1e')](respondWithResult(_0x332eb2,null))[_0x42d3('0x28')](handleError(_0x332eb2,null));};var interaction_log=require(_0x42d3('0x11'))('chat-interactions');exports[_0x42d3('0x33')]=function(_0x16452a,_0x4ca127,_0x325d61){var _0x1e4fd2={'agent':{},'channel':_0x42d3('0x5a')};if(_0x16452a[_0x42d3('0x55')]['id']){delete _0x16452a[_0x42d3('0x55')]['id'];}_0x16452a['body'][_0x42d3('0x5e')]=_0x16452a[_0x42d3('0x55')]['UserId']||_0x16452a[_0x42d3('0x5f')]['id'];_0x1e4fd2[_0x42d3('0x60')]['id']=_0x16452a[_0x42d3('0x55')][_0x42d3('0x5e')];return db[_0x42d3('0x4d')][_0x42d3('0x53')]({'where':{'id':_0x16452a[_0x42d3('0x51')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x4ca127,null))[_0x42d3('0x1e')](function(_0x11eb10){if(_0x11eb10){_0x1e4fd2[_0x42d3('0x27')]=_0x11eb10[_0x42d3('0x65')]({'plain':!![]});return db[_0x42d3('0x61')][_0x42d3('0x53')]({'where':{'id':_0x11eb10[_0x42d3('0x62')]}});}return null;})['then'](handleEntityNotFound(_0x4ca127,null))[_0x42d3('0x1e')](function(_0x583131){if(_0x583131){_0x1e4fd2[_0x42d3('0x64')]=_0x583131[_0x42d3('0x65')]({'plain':!![]});interaction_log[_0x42d3('0x1f')](_0x42d3('0x7d'),_0x16452a[_0x42d3('0x5f')]['id'],_0x16452a[_0x42d3('0x5f')][_0x42d3('0x36')],_0x16452a['user'][_0x42d3('0x67')],_0x1e4fd2[_0x42d3('0x64')]['id'],_0x16452a['body']?JSON['stringify'](_0x16452a['body']):'null');return respondWithRpcPromise(_0x42d3('0x7e'),_0x42d3('0x7f'),_0x1e4fd2);}return null;})[_0x42d3('0x1e')](function(_0x5c79f7){var _0x18fe92=_0x42d3('0x6a')+_0x5c79f7[_0x42d3('0x27')][_0x42d3('0x6b')];return db[_0x42d3('0x6c')][_0x42d3('0x3e')](_0x18fe92,{'type':db['Sequelize'][_0x42d3('0x6e')][_0x42d3('0x6f')],'raw':!![]})[_0x42d3('0x1e')](function(_0xe27a4b){return _0xe27a4b;});})[_0x42d3('0x1e')](function(_0x411ee4){if(_0x411ee4){_0x1e4fd2['message'][_0x42d3('0x70')]=_0x411ee4[0x0];if(!_0x16452a[_0x42d3('0x55')][_0x42d3('0x5e')])return;return db[_0x42d3('0x71')]['find']({'where':{'id':_0x16452a['body'][_0x42d3('0x5e')],'role':'agent'},'attributes':['id','name','fullname',_0x42d3('0x73'),_0x42d3('0x74')],'raw':!![]});}return null;})['then'](function(_0x397552){if(!_0x397552)return null;_0x1e4fd2[_0x42d3('0x27')][_0x42d3('0x60')]=_0x397552;return _0x1e4fd2;})[_0x42d3('0x1e')](function(_0x3538d7){if(_0x3538d7){_0x3538d7[_0x42d3('0x27')][_0x42d3('0x80')]=util[_0x42d3('0x5c')]('SIP/%s',_0x16452a['user'][_0x42d3('0x36')]);_0x3538d7[_0x42d3('0x27')][_0x42d3('0x77')]=_0x1e4fd2['channel'];_0x3538d7[_0x42d3('0x27')][_0x42d3('0x78')]=_0x1e4fd2[_0x42d3('0x77')];_0x3538d7['message'][_0x42d3('0x79')]=_0x42d3('0x33');respondWithRpcPromise(_0x42d3('0x7a'),_0x42d3('0x7a'),{'event':_0x42d3('0x81'),'message':_['merge'](_0x1e4fd2[_0x42d3('0x27')],JSON[_0x42d3('0x82')](_0x1e4fd2[_0x42d3('0x64')][_0x42d3('0x7c')]))},client9002);return _0x1e4fd2;}return null;})['then'](respondWithResult(_0x4ca127,null))[_0x42d3('0x28')](handleError(_0x4ca127,null));};
\ No newline at end of file