Built motion from commit 25580385.|2.6.2
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index 506494b..9452c41 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 _0xfb68=['register','jayson/promise','client','http','request','then','info','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','ChatMessage,\x20%s,\x20%s','result','status','end','json','offset','undefined','count','limit','set','Content-Range','reject','save','update','destroy','sendStatus','stack','name','send','ChatMessage','rawAttributes','fieldName','type','key','model','keys','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','filters','filter','merge','map','options','includeAll','include','rows','show','params','find','catch','create','body','describe','accept','chat','read','readAt','format','UserId','user','agent','ChatInteractionId','isNil','read1stAt','interaction','get','role','null','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','QueryTypes','SELECT','User','fullname','email','internal','manual','SIP/%s','channel','motionChannel','event','EventManager','parse','chat-interactions','ChatInteraction','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','rejectMessage','contact','interface','formData','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','ejs','fs-extra','squel','crypto','jsforce','desk.js','to-csv','querystring','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','socket.io-emitter','./chatMessage.socket'];(function(_0x20627e,_0x1a28cd){var _0x2abff2=function(_0x35a065){while(--_0x35a065){_0x20627e['push'](_0x20627e['shift']());}};_0x2abff2(++_0x1a28cd);}(_0xfb68,0x68));var _0x8fb6=function(_0x3f6066,_0x1f307b){_0x3f6066=_0x3f6066-0x0;var _0x5dbd87=_0xfb68[_0x3f6066];return _0x5dbd87;};'use strict';var emlformat=require(_0x8fb6('0x0'));var rimraf=require(_0x8fb6('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x8fb6('0x2'));var rp=require(_0x8fb6('0x3'));var moment=require(_0x8fb6('0x4'));var BPromise=require(_0x8fb6('0x5'));var Mustache=require(_0x8fb6('0x6'));var util=require(_0x8fb6('0x7'));var path=require('path');var sox=require(_0x8fb6('0x8'));var csv=require('to-csv');var ejs=require(_0x8fb6('0x9'));var fs=require('fs');var fs_extra=require(_0x8fb6('0xa'));var _=require('lodash');var squel=require(_0x8fb6('0xb'));var crypto=require(_0x8fb6('0xc'));var jsforce=require(_0x8fb6('0xd'));var deskjs=require(_0x8fb6('0xe'));var toCsv=require(_0x8fb6('0xf'));var querystring=require(_0x8fb6('0x10'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x8fb6('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x8fb6('0x12'));var hardwareService=require(_0x8fb6('0x13'));var logger=require(_0x8fb6('0x14'))(_0x8fb6('0x15'));var utils=require('../../config/utils');var config=require(_0x8fb6('0x16'));var licenseUtil=require(_0x8fb6('0x17'));var db=require(_0x8fb6('0x18'))['db'];config[_0x8fb6('0x19')]=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x8fb6('0x1a'))(new Redis(config[_0x8fb6('0x19')]));require(_0x8fb6('0x1b'))[_0x8fb6('0x1c')](socket);var jayson=require(_0x8fb6('0x1d'));var client=jayson[_0x8fb6('0x1e')][_0x8fb6('0x1f')]({'port':0x232c});var client9002=jayson[_0x8fb6('0x1e')][_0x8fb6('0x1f')]({'port':0x232a});function respondWithRpcPromise(_0x25a6c5,_0x568c42,_0x356882,_0x1f8a76){return new BPromise(function(_0x4ac724,_0x135234){var _0x275c56=_0x1f8a76||client;return _0x275c56[_0x8fb6('0x20')](_0x25a6c5,_0x356882)[_0x8fb6('0x21')](function(_0x42b88a){logger[_0x8fb6('0x22')]('ChatMessage,\x20%s,\x20%s',_0x568c42,'request\x20sent');logger['debug'](_0x8fb6('0x23'),_0x568c42,'request\x20sent',JSON[_0x8fb6('0x24')](_0x42b88a));if(_0x42b88a[_0x8fb6('0x25')]){if(_0x42b88a[_0x8fb6('0x25')][_0x8fb6('0x26')]===0x1f4){logger['error']('ChatMessage,\x20%s,\x20%s',_0x568c42,_0x42b88a[_0x8fb6('0x25')]['message']);return _0x135234(_0x42b88a[_0x8fb6('0x25')][_0x8fb6('0x27')]);}logger['error']('ChatMessage,\x20%s,\x20%s',_0x568c42,_0x42b88a['error']['message']);return _0x4ac724(_0x42b88a['error'][_0x8fb6('0x27')]);}else{logger[_0x8fb6('0x22')](_0x8fb6('0x28'),_0x568c42,'request\x20sent');_0x4ac724(_0x42b88a[_0x8fb6('0x29')][_0x8fb6('0x27')]);}})['catch'](function(_0x224097){logger['error']('ChatMessage,\x20%s,\x20%s',_0x568c42,_0x224097);_0x135234(_0x224097);});});}function respondWithStatusCode(_0x5b4647,_0x87402a){_0x87402a=_0x87402a||0xcc;return function(_0x560772){if(_0x560772){return _0x5b4647['sendStatus'](_0x87402a);}return _0x5b4647[_0x8fb6('0x2a')](_0x87402a)[_0x8fb6('0x2b')]();};}function respondWithResult(_0xcb476e,_0x1ec6c7){_0x1ec6c7=_0x1ec6c7||0xc8;return function(_0x43e7d0){if(_0x43e7d0){return _0xcb476e['status'](_0x1ec6c7)[_0x8fb6('0x2c')](_0x43e7d0);}};}function respondWithFilteredResult(_0x21d30d,_0x4e39c9){return function(_0x1de8d2){if(_0x1de8d2){var _0x4165cc=typeof _0x4e39c9[_0x8fb6('0x2d')]===_0x8fb6('0x2e')&&typeof _0x4e39c9['limit']===_0x8fb6('0x2e');var _0x405538=_0x1de8d2[_0x8fb6('0x2f')];var _0x31f668=_0x4165cc?0x0:_0x4e39c9[_0x8fb6('0x2d')];var _0x1e6de6=_0x4165cc?_0x1de8d2[_0x8fb6('0x2f')]:_0x4e39c9[_0x8fb6('0x2d')]+_0x4e39c9[_0x8fb6('0x30')];var _0x3d8417;if(_0x1e6de6>=_0x405538){_0x1e6de6=_0x405538;_0x3d8417=0xc8;}else{_0x3d8417=0xce;}_0x21d30d[_0x8fb6('0x2a')](_0x3d8417);return _0x21d30d[_0x8fb6('0x31')](_0x8fb6('0x32'),_0x31f668+'-'+_0x1e6de6+'/'+_0x405538)[_0x8fb6('0x2c')](_0x1de8d2);}return null;};}function patchUpdates(_0x54db4d){return function(_0x37970f){try{jsonpatch['apply'](_0x37970f,_0x54db4d,!![]);}catch(_0x539699){return BPromise[_0x8fb6('0x33')](_0x539699);}return _0x37970f[_0x8fb6('0x34')]();};}function saveUpdates(_0x27bc6b,_0x4493aa){return function(_0x4c0f99){if(_0x4c0f99){return _0x4c0f99[_0x8fb6('0x35')](_0x27bc6b)[_0x8fb6('0x21')](function(_0x5e9d84){return _0x5e9d84;});}return null;};}function removeEntity(_0x5a887f,_0x5d51f5){return function(_0x373ce4){if(_0x373ce4){return _0x373ce4[_0x8fb6('0x36')]()[_0x8fb6('0x21')](function(){_0x5a887f[_0x8fb6('0x2a')](0xcc)[_0x8fb6('0x2b')]();});}};}function handleEntityNotFound(_0x1af87e,_0x3e3bb9){return function(_0x4a5974){if(!_0x4a5974){_0x1af87e[_0x8fb6('0x37')](0x194);}return _0x4a5974;};}function handleError(_0x352e03,_0x136068){_0x136068=_0x136068||0x1f4;return function(_0x15fa5a){logger[_0x8fb6('0x25')](_0x15fa5a[_0x8fb6('0x38')]);if(_0x15fa5a[_0x8fb6('0x39')]){delete _0x15fa5a['name'];}_0x352e03[_0x8fb6('0x2a')](_0x136068)[_0x8fb6('0x3a')](_0x15fa5a);};}exports['index']=function(_0x16498f,_0x3db826){var _0xae8f5e={},_0x30f23e={},_0x375c0c={'count':0x0,'rows':[]};var _0x2a177c=_['map'](db[_0x8fb6('0x3b')][_0x8fb6('0x3c')],function(_0xdc1a38){return{'name':_0xdc1a38[_0x8fb6('0x3d')],'type':_0xdc1a38[_0x8fb6('0x3e')][_0x8fb6('0x3f')]};});_0x30f23e[_0x8fb6('0x40')]=_['map'](_0x2a177c,_0x8fb6('0x39'));_0x30f23e['query']=_[_0x8fb6('0x41')](_0x16498f[_0x8fb6('0x42')]);_0x30f23e['filters']=_[_0x8fb6('0x43')](_0x30f23e[_0x8fb6('0x40')],_0x30f23e[_0x8fb6('0x42')]);_0xae8f5e[_0x8fb6('0x44')]=_['intersection'](_0x30f23e[_0x8fb6('0x40')],qs['fields'](_0x16498f[_0x8fb6('0x42')][_0x8fb6('0x45')]));_0xae8f5e[_0x8fb6('0x44')]=_0xae8f5e[_0x8fb6('0x44')][_0x8fb6('0x46')]?_0xae8f5e[_0x8fb6('0x44')]:_0x30f23e['model'];if(!_0x16498f[_0x8fb6('0x42')][_0x8fb6('0x47')](_0x8fb6('0x48'))){_0xae8f5e['limit']=qs[_0x8fb6('0x30')](_0x16498f[_0x8fb6('0x42')][_0x8fb6('0x30')]);_0xae8f5e[_0x8fb6('0x2d')]=qs['offset'](_0x16498f[_0x8fb6('0x42')][_0x8fb6('0x2d')]);}_0xae8f5e['order']=qs[_0x8fb6('0x49')](_0x16498f[_0x8fb6('0x42')][_0x8fb6('0x49')]);_0xae8f5e[_0x8fb6('0x4a')]=qs['filters'](_[_0x8fb6('0x4b')](_0x16498f[_0x8fb6('0x42')],_0x30f23e[_0x8fb6('0x4c')]),_0x2a177c);if(_0x16498f[_0x8fb6('0x42')][_0x8fb6('0x4d')]){_0xae8f5e[_0x8fb6('0x4a')]=_[_0x8fb6('0x4e')](_0xae8f5e[_0x8fb6('0x4a')],{'$or':_[_0x8fb6('0x4f')](_0x2a177c,function(_0x523ffb){if(_0x523ffb[_0x8fb6('0x3e')]!=='VIRTUAL'){var _0x3620a2={};_0x3620a2[_0x523ffb[_0x8fb6('0x39')]]={'$like':'%'+_0x16498f[_0x8fb6('0x42')][_0x8fb6('0x4d')]+'%'};return _0x3620a2;}})});}_0xae8f5e=_[_0x8fb6('0x4e')]({},_0xae8f5e,_0x16498f[_0x8fb6('0x50')]);var _0x5a4325={'where':_0xae8f5e['where']};return db[_0x8fb6('0x3b')][_0x8fb6('0x2f')](_0x5a4325)[_0x8fb6('0x21')](function(_0x197b0d){_0x375c0c['count']=_0x197b0d;if(_0x16498f[_0x8fb6('0x42')][_0x8fb6('0x51')]){_0xae8f5e[_0x8fb6('0x52')]=[{'all':!![]}];}return db[_0x8fb6('0x3b')]['findAll'](_0xae8f5e);})['then'](function(_0x33e4e1){_0x375c0c[_0x8fb6('0x53')]=_0x33e4e1;return _0x375c0c;})[_0x8fb6('0x21')](respondWithFilteredResult(_0x3db826,_0xae8f5e))['catch'](handleError(_0x3db826,null));};exports[_0x8fb6('0x54')]=function(_0x216162,_0x12a9ef){var _0x43be9e={'raw':!![],'where':{'id':_0x216162[_0x8fb6('0x55')]['id']}},_0x18239f={};_0x18239f[_0x8fb6('0x40')]=_['keys'](db[_0x8fb6('0x3b')][_0x8fb6('0x3c')]);_0x18239f[_0x8fb6('0x42')]=_['keys'](_0x216162['query']);_0x18239f[_0x8fb6('0x4c')]=_[_0x8fb6('0x43')](_0x18239f[_0x8fb6('0x40')],_0x18239f['query']);_0x43be9e[_0x8fb6('0x44')]=_[_0x8fb6('0x43')](_0x18239f[_0x8fb6('0x40')],qs[_0x8fb6('0x45')](_0x216162['query'][_0x8fb6('0x45')]));_0x43be9e[_0x8fb6('0x44')]=_0x43be9e['attributes']['length']?_0x43be9e[_0x8fb6('0x44')]:_0x18239f[_0x8fb6('0x40')];if(_0x216162[_0x8fb6('0x42')][_0x8fb6('0x51')]){_0x43be9e[_0x8fb6('0x52')]=[{'all':!![]}];}_0x43be9e=_['merge']({},_0x43be9e,_0x216162['options']);return db[_0x8fb6('0x3b')][_0x8fb6('0x56')](_0x43be9e)['then'](handleEntityNotFound(_0x12a9ef,null))['then'](respondWithResult(_0x12a9ef,null))[_0x8fb6('0x57')](handleError(_0x12a9ef,null));};exports['create']=function(_0x2492c0,_0x5585bc){return db['ChatMessage'][_0x8fb6('0x58')](_0x2492c0[_0x8fb6('0x59')],{})['then'](respondWithResult(_0x5585bc,0xc9))[_0x8fb6('0x57')](handleError(_0x5585bc,null));};exports['update']=function(_0x29a845,_0x4d88fd){if(_0x29a845['body']['id']){delete _0x29a845[_0x8fb6('0x59')]['id'];}return db[_0x8fb6('0x3b')][_0x8fb6('0x56')]({'where':{'id':_0x29a845[_0x8fb6('0x55')]['id']}})[_0x8fb6('0x21')](handleEntityNotFound(_0x4d88fd,null))[_0x8fb6('0x21')](saveUpdates(_0x29a845[_0x8fb6('0x59')],null))[_0x8fb6('0x21')](respondWithResult(_0x4d88fd,null))[_0x8fb6('0x57')](handleError(_0x4d88fd,null));};exports[_0x8fb6('0x36')]=function(_0x5303e9,_0x22760c){return db[_0x8fb6('0x3b')][_0x8fb6('0x56')]({'where':{'id':_0x5303e9[_0x8fb6('0x55')]['id']}})[_0x8fb6('0x21')](handleEntityNotFound(_0x22760c,null))[_0x8fb6('0x21')](removeEntity(_0x22760c,null))[_0x8fb6('0x57')](handleError(_0x22760c,null));};exports[_0x8fb6('0x5a')]=function(_0x4ae7d0,_0x3fd80a){return db[_0x8fb6('0x3b')][_0x8fb6('0x5a')]()[_0x8fb6('0x21')](respondWithResult(_0x3fd80a,null))[_0x8fb6('0x57')](handleError(_0x3fd80a,null));};var interaction_log=require(_0x8fb6('0x14'))('chat-interactions');exports[_0x8fb6('0x5b')]=function(_0x445ee5,_0xe37166,_0x57dcb4){var _0x563791={'agent':{},'channel':_0x8fb6('0x5c')};if(_0x445ee5['body']['id']){delete _0x445ee5[_0x8fb6('0x59')]['id'];}_0x445ee5[_0x8fb6('0x59')][_0x8fb6('0x5d')]=!![];_0x445ee5['body'][_0x8fb6('0x5e')]=moment()[_0x8fb6('0x5f')]('YYYY-MM-DD\x20HH:mm:ss');_0x445ee5[_0x8fb6('0x59')][_0x8fb6('0x60')]=_0x445ee5[_0x8fb6('0x59')]['UserId']||_0x445ee5[_0x8fb6('0x61')]['id'];_0x563791[_0x8fb6('0x62')]['id']=_0x445ee5[_0x8fb6('0x59')]['UserId'];return db[_0x8fb6('0x3b')]['find']({'where':{'id':_0x445ee5['params']['id'],'UserId':null}})[_0x8fb6('0x21')](handleEntityNotFound(_0xe37166,null))[_0x8fb6('0x21')](saveUpdates(_0x445ee5[_0x8fb6('0x59')],null))[_0x8fb6('0x21')](function(_0x506326){if(_0x506326){_0x563791[_0x8fb6('0x27')]=_0x506326['get']({'plain':!![]});return db['ChatInteraction']['find']({'where':{'id':_0x506326[_0x8fb6('0x63')]}});}return null;})[_0x8fb6('0x21')](handleEntityNotFound(_0xe37166,null))[_0x8fb6('0x21')](function(_0x47a150){if(_0x47a150){return _0x47a150[_0x8fb6('0x35')]({'UserId':_0x445ee5[_0x8fb6('0x59')][_0x8fb6('0x60')],'read1stAt':_[_0x8fb6('0x64')](_0x47a150[_0x8fb6('0x65')])?moment()[_0x8fb6('0x5f')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0x8fb6('0x21')](function(_0x4a5ba0){if(_0x4a5ba0){_0x563791[_0x8fb6('0x66')]=_0x4a5ba0[_0x8fb6('0x67')]({'plain':!![]});interaction_log['info']('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x445ee5[_0x8fb6('0x61')]['id'],_0x445ee5[_0x8fb6('0x61')][_0x8fb6('0x39')],_0x445ee5[_0x8fb6('0x61')][_0x8fb6('0x68')],_0x563791['interaction']['id'],_0x445ee5[_0x8fb6('0x59')]?JSON[_0x8fb6('0x24')](_0x445ee5[_0x8fb6('0x59')]):_0x8fb6('0x69'));return respondWithRpcPromise(_0x8fb6('0x6a'),_0x8fb6('0x6b'),_0x563791);}return null;})[_0x8fb6('0x21')](function(_0x1b42ec){var _0x348275=_0x8fb6('0x6c')+_0x1b42ec['message'][_0x8fb6('0x6d')];return db[_0x8fb6('0x6e')][_0x8fb6('0x42')](_0x348275,{'type':db[_0x8fb6('0x6f')][_0x8fb6('0x70')][_0x8fb6('0x71')],'raw':!![]})[_0x8fb6('0x21')](function(_0x2caa8f){return _0x2caa8f;});})['then'](function(_0x1a04ec){if(_0x1a04ec){_0x563791['message']['contact']=_0x1a04ec[0x0];if(!_0x445ee5[_0x8fb6('0x59')][_0x8fb6('0x60')])return;return db[_0x8fb6('0x72')][_0x8fb6('0x56')]({'where':{'id':_0x445ee5[_0x8fb6('0x59')]['UserId'],'role':_0x8fb6('0x62')},'attributes':['id',_0x8fb6('0x39'),_0x8fb6('0x73'),_0x8fb6('0x74'),_0x8fb6('0x75')],'raw':!![]});}return null;})[_0x8fb6('0x21')](function(_0x5b1a03){if(!_0x5b1a03)return null;_0x563791[_0x8fb6('0x27')][_0x8fb6('0x62')]=_0x5b1a03;return _0x563791;})[_0x8fb6('0x21')](function(_0x37ea24){if(_0x37ea24){if(_0x445ee5[_0x8fb6('0x59')][_0x8fb6('0x76')]){_0x563791[_0x8fb6('0x27')]['interface']=util[_0x8fb6('0x5f')](_0x8fb6('0x77'),_0x445ee5[_0x8fb6('0x61')][_0x8fb6('0x39')]);_0x563791[_0x8fb6('0x27')][_0x8fb6('0x78')]=_0x563791[_0x8fb6('0x78')];_0x563791[_0x8fb6('0x27')][_0x8fb6('0x79')]=_0x563791['channel'];_0x563791[_0x8fb6('0x27')][_0x8fb6('0x7a')]=_0x8fb6('0x5b');return respondWithRpcPromise(_0x8fb6('0x7b'),_0x8fb6('0x7b'),{'event':'acceptmessage','message':_['merge'](_0x563791[_0x8fb6('0x27')],JSON[_0x8fb6('0x7c')](_0x563791[_0x8fb6('0x66')]['formData']))},client9002)[_0x8fb6('0x21')](function(){return _0x563791;});}return _0x563791;}return null;})[_0x8fb6('0x21')](respondWithResult(_0xe37166,null))[_0x8fb6('0x57')](handleError(_0xe37166,null));};var interaction_log=require('../../config/logger')(_0x8fb6('0x7d'));exports[_0x8fb6('0x33')]=function(_0x3dafdf,_0x591733,_0x5be5a9){var _0x46430e={'agent':{},'channel':'chat'};if(_0x3dafdf[_0x8fb6('0x59')]['id']){delete _0x3dafdf[_0x8fb6('0x59')]['id'];}_0x3dafdf[_0x8fb6('0x59')][_0x8fb6('0x60')]=_0x3dafdf[_0x8fb6('0x59')]['UserId']||_0x3dafdf[_0x8fb6('0x61')]['id'];_0x46430e[_0x8fb6('0x62')]['id']=_0x3dafdf[_0x8fb6('0x59')]['UserId'];return db[_0x8fb6('0x3b')]['find']({'where':{'id':_0x3dafdf[_0x8fb6('0x55')]['id'],'UserId':null}})[_0x8fb6('0x21')](handleEntityNotFound(_0x591733,null))[_0x8fb6('0x21')](function(_0x100539){if(_0x100539){_0x46430e[_0x8fb6('0x27')]=_0x100539[_0x8fb6('0x67')]({'plain':!![]});return db[_0x8fb6('0x7e')][_0x8fb6('0x56')]({'where':{'id':_0x100539[_0x8fb6('0x63')]}});}return null;})['then'](handleEntityNotFound(_0x591733,null))['then'](function(_0x33cb23){if(_0x33cb23){_0x46430e['interaction']=_0x33cb23[_0x8fb6('0x67')]({'plain':!![]});interaction_log[_0x8fb6('0x22')](_0x8fb6('0x7f'),_0x3dafdf[_0x8fb6('0x61')]['id'],_0x3dafdf[_0x8fb6('0x61')][_0x8fb6('0x39')],_0x3dafdf['user'][_0x8fb6('0x68')],_0x46430e[_0x8fb6('0x66')]['id'],_0x3dafdf[_0x8fb6('0x59')]?JSON[_0x8fb6('0x24')](_0x3dafdf['body']):_0x8fb6('0x69'));return respondWithRpcPromise('RejectMessage',_0x8fb6('0x80'),_0x46430e);}return null;})[_0x8fb6('0x21')](function(_0x22f097){var _0x7694a9=_0x8fb6('0x6c')+_0x22f097[_0x8fb6('0x27')][_0x8fb6('0x6d')];return db[_0x8fb6('0x6e')][_0x8fb6('0x42')](_0x7694a9,{'type':db[_0x8fb6('0x6f')][_0x8fb6('0x70')][_0x8fb6('0x71')],'raw':!![]})[_0x8fb6('0x21')](function(_0x1aee07){return _0x1aee07;});})[_0x8fb6('0x21')](function(_0x217f3e){if(_0x217f3e){_0x46430e[_0x8fb6('0x27')][_0x8fb6('0x81')]=_0x217f3e[0x0];if(!_0x3dafdf[_0x8fb6('0x59')][_0x8fb6('0x60')])return;return db[_0x8fb6('0x72')]['find']({'where':{'id':_0x3dafdf[_0x8fb6('0x59')][_0x8fb6('0x60')],'role':'agent'},'attributes':['id','name',_0x8fb6('0x73'),_0x8fb6('0x74'),_0x8fb6('0x75')],'raw':!![]});}return null;})['then'](function(_0x4e8cda){if(!_0x4e8cda)return null;_0x46430e[_0x8fb6('0x27')][_0x8fb6('0x62')]=_0x4e8cda;return _0x46430e;})[_0x8fb6('0x21')](function(_0x32caa3){if(_0x32caa3){_0x32caa3['message'][_0x8fb6('0x82')]=util['format']('SIP/%s',_0x3dafdf[_0x8fb6('0x61')][_0x8fb6('0x39')]);_0x32caa3[_0x8fb6('0x27')][_0x8fb6('0x78')]=_0x46430e['channel'];_0x32caa3['message'][_0x8fb6('0x79')]=_0x46430e['channel'];_0x32caa3[_0x8fb6('0x27')][_0x8fb6('0x7a')]=_0x8fb6('0x33');respondWithRpcPromise(_0x8fb6('0x7b'),_0x8fb6('0x7b'),{'event':'rejectmessage','message':_[_0x8fb6('0x4e')](_0x46430e[_0x8fb6('0x27')],JSON[_0x8fb6('0x7c')](_0x46430e['interaction'][_0x8fb6('0x83')]))},client9002);return _0x46430e;}return null;})[_0x8fb6('0x21')](respondWithResult(_0x591733,null))['catch'](handleError(_0x591733,null));};
\ No newline at end of file