Built motion from commit c738b9ac.|2.6.25
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index d2c3f65..4218708 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x7a97=['includeAll','include','find','create','body','chat-interactions','accept','chat','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','UserId','user','agent','get','ChatInteraction','isNil','interaction','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','null','AcceptMessage','acceptMessage','manual','interface','channel','event','EventManager','acceptmessage','parse','formData','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','stringify','RejectMessage','rejectMessage','SIP/%s','rejectmessage','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','./chatMessage.socket','register','jayson/promise','client','http','request','info','ChatMessage,\x20%s,\x20%s','request\x20sent','debug','ChatMessage,\x20%s,\x20%s,\x20%s','error','code','message','result','catch','status','end','count','limit','Content-Range','json','apply','save','update','destroy','then','send','index','map','rawAttributes','type','model','name','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','offset','order','sort','where','filter','merge','VIRTUAL','options','ChatMessage','findAll','rows','show','params'];(function(_0x5c5111,_0x8ad429){var _0x5166ae=function(_0x15ffce){while(--_0x15ffce){_0x5c5111['push'](_0x5c5111['shift']());}};_0x5166ae(++_0x8ad429);}(_0x7a97,0x9e));var _0x77a9=function(_0x25194d,_0x4998c1){_0x25194d=_0x25194d-0x0;var _0x6814af=_0x7a97[_0x25194d];return _0x6814af;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require(_0x77a9('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x77a9('0x1'));var rp=require(_0x77a9('0x2'));var moment=require(_0x77a9('0x3'));var BPromise=require(_0x77a9('0x4'));var Mustache=require(_0x77a9('0x5'));var util=require(_0x77a9('0x6'));var path=require(_0x77a9('0x7'));var sox=require('sox');var csv=require(_0x77a9('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x77a9('0x9'));var squel=require('squel');var crypto=require(_0x77a9('0xa'));var jsforce=require(_0x77a9('0xb'));var deskjs=require(_0x77a9('0xc'));var toCsv=require('to-csv');var querystring=require(_0x77a9('0xd'));var Papa=require(_0x77a9('0xe'));var Redis=require(_0x77a9('0xf'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x77a9('0x10'));var hardwareService=require(_0x77a9('0x11'));var logger=require(_0x77a9('0x12'))('api');var utils=require(_0x77a9('0x13'));var config=require(_0x77a9('0x14'));var licenseUtil=require(_0x77a9('0x15'));var db=require(_0x77a9('0x16'))['db'];config[_0x77a9('0x17')]=_[_0x77a9('0x18')](config[_0x77a9('0x17')],{'host':'localhost','port':0x18eb});var socket=require(_0x77a9('0x19'))(new Redis(config[_0x77a9('0x17')]));require(_0x77a9('0x1a'))[_0x77a9('0x1b')](socket);var jayson=require(_0x77a9('0x1c'));var client=jayson[_0x77a9('0x1d')][_0x77a9('0x1e')]({'port':0x232c});var client9002=jayson[_0x77a9('0x1d')]['http']({'port':0x232a});function respondWithRpcPromise(_0x4e245b,_0x168eb3,_0xee674e,_0xc26c81){return new BPromise(function(_0x4d78b5,_0x3a842a){var _0x70305e=_0xc26c81||client;return _0x70305e[_0x77a9('0x1f')](_0x4e245b,_0xee674e)['then'](function(_0x30db9e){logger[_0x77a9('0x20')](_0x77a9('0x21'),_0x168eb3,_0x77a9('0x22'));logger[_0x77a9('0x23')](_0x77a9('0x24'),_0x168eb3,_0x77a9('0x22'),JSON['stringify'](_0x30db9e));if(_0x30db9e[_0x77a9('0x25')]){if(_0x30db9e[_0x77a9('0x25')][_0x77a9('0x26')]===0x1f4){logger[_0x77a9('0x25')](_0x77a9('0x21'),_0x168eb3,_0x30db9e[_0x77a9('0x25')]['message']);return _0x3a842a(_0x30db9e[_0x77a9('0x25')][_0x77a9('0x27')]);}logger[_0x77a9('0x25')](_0x77a9('0x21'),_0x168eb3,_0x30db9e[_0x77a9('0x25')][_0x77a9('0x27')]);return _0x4d78b5(_0x30db9e[_0x77a9('0x25')]['message']);}else{logger['info'](_0x77a9('0x21'),_0x168eb3,_0x77a9('0x22'));_0x4d78b5(_0x30db9e[_0x77a9('0x28')][_0x77a9('0x27')]);}})[_0x77a9('0x29')](function(_0x4e6416){logger[_0x77a9('0x25')]('ChatMessage,\x20%s,\x20%s',_0x168eb3,_0x4e6416);_0x3a842a(_0x4e6416);});});}function respondWithStatusCode(_0x26a223,_0x1e90ad){_0x1e90ad=_0x1e90ad||0xcc;return function(_0x508b3e){if(_0x508b3e){return _0x26a223['sendStatus'](_0x1e90ad);}return _0x26a223[_0x77a9('0x2a')](_0x1e90ad)[_0x77a9('0x2b')]();};}function respondWithResult(_0x3a3bf6,_0x35edb3){_0x35edb3=_0x35edb3||0xc8;return function(_0xa79aa){if(_0xa79aa){return _0x3a3bf6[_0x77a9('0x2a')](_0x35edb3)['json'](_0xa79aa);}};}function respondWithFilteredResult(_0x50b11e,_0x579a33){return function(_0x1db26b){if(_0x1db26b){var _0x3148cf=_0x1db26b[_0x77a9('0x2c')],_0x26974e=_0x579a33['offset'],_0x3a6708=_0x579a33['offset']+_0x579a33[_0x77a9('0x2d')],_0x35a5d4;if(_0x3a6708>=_0x3148cf){_0x3a6708=_0x3148cf;_0x35a5d4=0xc8;}else{_0x35a5d4=0xce;}_0x50b11e['status'](_0x35a5d4);return _0x50b11e['set'](_0x77a9('0x2e'),_0x26974e+'-'+_0x3a6708+'/'+_0x3148cf)[_0x77a9('0x2f')](_0x1db26b);}return null;};}function patchUpdates(_0x1bb2b1){return function(_0x52d080){try{jsonpatch[_0x77a9('0x30')](_0x52d080,_0x1bb2b1,!![]);}catch(_0x2c6f0f){return BPromise['reject'](_0x2c6f0f);}return _0x52d080[_0x77a9('0x31')]();};}function saveUpdates(_0x5c7f81,_0x3274a2){return function(_0x35f136){if(_0x35f136){return _0x35f136[_0x77a9('0x32')](_0x5c7f81)['then'](function(_0x16a386){return _0x16a386;});}return null;};}function removeEntity(_0x5c7d0,_0x3ce556){return function(_0x2561d0){if(_0x2561d0){return _0x2561d0[_0x77a9('0x33')]()[_0x77a9('0x34')](function(){_0x5c7d0[_0x77a9('0x2a')](0xcc)[_0x77a9('0x2b')]();});}};}function handleEntityNotFound(_0x2f0de6,_0x5957c9){return function(_0x45bbb8){if(!_0x45bbb8){_0x2f0de6['sendStatus'](0x194);}return _0x45bbb8;};}function handleError(_0xb9b23a,_0x28c105){_0x28c105=_0x28c105||0x1f4;return function(_0x3b0177){logger[_0x77a9('0x25')](_0x3b0177['stack']);if(_0x3b0177['name']){delete _0x3b0177['name'];}_0xb9b23a[_0x77a9('0x2a')](_0x28c105)[_0x77a9('0x35')](_0x3b0177);};}exports[_0x77a9('0x36')]=function(_0x2d106f,_0x240743){var _0x3c4b5a={},_0x4ff6fd={},_0x25ca83={'count':0x0,'rows':[]};var _0x3fd0f5=_[_0x77a9('0x37')](db['ChatMessage'][_0x77a9('0x38')],function(_0x2058cb){return{'name':_0x2058cb['fieldName'],'type':_0x2058cb[_0x77a9('0x39')]['key']};});_0x4ff6fd[_0x77a9('0x3a')]=_[_0x77a9('0x37')](_0x3fd0f5,_0x77a9('0x3b'));_0x4ff6fd[_0x77a9('0x3c')]=_[_0x77a9('0x3d')](_0x2d106f[_0x77a9('0x3c')]);_0x4ff6fd[_0x77a9('0x3e')]=_[_0x77a9('0x3f')](_0x4ff6fd[_0x77a9('0x3a')],_0x4ff6fd[_0x77a9('0x3c')]);_0x3c4b5a['attributes']=_[_0x77a9('0x3f')](_0x4ff6fd[_0x77a9('0x3a')],qs[_0x77a9('0x40')](_0x2d106f[_0x77a9('0x3c')][_0x77a9('0x40')]));_0x3c4b5a[_0x77a9('0x41')]=_0x3c4b5a[_0x77a9('0x41')][_0x77a9('0x42')]?_0x3c4b5a[_0x77a9('0x41')]:_0x4ff6fd[_0x77a9('0x3a')];if(!_0x2d106f[_0x77a9('0x3c')][_0x77a9('0x43')](_0x77a9('0x44'))){_0x3c4b5a[_0x77a9('0x2d')]=qs['limit'](_0x2d106f[_0x77a9('0x3c')][_0x77a9('0x2d')]);_0x3c4b5a[_0x77a9('0x45')]=qs[_0x77a9('0x45')](_0x2d106f[_0x77a9('0x3c')]['offset']);}_0x3c4b5a[_0x77a9('0x46')]=qs['sort'](_0x2d106f[_0x77a9('0x3c')][_0x77a9('0x47')]);_0x3c4b5a[_0x77a9('0x48')]=qs['filters'](_['pick'](_0x2d106f[_0x77a9('0x3c')],_0x4ff6fd[_0x77a9('0x3e')]),_0x3fd0f5);if(_0x2d106f[_0x77a9('0x3c')][_0x77a9('0x49')]){_0x3c4b5a[_0x77a9('0x48')]=_[_0x77a9('0x4a')](_0x3c4b5a['where'],{'$or':_[_0x77a9('0x37')](_0x3fd0f5,function(_0xa211d3){if(_0xa211d3[_0x77a9('0x39')]!==_0x77a9('0x4b')){var _0x255921={};_0x255921[_0xa211d3['name']]={'$like':'%'+_0x2d106f[_0x77a9('0x3c')]['filter']+'%'};return _0x255921;}})});}_0x3c4b5a=_['merge']({},_0x3c4b5a,_0x2d106f[_0x77a9('0x4c')]);var _0x2194ea={'where':_0x3c4b5a[_0x77a9('0x48')]};return db[_0x77a9('0x4d')][_0x77a9('0x2c')](_0x2194ea)[_0x77a9('0x34')](function(_0x3d7218){_0x25ca83['count']=_0x3d7218;if(_0x2d106f['query']['includeAll']){_0x3c4b5a['include']=[{'all':!![]}];}return db[_0x77a9('0x4d')][_0x77a9('0x4e')](_0x3c4b5a);})['then'](function(_0x532398){_0x25ca83[_0x77a9('0x4f')]=_0x532398;return _0x25ca83;})[_0x77a9('0x34')](respondWithFilteredResult(_0x240743,_0x3c4b5a))[_0x77a9('0x29')](handleError(_0x240743,null));};exports[_0x77a9('0x50')]=function(_0x3ada28,_0x565d95){var _0x57402={'raw':!![],'where':{'id':_0x3ada28[_0x77a9('0x51')]['id']}},_0x17ff9e={};_0x17ff9e[_0x77a9('0x3a')]=_[_0x77a9('0x3d')](db[_0x77a9('0x4d')][_0x77a9('0x38')]);_0x17ff9e['query']=_['keys'](_0x3ada28[_0x77a9('0x3c')]);_0x17ff9e[_0x77a9('0x3e')]=_[_0x77a9('0x3f')](_0x17ff9e[_0x77a9('0x3a')],_0x17ff9e[_0x77a9('0x3c')]);_0x57402[_0x77a9('0x41')]=_[_0x77a9('0x3f')](_0x17ff9e['model'],qs[_0x77a9('0x40')](_0x3ada28[_0x77a9('0x3c')][_0x77a9('0x40')]));_0x57402[_0x77a9('0x41')]=_0x57402[_0x77a9('0x41')][_0x77a9('0x42')]?_0x57402[_0x77a9('0x41')]:_0x17ff9e[_0x77a9('0x3a')];if(_0x3ada28[_0x77a9('0x3c')][_0x77a9('0x52')]){_0x57402[_0x77a9('0x53')]=[{'all':!![]}];}_0x57402=_[_0x77a9('0x4a')]({},_0x57402,_0x3ada28[_0x77a9('0x4c')]);return db[_0x77a9('0x4d')][_0x77a9('0x54')](_0x57402)[_0x77a9('0x34')](handleEntityNotFound(_0x565d95,null))[_0x77a9('0x34')](respondWithResult(_0x565d95,null))['catch'](handleError(_0x565d95,null));};exports[_0x77a9('0x55')]=function(_0x302e19,_0x217c7b){return db[_0x77a9('0x4d')]['create'](_0x302e19[_0x77a9('0x56')],{})[_0x77a9('0x34')](respondWithResult(_0x217c7b,0xc9))[_0x77a9('0x29')](handleError(_0x217c7b,null));};exports[_0x77a9('0x32')]=function(_0xd4d527,_0x1935d6){if(_0xd4d527[_0x77a9('0x56')]['id']){delete _0xd4d527['body']['id'];}return db['ChatMessage'][_0x77a9('0x54')]({'where':{'id':_0xd4d527[_0x77a9('0x51')]['id']}})['then'](handleEntityNotFound(_0x1935d6,null))[_0x77a9('0x34')](saveUpdates(_0xd4d527[_0x77a9('0x56')],null))['then'](respondWithResult(_0x1935d6,null))[_0x77a9('0x29')](handleError(_0x1935d6,null));};exports['destroy']=function(_0x5b22bf,_0x2bcc36){return db[_0x77a9('0x4d')][_0x77a9('0x54')]({'where':{'id':_0x5b22bf[_0x77a9('0x51')]['id']}})['then'](handleEntityNotFound(_0x2bcc36,null))[_0x77a9('0x34')](removeEntity(_0x2bcc36,null))[_0x77a9('0x29')](handleError(_0x2bcc36,null));};exports['describe']=function(_0x17f0ca,_0x456ea0){return db['ChatMessage']['describe']()[_0x77a9('0x34')](respondWithResult(_0x456ea0,null))[_0x77a9('0x29')](handleError(_0x456ea0,null));};var interaction_log=require(_0x77a9('0x12'))(_0x77a9('0x57'));exports[_0x77a9('0x58')]=function(_0x12c731,_0x1ff8b3,_0x542df9){var _0x190ebd={'agent':{},'channel':_0x77a9('0x59')};if(_0x12c731['body']['id']){delete _0x12c731[_0x77a9('0x56')]['id'];}_0x12c731[_0x77a9('0x56')][_0x77a9('0x5a')]=!![];_0x12c731[_0x77a9('0x56')][_0x77a9('0x5b')]=moment()[_0x77a9('0x5c')](_0x77a9('0x5d'));_0x12c731[_0x77a9('0x56')][_0x77a9('0x5e')]=_0x12c731['body'][_0x77a9('0x5e')]||_0x12c731[_0x77a9('0x5f')]['id'];_0x190ebd[_0x77a9('0x60')]['id']=_0x12c731[_0x77a9('0x56')][_0x77a9('0x5e')];return db['ChatMessage'][_0x77a9('0x54')]({'where':{'id':_0x12c731[_0x77a9('0x51')]['id'],'UserId':null},'include':[{'model':db['CmContact'],'as':'Contact'}]})['then'](handleEntityNotFound(_0x1ff8b3,null))[_0x77a9('0x34')](saveUpdates(_0x12c731[_0x77a9('0x56')],null))[_0x77a9('0x34')](function(_0x3c344a){if(_0x3c344a){_0x190ebd[_0x77a9('0x27')]=_0x3c344a[_0x77a9('0x61')]({'plain':!![]});return db[_0x77a9('0x62')]['find']({'where':{'id':_0x3c344a['ChatInteractionId']}});}return null;})[_0x77a9('0x34')](handleEntityNotFound(_0x1ff8b3,null))[_0x77a9('0x34')](function(_0x53e384){if(_0x53e384){return _0x53e384[_0x77a9('0x32')]({'UserId':_0x12c731[_0x77a9('0x56')]['UserId'],'read1stAt':_[_0x77a9('0x63')](_0x53e384['read1stAt'])?moment()[_0x77a9('0x5c')](_0x77a9('0x5d')):undefined});}return null;})[_0x77a9('0x34')](function(_0x52346f){if(_0x52346f){_0x190ebd[_0x77a9('0x64')]=_0x52346f[_0x77a9('0x61')]({'plain':!![]});interaction_log[_0x77a9('0x20')](_0x77a9('0x65'),_0x12c731[_0x77a9('0x5f')]['id'],_0x12c731['user'][_0x77a9('0x3b')],_0x12c731[_0x77a9('0x5f')][_0x77a9('0x66')],_0x190ebd['interaction']['id'],_0x12c731['body']?JSON['stringify'](_0x12c731[_0x77a9('0x56')]):_0x77a9('0x67'));return respondWithRpcPromise(_0x77a9('0x68'),_0x77a9('0x69'),_0x190ebd);}return null;})[_0x77a9('0x34')](function(_0x1f7208){if(_0x1f7208){if(_0x12c731[_0x77a9('0x56')][_0x77a9('0x6a')]){_0x190ebd[_0x77a9('0x27')][_0x77a9('0x6b')]=util['format']('SIP/%s',_0x12c731[_0x77a9('0x5f')]['name']);_0x190ebd[_0x77a9('0x27')][_0x77a9('0x6c')]=_0x190ebd[_0x77a9('0x6c')];_0x190ebd[_0x77a9('0x27')][_0x77a9('0x6d')]=_0x77a9('0x58');return respondWithRpcPromise(_0x77a9('0x6e'),_0x77a9('0x6e'),{'event':_0x77a9('0x6f'),'message':_[_0x77a9('0x4a')](_0x190ebd[_0x77a9('0x27')],JSON[_0x77a9('0x70')](_0x190ebd[_0x77a9('0x64')][_0x77a9('0x71')]))},client9002)[_0x77a9('0x34')](function(){return _0x190ebd;});}return _0x190ebd;}return null;})[_0x77a9('0x34')](respondWithResult(_0x1ff8b3,null))[_0x77a9('0x29')](handleError(_0x1ff8b3,null));};var interaction_log=require(_0x77a9('0x12'))(_0x77a9('0x57'));exports['reject']=function(_0x5e810c,_0x3a270c,_0x528405){var _0x117f6d={'agent':{},'channel':'chat'};if(_0x5e810c[_0x77a9('0x56')]['id']){delete _0x5e810c[_0x77a9('0x56')]['id'];}_0x5e810c[_0x77a9('0x56')]['UserId']=_0x5e810c['body'][_0x77a9('0x5e')]||_0x5e810c['user']['id'];_0x117f6d[_0x77a9('0x60')]['id']=_0x5e810c[_0x77a9('0x56')][_0x77a9('0x5e')];return db[_0x77a9('0x4d')]['find']({'where':{'id':_0x5e810c[_0x77a9('0x51')]['id'],'UserId':null}})[_0x77a9('0x34')](handleEntityNotFound(_0x3a270c,null))[_0x77a9('0x34')](function(_0x2def3f){if(_0x2def3f){_0x117f6d[_0x77a9('0x27')]=_0x2def3f['get']({'plain':!![]});return db['ChatInteraction']['find']({'where':{'id':_0x2def3f['ChatInteractionId']}});}return null;})[_0x77a9('0x34')](handleEntityNotFound(_0x3a270c,null))['then'](function(_0xf660fa){if(_0xf660fa){_0x117f6d['interaction']=_0xf660fa[_0x77a9('0x61')]({'plain':!![]});interaction_log[_0x77a9('0x20')](_0x77a9('0x72'),_0x5e810c['user']['id'],_0x5e810c[_0x77a9('0x5f')]['name'],_0x5e810c[_0x77a9('0x5f')][_0x77a9('0x66')],_0x117f6d[_0x77a9('0x64')]['id'],_0x5e810c[_0x77a9('0x56')]?JSON[_0x77a9('0x73')](_0x5e810c[_0x77a9('0x56')]):_0x77a9('0x67'));return respondWithRpcPromise(_0x77a9('0x74'),_0x77a9('0x75'),_0x117f6d);}return null;})['then'](function(_0x49bf5a){if(_0x49bf5a){_0x49bf5a[_0x77a9('0x27')][_0x77a9('0x6b')]=util[_0x77a9('0x5c')](_0x77a9('0x76'),_0x5e810c['user'][_0x77a9('0x3b')]);_0x49bf5a['message'][_0x77a9('0x6c')]=_0x117f6d[_0x77a9('0x6c')];_0x49bf5a[_0x77a9('0x27')][_0x77a9('0x6d')]='reject';respondWithRpcPromise(_0x77a9('0x6e'),_0x77a9('0x6e'),{'event':_0x77a9('0x77'),'message':_0x49bf5a[_0x77a9('0x27')]},client9002);return _0x117f6d;}return null;})[_0x77a9('0x34')](respondWithResult(_0x3a270c,null))[_0x77a9('0x29')](handleError(_0x3a270c,null));};
\ No newline at end of file
+var _0x1ae0=['params','describe','chat-interactions','accept','chat','format','UserId','user','agent','get','ChatInteractionId','read1stAt','interaction','null','AcceptMessage','acceptMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','Sequelize','QueryTypes','SELECT','User','email','internal','manual','interface','channel','event','EventManager','acceptmessage','parse','ChatInteraction','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','rejectMessage','contact','fullname','SIP/%s','motionChannel','formData','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','path','sox','to-csv','ejs','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./chatMessage.socket','register','jayson/promise','client','http','request','then','info','ChatMessage,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','result','catch','status','json','undefined','offset','limit','set','reject','save','update','destroy','end','sendStatus','stack','send','map','ChatMessage','rawAttributes','fieldName','key','model','name','query','keys','filters','intersection','attributes','length','hasOwnProperty','sort','where','pick','filter','merge','type','options','count','includeAll','include','rows','fields','create','body','find'];(function(_0x447b00,_0x44800a){var _0x315e68=function(_0x2391ff){while(--_0x2391ff){_0x447b00['push'](_0x447b00['shift']());}};_0x315e68(++_0x44800a);}(_0x1ae0,0xaa));var _0x01ae=function(_0x2cfc10,_0x401877){_0x2cfc10=_0x2cfc10-0x0;var _0x2cf73d=_0x1ae0[_0x2cfc10];return _0x2cf73d;};'use strict';var emlformat=require(_0x01ae('0x0'));var rimraf=require(_0x01ae('0x1'));var zipdir=require(_0x01ae('0x2'));var jsonpatch=require(_0x01ae('0x3'));var rp=require(_0x01ae('0x4'));var moment=require(_0x01ae('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x01ae('0x6'));var util=require('util');var path=require(_0x01ae('0x7'));var sox=require(_0x01ae('0x8'));var csv=require(_0x01ae('0x9'));var ejs=require(_0x01ae('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x01ae('0xb'));var squel=require(_0x01ae('0xc'));var crypto=require(_0x01ae('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x01ae('0xe'));var toCsv=require('to-csv');var querystring=require(_0x01ae('0xf'));var Papa=require(_0x01ae('0x10'));var Redis=require(_0x01ae('0x11'));var authService=require(_0x01ae('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x01ae('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x01ae('0x14'));var utils=require(_0x01ae('0x15'));var config=require(_0x01ae('0x16'));var licenseUtil=require(_0x01ae('0x17'));var db=require(_0x01ae('0x18'))['db'];config[_0x01ae('0x19')]=_[_0x01ae('0x1a')](config['redis'],{'host':_0x01ae('0x1b'),'port':0x18eb});var socket=require(_0x01ae('0x1c'))(new Redis(config[_0x01ae('0x19')]));require(_0x01ae('0x1d'))[_0x01ae('0x1e')](socket);var jayson=require(_0x01ae('0x1f'));var client=jayson[_0x01ae('0x20')][_0x01ae('0x21')]({'port':0x232c});var client9002=jayson['client'][_0x01ae('0x21')]({'port':0x232a});function respondWithRpcPromise(_0x34ac71,_0x54b0e1,_0x5ec912,_0x2d57e9){return new BPromise(function(_0x3a4736,_0x42ffae){var _0x5ef19b=_0x2d57e9||client;return _0x5ef19b[_0x01ae('0x22')](_0x34ac71,_0x5ec912)[_0x01ae('0x23')](function(_0x32bce9){logger[_0x01ae('0x24')](_0x01ae('0x25'),_0x54b0e1,_0x01ae('0x26'));logger['debug']('ChatMessage,\x20%s,\x20%s,\x20%s',_0x54b0e1,_0x01ae('0x26'),JSON[_0x01ae('0x27')](_0x32bce9));if(_0x32bce9[_0x01ae('0x28')]){if(_0x32bce9[_0x01ae('0x28')][_0x01ae('0x29')]===0x1f4){logger[_0x01ae('0x28')](_0x01ae('0x25'),_0x54b0e1,_0x32bce9[_0x01ae('0x28')][_0x01ae('0x2a')]);return _0x42ffae(_0x32bce9[_0x01ae('0x28')]['message']);}logger['error'](_0x01ae('0x25'),_0x54b0e1,_0x32bce9[_0x01ae('0x28')][_0x01ae('0x2a')]);return _0x3a4736(_0x32bce9[_0x01ae('0x28')][_0x01ae('0x2a')]);}else{logger['info'](_0x01ae('0x25'),_0x54b0e1,'request\x20sent');_0x3a4736(_0x32bce9[_0x01ae('0x2b')][_0x01ae('0x2a')]);}})[_0x01ae('0x2c')](function(_0x56bb96){logger[_0x01ae('0x28')](_0x01ae('0x25'),_0x54b0e1,_0x56bb96);_0x42ffae(_0x56bb96);});});}function respondWithStatusCode(_0x74b97e,_0x4d660d){_0x4d660d=_0x4d660d||0xcc;return function(_0xef85b){if(_0xef85b){return _0x74b97e['sendStatus'](_0x4d660d);}return _0x74b97e[_0x01ae('0x2d')](_0x4d660d)['end']();};}function respondWithResult(_0x1d9c18,_0xc3834){_0xc3834=_0xc3834||0xc8;return function(_0x4ff121){if(_0x4ff121){return _0x1d9c18[_0x01ae('0x2d')](_0xc3834)[_0x01ae('0x2e')](_0x4ff121);}};}function respondWithFilteredResult(_0x552b23,_0x173360){return function(_0x4efcd4){if(_0x4efcd4){var _0xaeca38=typeof _0x173360['offset']===_0x01ae('0x2f')&&typeof _0x173360['limit']==='undefined';var _0x40f202=_0x4efcd4['count'];var _0x3ca0aa=_0xaeca38?0x0:_0x173360[_0x01ae('0x30')];var _0x25f830=_0xaeca38?_0x4efcd4['count']:_0x173360['offset']+_0x173360[_0x01ae('0x31')];var _0x417f49;if(_0x25f830>=_0x40f202){_0x25f830=_0x40f202;_0x417f49=0xc8;}else{_0x417f49=0xce;}_0x552b23[_0x01ae('0x2d')](_0x417f49);return _0x552b23[_0x01ae('0x32')]('Content-Range',_0x3ca0aa+'-'+_0x25f830+'/'+_0x40f202)[_0x01ae('0x2e')](_0x4efcd4);}return null;};}function patchUpdates(_0x4fa3e3){return function(_0x59f99a){try{jsonpatch['apply'](_0x59f99a,_0x4fa3e3,!![]);}catch(_0x1b83c9){return BPromise[_0x01ae('0x33')](_0x1b83c9);}return _0x59f99a[_0x01ae('0x34')]();};}function saveUpdates(_0x59fde5,_0x2f0a63){return function(_0x4e052d){if(_0x4e052d){return _0x4e052d[_0x01ae('0x35')](_0x59fde5)[_0x01ae('0x23')](function(_0x5bd4d8){return _0x5bd4d8;});}return null;};}function removeEntity(_0xef0962,_0x461d5c){return function(_0x313901){if(_0x313901){return _0x313901[_0x01ae('0x36')]()[_0x01ae('0x23')](function(){_0xef0962['status'](0xcc)[_0x01ae('0x37')]();});}};}function handleEntityNotFound(_0x4f5be4,_0x566a40){return function(_0x588a0a){if(!_0x588a0a){_0x4f5be4[_0x01ae('0x38')](0x194);}return _0x588a0a;};}function handleError(_0x1b9984,_0x3815dd){_0x3815dd=_0x3815dd||0x1f4;return function(_0x5b9166){logger[_0x01ae('0x28')](_0x5b9166[_0x01ae('0x39')]);if(_0x5b9166['name']){delete _0x5b9166['name'];}_0x1b9984[_0x01ae('0x2d')](_0x3815dd)[_0x01ae('0x3a')](_0x5b9166);};}exports['index']=function(_0x2f8e0f,_0x5f249b){var _0x375d9d={},_0x1cd964={},_0xab4644={'count':0x0,'rows':[]};var _0x68186=_[_0x01ae('0x3b')](db[_0x01ae('0x3c')][_0x01ae('0x3d')],function(_0x2403a0){return{'name':_0x2403a0[_0x01ae('0x3e')],'type':_0x2403a0['type'][_0x01ae('0x3f')]};});_0x1cd964[_0x01ae('0x40')]=_[_0x01ae('0x3b')](_0x68186,_0x01ae('0x41'));_0x1cd964[_0x01ae('0x42')]=_[_0x01ae('0x43')](_0x2f8e0f[_0x01ae('0x42')]);_0x1cd964[_0x01ae('0x44')]=_[_0x01ae('0x45')](_0x1cd964['model'],_0x1cd964[_0x01ae('0x42')]);_0x375d9d[_0x01ae('0x46')]=_[_0x01ae('0x45')](_0x1cd964[_0x01ae('0x40')],qs['fields'](_0x2f8e0f[_0x01ae('0x42')]['fields']));_0x375d9d[_0x01ae('0x46')]=_0x375d9d[_0x01ae('0x46')][_0x01ae('0x47')]?_0x375d9d[_0x01ae('0x46')]:_0x1cd964[_0x01ae('0x40')];if(!_0x2f8e0f[_0x01ae('0x42')][_0x01ae('0x48')]('nolimit')){_0x375d9d[_0x01ae('0x31')]=qs[_0x01ae('0x31')](_0x2f8e0f[_0x01ae('0x42')][_0x01ae('0x31')]);_0x375d9d['offset']=qs[_0x01ae('0x30')](_0x2f8e0f[_0x01ae('0x42')][_0x01ae('0x30')]);}_0x375d9d['order']=qs['sort'](_0x2f8e0f['query'][_0x01ae('0x49')]);_0x375d9d[_0x01ae('0x4a')]=qs[_0x01ae('0x44')](_[_0x01ae('0x4b')](_0x2f8e0f[_0x01ae('0x42')],_0x1cd964[_0x01ae('0x44')]),_0x68186);if(_0x2f8e0f[_0x01ae('0x42')][_0x01ae('0x4c')]){_0x375d9d['where']=_[_0x01ae('0x4d')](_0x375d9d[_0x01ae('0x4a')],{'$or':_[_0x01ae('0x3b')](_0x68186,function(_0x1191f4){if(_0x1191f4[_0x01ae('0x4e')]!=='VIRTUAL'){var _0xbcee25={};_0xbcee25[_0x1191f4[_0x01ae('0x41')]]={'$like':'%'+_0x2f8e0f[_0x01ae('0x42')]['filter']+'%'};return _0xbcee25;}})});}_0x375d9d=_[_0x01ae('0x4d')]({},_0x375d9d,_0x2f8e0f[_0x01ae('0x4f')]);var _0x542989={'where':_0x375d9d[_0x01ae('0x4a')]};return db[_0x01ae('0x3c')][_0x01ae('0x50')](_0x542989)[_0x01ae('0x23')](function(_0x25b09a){_0xab4644[_0x01ae('0x50')]=_0x25b09a;if(_0x2f8e0f[_0x01ae('0x42')][_0x01ae('0x51')]){_0x375d9d[_0x01ae('0x52')]=[{'all':!![]}];}return db[_0x01ae('0x3c')]['findAll'](_0x375d9d);})['then'](function(_0x40fac1){_0xab4644[_0x01ae('0x53')]=_0x40fac1;return _0xab4644;})[_0x01ae('0x23')](respondWithFilteredResult(_0x5f249b,_0x375d9d))[_0x01ae('0x2c')](handleError(_0x5f249b,null));};exports['show']=function(_0x428352,_0x52f375){var _0x7b7df3={'raw':!![],'where':{'id':_0x428352['params']['id']}},_0x5282e5={};_0x5282e5[_0x01ae('0x40')]=_[_0x01ae('0x43')](db[_0x01ae('0x3c')][_0x01ae('0x3d')]);_0x5282e5[_0x01ae('0x42')]=_[_0x01ae('0x43')](_0x428352[_0x01ae('0x42')]);_0x5282e5[_0x01ae('0x44')]=_[_0x01ae('0x45')](_0x5282e5[_0x01ae('0x40')],_0x5282e5[_0x01ae('0x42')]);_0x7b7df3[_0x01ae('0x46')]=_[_0x01ae('0x45')](_0x5282e5[_0x01ae('0x40')],qs[_0x01ae('0x54')](_0x428352[_0x01ae('0x42')][_0x01ae('0x54')]));_0x7b7df3[_0x01ae('0x46')]=_0x7b7df3[_0x01ae('0x46')][_0x01ae('0x47')]?_0x7b7df3[_0x01ae('0x46')]:_0x5282e5['model'];if(_0x428352['query'][_0x01ae('0x51')]){_0x7b7df3[_0x01ae('0x52')]=[{'all':!![]}];}_0x7b7df3=_[_0x01ae('0x4d')]({},_0x7b7df3,_0x428352[_0x01ae('0x4f')]);return db['ChatMessage']['find'](_0x7b7df3)[_0x01ae('0x23')](handleEntityNotFound(_0x52f375,null))[_0x01ae('0x23')](respondWithResult(_0x52f375,null))[_0x01ae('0x2c')](handleError(_0x52f375,null));};exports[_0x01ae('0x55')]=function(_0x10d6bf,_0x2a9868){return db['ChatMessage'][_0x01ae('0x55')](_0x10d6bf[_0x01ae('0x56')],{})[_0x01ae('0x23')](respondWithResult(_0x2a9868,0xc9))[_0x01ae('0x2c')](handleError(_0x2a9868,null));};exports[_0x01ae('0x35')]=function(_0x271b14,_0x3d13a4){if(_0x271b14[_0x01ae('0x56')]['id']){delete _0x271b14[_0x01ae('0x56')]['id'];}return db[_0x01ae('0x3c')][_0x01ae('0x57')]({'where':{'id':_0x271b14['params']['id']}})['then'](handleEntityNotFound(_0x3d13a4,null))[_0x01ae('0x23')](saveUpdates(_0x271b14[_0x01ae('0x56')],null))[_0x01ae('0x23')](respondWithResult(_0x3d13a4,null))['catch'](handleError(_0x3d13a4,null));};exports[_0x01ae('0x36')]=function(_0x3d015f,_0x296f99){return db[_0x01ae('0x3c')]['find']({'where':{'id':_0x3d015f[_0x01ae('0x58')]['id']}})[_0x01ae('0x23')](handleEntityNotFound(_0x296f99,null))[_0x01ae('0x23')](removeEntity(_0x296f99,null))[_0x01ae('0x2c')](handleError(_0x296f99,null));};exports[_0x01ae('0x59')]=function(_0x36af5f,_0x56f158){return db[_0x01ae('0x3c')][_0x01ae('0x59')]()[_0x01ae('0x23')](respondWithResult(_0x56f158,null))[_0x01ae('0x2c')](handleError(_0x56f158,null));};var interaction_log=require('../../config/logger')(_0x01ae('0x5a'));exports[_0x01ae('0x5b')]=function(_0x16e3b4,_0x41e8d5,_0x24b7cd){var _0x3b74df={'agent':{},'channel':_0x01ae('0x5c')};if(_0x16e3b4['body']['id']){delete _0x16e3b4[_0x01ae('0x56')]['id'];}_0x16e3b4[_0x01ae('0x56')]['read']=!![];_0x16e3b4[_0x01ae('0x56')]['readAt']=moment()[_0x01ae('0x5d')]('YYYY-MM-DD\x20HH:mm:ss');_0x16e3b4[_0x01ae('0x56')][_0x01ae('0x5e')]=_0x16e3b4[_0x01ae('0x56')]['UserId']||_0x16e3b4[_0x01ae('0x5f')]['id'];_0x3b74df[_0x01ae('0x60')]['id']=_0x16e3b4[_0x01ae('0x56')][_0x01ae('0x5e')];return db[_0x01ae('0x3c')]['find']({'where':{'id':_0x16e3b4[_0x01ae('0x58')]['id'],'UserId':null}})[_0x01ae('0x23')](handleEntityNotFound(_0x41e8d5,null))['then'](saveUpdates(_0x16e3b4['body'],null))[_0x01ae('0x23')](function(_0x5f2cc8){if(_0x5f2cc8){_0x3b74df['message']=_0x5f2cc8[_0x01ae('0x61')]({'plain':!![]});return db['ChatInteraction']['find']({'where':{'id':_0x5f2cc8[_0x01ae('0x62')]}});}return null;})[_0x01ae('0x23')](handleEntityNotFound(_0x41e8d5,null))[_0x01ae('0x23')](function(_0x48dd03){if(_0x48dd03){return _0x48dd03[_0x01ae('0x35')]({'UserId':_0x16e3b4[_0x01ae('0x56')]['UserId'],'read1stAt':_['isNil'](_0x48dd03[_0x01ae('0x63')])?moment()['format']('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})['then'](function(_0x4fe1af){if(_0x4fe1af){_0x3b74df[_0x01ae('0x64')]=_0x4fe1af[_0x01ae('0x61')]({'plain':!![]});interaction_log[_0x01ae('0x24')]('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x16e3b4['user']['id'],_0x16e3b4[_0x01ae('0x5f')][_0x01ae('0x41')],_0x16e3b4['user']['role'],_0x3b74df[_0x01ae('0x64')]['id'],_0x16e3b4[_0x01ae('0x56')]?JSON[_0x01ae('0x27')](_0x16e3b4[_0x01ae('0x56')]):_0x01ae('0x65'));return respondWithRpcPromise(_0x01ae('0x66'),_0x01ae('0x67'),_0x3b74df);}return null;})[_0x01ae('0x23')](function(_0xfd518d){var _0x13bea5=_0x01ae('0x68')+_0xfd518d[_0x01ae('0x2a')][_0x01ae('0x69')];return db[_0x01ae('0x6a')][_0x01ae('0x42')](_0x13bea5,{'type':db[_0x01ae('0x6b')][_0x01ae('0x6c')][_0x01ae('0x6d')],'raw':!![]})['then'](function(_0x246701){return _0x246701;});})[_0x01ae('0x23')](function(_0x59fa4e){if(_0x59fa4e){_0x3b74df[_0x01ae('0x2a')]['contact']=_0x59fa4e[0x0];if(!_0x16e3b4[_0x01ae('0x56')][_0x01ae('0x5e')])return;return db[_0x01ae('0x6e')][_0x01ae('0x57')]({'where':{'id':_0x16e3b4[_0x01ae('0x56')][_0x01ae('0x5e')],'role':_0x01ae('0x60')},'attributes':['id',_0x01ae('0x41'),'fullname',_0x01ae('0x6f'),_0x01ae('0x70')],'raw':!![]});}return null;})[_0x01ae('0x23')](function(_0x1b7d68){if(!_0x1b7d68)return null;_0x3b74df[_0x01ae('0x2a')][_0x01ae('0x60')]=_0x1b7d68;return _0x3b74df;})['then'](function(_0x3b1a04){if(_0x3b1a04){if(_0x16e3b4[_0x01ae('0x56')][_0x01ae('0x71')]){_0x3b74df[_0x01ae('0x2a')][_0x01ae('0x72')]=util[_0x01ae('0x5d')]('SIP/%s',_0x16e3b4[_0x01ae('0x5f')][_0x01ae('0x41')]);_0x3b74df['message'][_0x01ae('0x73')]=_0x3b74df[_0x01ae('0x73')];_0x3b74df[_0x01ae('0x2a')]['motionChannel']=_0x3b74df['channel'];_0x3b74df['message'][_0x01ae('0x74')]=_0x01ae('0x5b');return respondWithRpcPromise(_0x01ae('0x75'),_0x01ae('0x75'),{'event':_0x01ae('0x76'),'message':_[_0x01ae('0x4d')](_0x3b74df['message'],JSON[_0x01ae('0x77')](_0x3b74df[_0x01ae('0x64')]['formData']))},client9002)[_0x01ae('0x23')](function(){return _0x3b74df;});}return _0x3b74df;}return null;})[_0x01ae('0x23')](respondWithResult(_0x41e8d5,null))[_0x01ae('0x2c')](handleError(_0x41e8d5,null));};var interaction_log=require('../../config/logger')(_0x01ae('0x5a'));exports[_0x01ae('0x33')]=function(_0x555f5e,_0x145236,_0x2c764e){var _0x4b8690={'agent':{},'channel':_0x01ae('0x5c')};if(_0x555f5e[_0x01ae('0x56')]['id']){delete _0x555f5e[_0x01ae('0x56')]['id'];}_0x555f5e[_0x01ae('0x56')][_0x01ae('0x5e')]=_0x555f5e[_0x01ae('0x56')][_0x01ae('0x5e')]||_0x555f5e[_0x01ae('0x5f')]['id'];_0x4b8690[_0x01ae('0x60')]['id']=_0x555f5e[_0x01ae('0x56')][_0x01ae('0x5e')];return db['ChatMessage'][_0x01ae('0x57')]({'where':{'id':_0x555f5e[_0x01ae('0x58')]['id'],'UserId':null}})[_0x01ae('0x23')](handleEntityNotFound(_0x145236,null))[_0x01ae('0x23')](function(_0x2b79a3){if(_0x2b79a3){_0x4b8690[_0x01ae('0x2a')]=_0x2b79a3[_0x01ae('0x61')]({'plain':!![]});return db[_0x01ae('0x78')][_0x01ae('0x57')]({'where':{'id':_0x2b79a3[_0x01ae('0x62')]}});}return null;})[_0x01ae('0x23')](handleEntityNotFound(_0x145236,null))[_0x01ae('0x23')](function(_0x146ac2){if(_0x146ac2){_0x4b8690[_0x01ae('0x64')]=_0x146ac2['get']({'plain':!![]});interaction_log['info'](_0x01ae('0x79'),_0x555f5e['user']['id'],_0x555f5e[_0x01ae('0x5f')][_0x01ae('0x41')],_0x555f5e[_0x01ae('0x5f')][_0x01ae('0x7a')],_0x4b8690['interaction']['id'],_0x555f5e[_0x01ae('0x56')]?JSON[_0x01ae('0x27')](_0x555f5e['body']):_0x01ae('0x65'));return respondWithRpcPromise('RejectMessage',_0x01ae('0x7b'),_0x4b8690);}return null;})['then'](function(_0x2c1930){var _0x25085a=_0x01ae('0x68')+_0x2c1930['message'][_0x01ae('0x69')];return db[_0x01ae('0x6a')]['query'](_0x25085a,{'type':db[_0x01ae('0x6b')]['QueryTypes'][_0x01ae('0x6d')],'raw':!![]})[_0x01ae('0x23')](function(_0x480e03){return _0x480e03;});})[_0x01ae('0x23')](function(_0x2df211){if(_0x2df211){_0x4b8690[_0x01ae('0x2a')][_0x01ae('0x7c')]=_0x2df211[0x0];if(!_0x555f5e['body']['UserId'])return;return db[_0x01ae('0x6e')][_0x01ae('0x57')]({'where':{'id':_0x555f5e[_0x01ae('0x56')][_0x01ae('0x5e')],'role':'agent'},'attributes':['id',_0x01ae('0x41'),_0x01ae('0x7d'),_0x01ae('0x6f'),'internal'],'raw':!![]});}return null;})[_0x01ae('0x23')](function(_0x30938d){if(!_0x30938d)return null;_0x4b8690[_0x01ae('0x2a')]['agent']=_0x30938d;return _0x4b8690;})[_0x01ae('0x23')](function(_0x258062){if(_0x258062){_0x258062['message'][_0x01ae('0x72')]=util[_0x01ae('0x5d')](_0x01ae('0x7e'),_0x555f5e[_0x01ae('0x5f')][_0x01ae('0x41')]);_0x258062[_0x01ae('0x2a')][_0x01ae('0x73')]=_0x4b8690[_0x01ae('0x73')];_0x258062[_0x01ae('0x2a')][_0x01ae('0x7f')]=_0x4b8690[_0x01ae('0x73')];_0x258062[_0x01ae('0x2a')][_0x01ae('0x74')]=_0x01ae('0x33');respondWithRpcPromise(_0x01ae('0x75'),_0x01ae('0x75'),{'event':'rejectmessage','message':_['merge'](_0x4b8690[_0x01ae('0x2a')],JSON[_0x01ae('0x77')](_0x4b8690[_0x01ae('0x64')][_0x01ae('0x80')]))},client9002);return _0x4b8690;}return null;})[_0x01ae('0x23')](respondWithResult(_0x145236,null))['catch'](handleError(_0x145236,null));};
\ No newline at end of file