Built motion from commit b0a9a629.|2.6.33
[motion2.git] / server / api / chatMessage / chatMessage.controller.js
index ca3e0e1..8bca6a4 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xe6a5=['fields','attributes','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','count','findAll','rows','show','params','keys','rawAttributes','length','includeAll','include','find','create','body','destroy','describe','chat-interactions','accept','read','readAt','format','YYYY-MM-DD\x20HH:mm:ss','user','agent','UserId','CmContact','Contact','get','ChatInteraction','ChatInteractionId','isNil','info','[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','role','interaction','null','AcceptMessage','acceptMessage','manual','interface','channel','event','EventManager','acceptmessage','parse','formData','chat','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','RejectMessage','rejectMessage','SIP/%s','reject','rejectmessage','fast-json-patch','request-promise','moment','bluebird','util','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./chatMessage.socket','jayson/promise','client','http','then','ChatMessage,\x20%s,\x20%s','debug','request\x20sent','stringify','error','code','message','catch','sendStatus','end','json','offset','limit','Content-Range','apply','save','update','status','stack','name','send','index','map','ChatMessage','type','key','model','query','filters','intersection'];(function(_0x15f1fe,_0x11db4f){var _0x523d4b=function(_0x4687ff){while(--_0x4687ff){_0x15f1fe['push'](_0x15f1fe['shift']());}};_0x523d4b(++_0x11db4f);}(_0xe6a5,0x13b));var _0x5e6a=function(_0x4fa9ea,_0xb038d8){_0x4fa9ea=_0x4fa9ea-0x0;var _0x8a1ba7=_0xe6a5[_0x4fa9ea];return _0x8a1ba7;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x5e6a('0x0'));var rp=require(_0x5e6a('0x1'));var moment=require(_0x5e6a('0x2'));var BPromise=require(_0x5e6a('0x3'));var Mustache=require('mustache');var util=require(_0x5e6a('0x4'));var path=require('path');var sox=require(_0x5e6a('0x5'));var csv=require(_0x5e6a('0x6'));var ejs=require(_0x5e6a('0x7'));var fs=require('fs');var fs_extra=require(_0x5e6a('0x8'));var _=require(_0x5e6a('0x9'));var squel=require(_0x5e6a('0xa'));var crypto=require(_0x5e6a('0xb'));var jsforce=require(_0x5e6a('0xc'));var deskjs=require(_0x5e6a('0xd'));var toCsv=require(_0x5e6a('0x6'));var querystring=require(_0x5e6a('0xe'));var Papa=require('papaparse');var Redis=require(_0x5e6a('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x5e6a('0x10'));var as=require(_0x5e6a('0x11'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x5e6a('0x12'))(_0x5e6a('0x13'));var utils=require(_0x5e6a('0x14'));var config=require(_0x5e6a('0x15'));var licenseUtil=require(_0x5e6a('0x16'));var db=require(_0x5e6a('0x17'))['db'];config[_0x5e6a('0x18')]=_[_0x5e6a('0x19')](config['redis'],{'host':_0x5e6a('0x1a'),'port':0x18eb});var socket=require(_0x5e6a('0x1b'))(new Redis(config[_0x5e6a('0x18')]));require(_0x5e6a('0x1c'))['register'](socket);var jayson=require(_0x5e6a('0x1d'));var client=jayson[_0x5e6a('0x1e')]['http']({'port':0x232c});var client9002=jayson['client'][_0x5e6a('0x1f')]({'port':0x232a});function respondWithRpcPromise(_0x106880,_0x3bd464,_0x1fa157,_0x44ce66){return new BPromise(function(_0x53d663,_0x42692d){var _0xd71c9e=_0x44ce66||client;return _0xd71c9e['request'](_0x106880,_0x1fa157)[_0x5e6a('0x20')](function(_0xa5aa55){logger['info'](_0x5e6a('0x21'),_0x3bd464,'request\x20sent');logger[_0x5e6a('0x22')]('ChatMessage,\x20%s,\x20%s,\x20%s',_0x3bd464,_0x5e6a('0x23'),JSON[_0x5e6a('0x24')](_0xa5aa55));if(_0xa5aa55[_0x5e6a('0x25')]){if(_0xa5aa55[_0x5e6a('0x25')][_0x5e6a('0x26')]===0x1f4){logger[_0x5e6a('0x25')](_0x5e6a('0x21'),_0x3bd464,_0xa5aa55[_0x5e6a('0x25')][_0x5e6a('0x27')]);return _0x42692d(_0xa5aa55[_0x5e6a('0x25')][_0x5e6a('0x27')]);}logger['error'](_0x5e6a('0x21'),_0x3bd464,_0xa5aa55[_0x5e6a('0x25')]['message']);return _0x53d663(_0xa5aa55[_0x5e6a('0x25')][_0x5e6a('0x27')]);}else{logger['info']('ChatMessage,\x20%s,\x20%s',_0x3bd464,_0x5e6a('0x23'));_0x53d663(_0xa5aa55['result'][_0x5e6a('0x27')]);}})[_0x5e6a('0x28')](function(_0x5143e3){logger['error'](_0x5e6a('0x21'),_0x3bd464,_0x5143e3);_0x42692d(_0x5143e3);});});}function respondWithStatusCode(_0x1bb15b,_0x4bde32){_0x4bde32=_0x4bde32||0xcc;return function(_0x4ad0f1){if(_0x4ad0f1){return _0x1bb15b[_0x5e6a('0x29')](_0x4bde32);}return _0x1bb15b['status'](_0x4bde32)[_0x5e6a('0x2a')]();};}function respondWithResult(_0x4cdeb0,_0x1d0566){_0x1d0566=_0x1d0566||0xc8;return function(_0x2a1670){if(_0x2a1670){return _0x4cdeb0['status'](_0x1d0566)[_0x5e6a('0x2b')](_0x2a1670);}};}function respondWithFilteredResult(_0x56e258,_0x3cdb67){return function(_0xbf28e8){if(_0xbf28e8){var _0x2033d8=_0xbf28e8['count'],_0x130dda=_0x3cdb67[_0x5e6a('0x2c')],_0x3b4e34=_0x3cdb67[_0x5e6a('0x2c')]+_0x3cdb67[_0x5e6a('0x2d')],_0x9f776f;if(_0x3b4e34>=_0x2033d8){_0x3b4e34=_0x2033d8;_0x9f776f=0xc8;}else{_0x9f776f=0xce;}_0x56e258['status'](_0x9f776f);return _0x56e258['set'](_0x5e6a('0x2e'),_0x130dda+'-'+_0x3b4e34+'/'+_0x2033d8)[_0x5e6a('0x2b')](_0xbf28e8);}return null;};}function patchUpdates(_0x5bab9d){return function(_0x55e322){try{jsonpatch[_0x5e6a('0x2f')](_0x55e322,_0x5bab9d,!![]);}catch(_0x21cbdd){return BPromise['reject'](_0x21cbdd);}return _0x55e322[_0x5e6a('0x30')]();};}function saveUpdates(_0x1a76a4,_0x48ef44){return function(_0x24f567){if(_0x24f567){return _0x24f567[_0x5e6a('0x31')](_0x1a76a4)[_0x5e6a('0x20')](function(_0x60a0d0){return _0x60a0d0;});}return null;};}function removeEntity(_0x56d6b0,_0x2a6699){return function(_0x54ff95){if(_0x54ff95){return _0x54ff95['destroy']()[_0x5e6a('0x20')](function(){_0x56d6b0[_0x5e6a('0x32')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3da703,_0x5b2c3e){return function(_0x302d78){if(!_0x302d78){_0x3da703[_0x5e6a('0x29')](0x194);}return _0x302d78;};}function handleError(_0x51d782,_0x187824){_0x187824=_0x187824||0x1f4;return function(_0x14bf25){logger['error'](_0x14bf25[_0x5e6a('0x33')]);if(_0x14bf25['name']){delete _0x14bf25[_0x5e6a('0x34')];}_0x51d782[_0x5e6a('0x32')](_0x187824)[_0x5e6a('0x35')](_0x14bf25);};}exports[_0x5e6a('0x36')]=function(_0x2c8776,_0x289f0a){var _0x50afb3={},_0x229401={},_0x49ab3c={'count':0x0,'rows':[]};var _0xc2b0e3=_[_0x5e6a('0x37')](db[_0x5e6a('0x38')]['rawAttributes'],function(_0x440149){return{'name':_0x440149['fieldName'],'type':_0x440149[_0x5e6a('0x39')][_0x5e6a('0x3a')]};});_0x229401[_0x5e6a('0x3b')]=_[_0x5e6a('0x37')](_0xc2b0e3,_0x5e6a('0x34'));_0x229401[_0x5e6a('0x3c')]=_['keys'](_0x2c8776[_0x5e6a('0x3c')]);_0x229401[_0x5e6a('0x3d')]=_[_0x5e6a('0x3e')](_0x229401[_0x5e6a('0x3b')],_0x229401[_0x5e6a('0x3c')]);_0x50afb3['attributes']=_['intersection'](_0x229401[_0x5e6a('0x3b')],qs[_0x5e6a('0x3f')](_0x2c8776[_0x5e6a('0x3c')][_0x5e6a('0x3f')]));_0x50afb3[_0x5e6a('0x40')]=_0x50afb3[_0x5e6a('0x40')]['length']?_0x50afb3[_0x5e6a('0x40')]:_0x229401['model'];if(!_0x2c8776['query']['hasOwnProperty'](_0x5e6a('0x41'))){_0x50afb3[_0x5e6a('0x2d')]=qs[_0x5e6a('0x2d')](_0x2c8776[_0x5e6a('0x3c')][_0x5e6a('0x2d')]);_0x50afb3[_0x5e6a('0x2c')]=qs['offset'](_0x2c8776[_0x5e6a('0x3c')][_0x5e6a('0x2c')]);}_0x50afb3[_0x5e6a('0x42')]=qs[_0x5e6a('0x43')](_0x2c8776['query'][_0x5e6a('0x43')]);_0x50afb3[_0x5e6a('0x44')]=qs[_0x5e6a('0x3d')](_[_0x5e6a('0x45')](_0x2c8776['query'],_0x229401[_0x5e6a('0x3d')]),_0xc2b0e3);if(_0x2c8776[_0x5e6a('0x3c')][_0x5e6a('0x46')]){_0x50afb3[_0x5e6a('0x44')]=_[_0x5e6a('0x47')](_0x50afb3[_0x5e6a('0x44')],{'$or':_[_0x5e6a('0x37')](_0xc2b0e3,function(_0x1a418c){if(_0x1a418c[_0x5e6a('0x39')]!==_0x5e6a('0x48')){var _0x3f9fd0={};_0x3f9fd0[_0x1a418c[_0x5e6a('0x34')]]={'$like':'%'+_0x2c8776[_0x5e6a('0x3c')]['filter']+'%'};return _0x3f9fd0;}})});}_0x50afb3=_[_0x5e6a('0x47')]({},_0x50afb3,_0x2c8776[_0x5e6a('0x49')]);var _0x4e185a={'where':_0x50afb3['where']};return db[_0x5e6a('0x38')]['count'](_0x4e185a)[_0x5e6a('0x20')](function(_0x2b67d4){_0x49ab3c[_0x5e6a('0x4a')]=_0x2b67d4;if(_0x2c8776[_0x5e6a('0x3c')]['includeAll']){_0x50afb3['include']=[{'all':!![]}];}return db[_0x5e6a('0x38')][_0x5e6a('0x4b')](_0x50afb3);})[_0x5e6a('0x20')](function(_0x56a756){_0x49ab3c[_0x5e6a('0x4c')]=_0x56a756;return _0x49ab3c;})[_0x5e6a('0x20')](respondWithFilteredResult(_0x289f0a,_0x50afb3))[_0x5e6a('0x28')](handleError(_0x289f0a,null));};exports[_0x5e6a('0x4d')]=function(_0xeebf27,_0x3058af){var _0x2a0baa={'raw':!![],'where':{'id':_0xeebf27[_0x5e6a('0x4e')]['id']}},_0x5ee4bf={};_0x5ee4bf[_0x5e6a('0x3b')]=_[_0x5e6a('0x4f')](db[_0x5e6a('0x38')][_0x5e6a('0x50')]);_0x5ee4bf['query']=_[_0x5e6a('0x4f')](_0xeebf27['query']);_0x5ee4bf[_0x5e6a('0x3d')]=_[_0x5e6a('0x3e')](_0x5ee4bf['model'],_0x5ee4bf['query']);_0x2a0baa['attributes']=_[_0x5e6a('0x3e')](_0x5ee4bf[_0x5e6a('0x3b')],qs[_0x5e6a('0x3f')](_0xeebf27[_0x5e6a('0x3c')][_0x5e6a('0x3f')]));_0x2a0baa[_0x5e6a('0x40')]=_0x2a0baa[_0x5e6a('0x40')][_0x5e6a('0x51')]?_0x2a0baa[_0x5e6a('0x40')]:_0x5ee4bf['model'];if(_0xeebf27[_0x5e6a('0x3c')][_0x5e6a('0x52')]){_0x2a0baa[_0x5e6a('0x53')]=[{'all':!![]}];}_0x2a0baa=_[_0x5e6a('0x47')]({},_0x2a0baa,_0xeebf27['options']);return db['ChatMessage'][_0x5e6a('0x54')](_0x2a0baa)[_0x5e6a('0x20')](handleEntityNotFound(_0x3058af,null))[_0x5e6a('0x20')](respondWithResult(_0x3058af,null))[_0x5e6a('0x28')](handleError(_0x3058af,null));};exports[_0x5e6a('0x55')]=function(_0x39f38b,_0x1776ca){return db['ChatMessage']['create'](_0x39f38b['body'],{})['then'](respondWithResult(_0x1776ca,0xc9))['catch'](handleError(_0x1776ca,null));};exports[_0x5e6a('0x31')]=function(_0x428109,_0x11e315){if(_0x428109[_0x5e6a('0x56')]['id']){delete _0x428109[_0x5e6a('0x56')]['id'];}return db[_0x5e6a('0x38')][_0x5e6a('0x54')]({'where':{'id':_0x428109[_0x5e6a('0x4e')]['id']}})[_0x5e6a('0x20')](handleEntityNotFound(_0x11e315,null))[_0x5e6a('0x20')](saveUpdates(_0x428109[_0x5e6a('0x56')],null))[_0x5e6a('0x20')](respondWithResult(_0x11e315,null))['catch'](handleError(_0x11e315,null));};exports[_0x5e6a('0x57')]=function(_0x2c3ddf,_0x49ea29){return db[_0x5e6a('0x38')][_0x5e6a('0x54')]({'where':{'id':_0x2c3ddf[_0x5e6a('0x4e')]['id']}})['then'](handleEntityNotFound(_0x49ea29,null))[_0x5e6a('0x20')](removeEntity(_0x49ea29,null))['catch'](handleError(_0x49ea29,null));};exports[_0x5e6a('0x58')]=function(_0x37c083,_0x116c03){return db[_0x5e6a('0x38')][_0x5e6a('0x58')]()[_0x5e6a('0x20')](respondWithResult(_0x116c03,null))[_0x5e6a('0x28')](handleError(_0x116c03,null));};var interaction_log=require(_0x5e6a('0x12'))(_0x5e6a('0x59'));exports[_0x5e6a('0x5a')]=function(_0x2291b7,_0x358cd5,_0xfebb48){var _0x55e7cd={'agent':{},'channel':'chat'};if(_0x2291b7[_0x5e6a('0x56')]['id']){delete _0x2291b7[_0x5e6a('0x56')]['id'];}_0x2291b7[_0x5e6a('0x56')][_0x5e6a('0x5b')]=!![];_0x2291b7[_0x5e6a('0x56')][_0x5e6a('0x5c')]=moment()[_0x5e6a('0x5d')](_0x5e6a('0x5e'));_0x2291b7[_0x5e6a('0x56')]['UserId']=_0x2291b7[_0x5e6a('0x56')]['UserId']||_0x2291b7[_0x5e6a('0x5f')]['id'];_0x55e7cd[_0x5e6a('0x60')]['id']=_0x2291b7[_0x5e6a('0x56')][_0x5e6a('0x61')];return db['ChatMessage'][_0x5e6a('0x54')]({'where':{'id':_0x2291b7[_0x5e6a('0x4e')]['id'],'UserId':null},'include':[{'model':db[_0x5e6a('0x62')],'as':_0x5e6a('0x63')}]})[_0x5e6a('0x20')](handleEntityNotFound(_0x358cd5,null))[_0x5e6a('0x20')](saveUpdates(_0x2291b7[_0x5e6a('0x56')],null))[_0x5e6a('0x20')](function(_0x38cb5b){if(_0x38cb5b){_0x55e7cd[_0x5e6a('0x27')]=_0x38cb5b[_0x5e6a('0x64')]({'plain':!![]});return db[_0x5e6a('0x65')][_0x5e6a('0x54')]({'where':{'id':_0x38cb5b[_0x5e6a('0x66')]}});}return null;})['then'](handleEntityNotFound(_0x358cd5,null))['then'](function(_0x2da758){if(_0x2da758){return _0x2da758[_0x5e6a('0x31')]({'UserId':_0x2291b7[_0x5e6a('0x56')]['UserId'],'read1stAt':_[_0x5e6a('0x67')](_0x2da758['read1stAt'])?moment()['format']('YYYY-MM-DD\x20HH:mm:ss'):undefined});}return null;})[_0x5e6a('0x20')](function(_0x5093c1){if(_0x5093c1){_0x55e7cd['interaction']=_0x5093c1['get']({'plain':!![]});interaction_log[_0x5e6a('0x68')](_0x5e6a('0x69'),_0x2291b7[_0x5e6a('0x5f')]['id'],_0x2291b7[_0x5e6a('0x5f')][_0x5e6a('0x34')],_0x2291b7['user'][_0x5e6a('0x6a')],_0x55e7cd[_0x5e6a('0x6b')]['id'],_0x2291b7['body']?JSON[_0x5e6a('0x24')](_0x2291b7[_0x5e6a('0x56')]):_0x5e6a('0x6c'));return respondWithRpcPromise(_0x5e6a('0x6d'),_0x5e6a('0x6e'),_0x55e7cd);}return null;})['then'](function(_0x19e69b){if(_0x19e69b){if(_0x2291b7[_0x5e6a('0x56')][_0x5e6a('0x6f')]){_0x55e7cd[_0x5e6a('0x27')][_0x5e6a('0x70')]=util['format']('SIP/%s',_0x2291b7[_0x5e6a('0x5f')][_0x5e6a('0x34')]);_0x55e7cd[_0x5e6a('0x27')]['channel']=_0x55e7cd[_0x5e6a('0x71')];_0x55e7cd[_0x5e6a('0x27')][_0x5e6a('0x72')]='accept';return respondWithRpcPromise(_0x5e6a('0x73'),_0x5e6a('0x73'),{'event':_0x5e6a('0x74'),'message':_['merge'](_0x55e7cd['message'],JSON[_0x5e6a('0x75')](_0x55e7cd[_0x5e6a('0x6b')][_0x5e6a('0x76')]))},client9002)[_0x5e6a('0x20')](function(){return _0x55e7cd;});}return _0x55e7cd;}return null;})[_0x5e6a('0x20')](respondWithResult(_0x358cd5,null))[_0x5e6a('0x28')](handleError(_0x358cd5,null));};var interaction_log=require(_0x5e6a('0x12'))(_0x5e6a('0x59'));exports['reject']=function(_0x687aed,_0x1a8415,_0x5d58b6){var _0x3b1a8f={'agent':{},'channel':_0x5e6a('0x77')};if(_0x687aed[_0x5e6a('0x56')]['id']){delete _0x687aed['body']['id'];}_0x687aed[_0x5e6a('0x56')]['UserId']=_0x687aed[_0x5e6a('0x56')]['UserId']||_0x687aed[_0x5e6a('0x5f')]['id'];_0x3b1a8f[_0x5e6a('0x60')]['id']=_0x687aed[_0x5e6a('0x56')]['UserId'];return db[_0x5e6a('0x38')][_0x5e6a('0x54')]({'where':{'id':_0x687aed['params']['id'],'UserId':null}})[_0x5e6a('0x20')](handleEntityNotFound(_0x1a8415,null))[_0x5e6a('0x20')](function(_0x44fb0e){if(_0x44fb0e){_0x3b1a8f['message']=_0x44fb0e[_0x5e6a('0x64')]({'plain':!![]});return db[_0x5e6a('0x65')]['find']({'where':{'id':_0x44fb0e[_0x5e6a('0x66')]}});}return null;})[_0x5e6a('0x20')](handleEntityNotFound(_0x1a8415,null))[_0x5e6a('0x20')](function(_0x66a121){if(_0x66a121){_0x3b1a8f[_0x5e6a('0x6b')]=_0x66a121[_0x5e6a('0x64')]({'plain':!![]});interaction_log[_0x5e6a('0x68')](_0x5e6a('0x78'),_0x687aed[_0x5e6a('0x5f')]['id'],_0x687aed['user']['name'],_0x687aed[_0x5e6a('0x5f')][_0x5e6a('0x6a')],_0x3b1a8f['interaction']['id'],_0x687aed[_0x5e6a('0x56')]?JSON['stringify'](_0x687aed[_0x5e6a('0x56')]):_0x5e6a('0x6c'));return respondWithRpcPromise(_0x5e6a('0x79'),_0x5e6a('0x7a'),_0x3b1a8f);}return null;})[_0x5e6a('0x20')](function(_0x1c2a83){if(_0x1c2a83){_0x1c2a83[_0x5e6a('0x27')][_0x5e6a('0x70')]=util[_0x5e6a('0x5d')](_0x5e6a('0x7b'),_0x687aed[_0x5e6a('0x5f')][_0x5e6a('0x34')]);_0x1c2a83[_0x5e6a('0x27')][_0x5e6a('0x71')]=_0x3b1a8f[_0x5e6a('0x71')];_0x1c2a83[_0x5e6a('0x27')][_0x5e6a('0x72')]=_0x5e6a('0x7c');respondWithRpcPromise(_0x5e6a('0x73'),_0x5e6a('0x73'),{'event':_0x5e6a('0x7d'),'message':_0x1c2a83['message']},client9002);return _0x3b1a8f;}return null;})[_0x5e6a('0x20')](respondWithResult(_0x1a8415,null))[_0x5e6a('0x28')](handleError(_0x1a8415,null));};
\ No newline at end of file
+var _0x960a=['interface','SIP/%s','channel','event','EventManager','parse','formData','util','lodash','ioredis','../../components/interaction/service','../../config/environment','../../mysqldb','redis','defaults','localhost','jayson/promise','client','http','../../config/logger','chat-interactions','then','info','ChatMessage,\x20%s,\x20%s','request\x20sent','ChatMessage,\x20%s,\x20%s,\x20%s','stringify','error','code','message','catch','json','undefined','limit','count','offset','status','set','destroy','end','sendStatus','name','send','index','map','ChatMessage','rawAttributes','type','key','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','show','params','keys','find','create','body','update','describe','accept','chat','acceptMessage','reject','UserId','user','agent','ChatInteraction','ChatInteractionId','interaction','get','role','RejectMessage','rejectMessage','SELECT\x20*\x20FROM\x20cm_contacts\x20WHERE\x20id\x20=\x20','ContactId','sequelize','QueryTypes','SELECT','contact','User','email'];(function(_0x5ebec4,_0x474731){var _0x3b9d3b=function(_0x3aa9da){while(--_0x3aa9da){_0x5ebec4['push'](_0x5ebec4['shift']());}};_0x3b9d3b(++_0x474731);}(_0x960a,0x18f));var _0xa960=function(_0x1b2aea,_0x1c51ff){_0x1b2aea=_0x1b2aea-0x0;var _0x2ff88c=_0x960a[_0x1b2aea];return _0x2ff88c;};'use strict';var util=require(_0xa960('0x0'));var _=require(_0xa960('0x1'));var Redis=require(_0xa960('0x2'));var interactionService=require(_0xa960('0x3'));var qs=require('../../components/parsers/qs');var logger=require('../../config/logger')('api');var config=require(_0xa960('0x4'));var db=require(_0xa960('0x5'))['db'];config[_0xa960('0x6')]=_[_0xa960('0x7')](config[_0xa960('0x6')],{'host':_0xa960('0x8'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require('./chatMessage.socket')['register'](socket);var jayson=require(_0xa960('0x9'));var client=jayson[_0xa960('0xa')][_0xa960('0xb')]({'port':0x232c});var client9002=jayson[_0xa960('0xa')][_0xa960('0xb')]({'port':0x232a});var interaction_log=require(_0xa960('0xc'))(_0xa960('0xd'));function respondWithRpcPromise(_0x5de2f6,_0x1b9980,_0x218d30,_0x18cb56){return new Promise(function(_0x3aeeae,_0xa6fc5f){var _0x36a988=_0x18cb56||client;return _0x36a988['request'](_0x5de2f6,_0x218d30)[_0xa960('0xe')](function(_0x4110dc){logger[_0xa960('0xf')](_0xa960('0x10'),_0x1b9980,_0xa960('0x11'));logger['debug'](_0xa960('0x12'),_0x1b9980,_0xa960('0x11'),JSON[_0xa960('0x13')](_0x4110dc));if(_0x4110dc[_0xa960('0x14')]){if(_0x4110dc[_0xa960('0x14')][_0xa960('0x15')]===0x1f4){logger[_0xa960('0x14')](_0xa960('0x10'),_0x1b9980,_0x4110dc[_0xa960('0x14')]['message']);return _0xa6fc5f(_0x4110dc[_0xa960('0x14')][_0xa960('0x16')]);}logger[_0xa960('0x14')]('ChatMessage,\x20%s,\x20%s',_0x1b9980,_0x4110dc['error'][_0xa960('0x16')]);return _0x3aeeae(_0x4110dc[_0xa960('0x14')][_0xa960('0x16')]);}else{logger[_0xa960('0xf')](_0xa960('0x10'),_0x1b9980,_0xa960('0x11'));_0x3aeeae(_0x4110dc['result'][_0xa960('0x16')]);}})[_0xa960('0x17')](function(_0x311c82){logger[_0xa960('0x14')](_0xa960('0x10'),_0x1b9980,_0x311c82);_0xa6fc5f(_0x311c82);});});}function respondWithResult(_0x307cf8,_0x5a408d){_0x5a408d=_0x5a408d||0xc8;return function(_0x1532a0){if(_0x1532a0){return _0x307cf8['status'](_0x5a408d)[_0xa960('0x18')](_0x1532a0);}};}function respondWithFilteredResult(_0x4ea051,_0x76ab41){return function(_0x57dfc4){if(_0x57dfc4){var _0x18d70a=typeof _0x76ab41['offset']===_0xa960('0x19')&&typeof _0x76ab41[_0xa960('0x1a')]===_0xa960('0x19');var _0x4b443a=_0x57dfc4[_0xa960('0x1b')];var _0xcdd616=_0x18d70a?0x0:_0x76ab41[_0xa960('0x1c')];var _0x458b27=_0x18d70a?_0x57dfc4[_0xa960('0x1b')]:_0x76ab41[_0xa960('0x1c')]+_0x76ab41[_0xa960('0x1a')];var _0x52e27d;if(_0x458b27>=_0x4b443a){_0x458b27=_0x4b443a;_0x52e27d=0xc8;}else{_0x52e27d=0xce;}_0x4ea051[_0xa960('0x1d')](_0x52e27d);return _0x4ea051[_0xa960('0x1e')]('Content-Range',_0xcdd616+'-'+_0x458b27+'/'+_0x4b443a)[_0xa960('0x18')](_0x57dfc4);}return null;};}function saveUpdates(_0x40b451){return function(_0x3e0647){if(_0x3e0647){return _0x3e0647['update'](_0x40b451)[_0xa960('0xe')](function(_0x2fb446){return _0x2fb446;});}return null;};}function removeEntity(_0x3ac980){return function(_0x2376d9){if(_0x2376d9){return _0x2376d9[_0xa960('0x1f')]()[_0xa960('0xe')](function(){_0x3ac980[_0xa960('0x1d')](0xcc)[_0xa960('0x20')]();});}};}function handleEntityNotFound(_0x14ce5d){return function(_0x4d6437){if(!_0x4d6437){_0x14ce5d[_0xa960('0x21')](0x194);}return _0x4d6437;};}function handleError(_0xd64cb9,_0x4aa39d){_0x4aa39d=_0x4aa39d||0x1f4;return function(_0x401af3){logger['error'](_0x401af3['stack']);if(_0x401af3[_0xa960('0x22')]){delete _0x401af3[_0xa960('0x22')];}_0xd64cb9['status'](_0x4aa39d)[_0xa960('0x23')](_0x401af3);};}exports[_0xa960('0x24')]=function(_0x36252c,_0x4e928d){var _0x47435f={},_0x5b066a={},_0x1c9e12={'count':0x0,'rows':[]};var _0x37467a=_[_0xa960('0x25')](db[_0xa960('0x26')][_0xa960('0x27')],function(_0x108be3){return{'name':_0x108be3['fieldName'],'type':_0x108be3[_0xa960('0x28')][_0xa960('0x29')]};});_0x5b066a[_0xa960('0x2a')]=_[_0xa960('0x25')](_0x37467a,_0xa960('0x22'));_0x5b066a[_0xa960('0x2b')]=_['keys'](_0x36252c[_0xa960('0x2b')]);_0x5b066a[_0xa960('0x2c')]=_[_0xa960('0x2d')](_0x5b066a['model'],_0x5b066a['query']);_0x47435f['attributes']=_[_0xa960('0x2d')](_0x5b066a[_0xa960('0x2a')],qs[_0xa960('0x2e')](_0x36252c[_0xa960('0x2b')][_0xa960('0x2e')]));_0x47435f[_0xa960('0x2f')]=_0x47435f[_0xa960('0x2f')][_0xa960('0x30')]?_0x47435f[_0xa960('0x2f')]:_0x5b066a[_0xa960('0x2a')];if(!_0x36252c['query'][_0xa960('0x31')](_0xa960('0x32'))){_0x47435f[_0xa960('0x1a')]=qs['limit'](_0x36252c['query']['limit']);_0x47435f[_0xa960('0x1c')]=qs['offset'](_0x36252c[_0xa960('0x2b')][_0xa960('0x1c')]);}_0x47435f[_0xa960('0x33')]=qs[_0xa960('0x34')](_0x36252c[_0xa960('0x2b')][_0xa960('0x34')]);_0x47435f[_0xa960('0x35')]=qs[_0xa960('0x2c')](_[_0xa960('0x36')](_0x36252c[_0xa960('0x2b')],_0x5b066a['filters']),_0x37467a);if(_0x36252c[_0xa960('0x2b')][_0xa960('0x37')]){_0x47435f['where']=_[_0xa960('0x38')](_0x47435f['where'],{'$or':_[_0xa960('0x25')](_0x37467a,function(_0x5b6c3f){if(_0x5b6c3f[_0xa960('0x28')]!==_0xa960('0x39')){var _0x21cddf={};_0x21cddf[_0x5b6c3f[_0xa960('0x22')]]={'$like':'%'+_0x36252c[_0xa960('0x2b')]['filter']+'%'};return _0x21cddf;}})});}_0x47435f=_['merge']({},_0x47435f,_0x36252c['options']);var _0x2473dc={'where':_0x47435f[_0xa960('0x35')]};return db['ChatMessage'][_0xa960('0x1b')](_0x2473dc)[_0xa960('0xe')](function(_0x540a9f){_0x1c9e12[_0xa960('0x1b')]=_0x540a9f;if(_0x36252c[_0xa960('0x2b')][_0xa960('0x3a')]){_0x47435f[_0xa960('0x3b')]=[{'all':!![]}];}return db['ChatMessage'][_0xa960('0x3c')](_0x47435f);})['then'](function(_0x26720e){_0x1c9e12['rows']=_0x26720e;return _0x1c9e12;})['then'](respondWithFilteredResult(_0x4e928d,_0x47435f))[_0xa960('0x17')](handleError(_0x4e928d,null));};exports[_0xa960('0x3d')]=function(_0x110c17,_0x2332fc){var _0x5f0d2d={'raw':!![],'where':{'id':_0x110c17[_0xa960('0x3e')]['id']}},_0x430c0b={};_0x430c0b['model']=_[_0xa960('0x3f')](db[_0xa960('0x26')]['rawAttributes']);_0x430c0b[_0xa960('0x2b')]=_['keys'](_0x110c17['query']);_0x430c0b[_0xa960('0x2c')]=_['intersection'](_0x430c0b[_0xa960('0x2a')],_0x430c0b[_0xa960('0x2b')]);_0x5f0d2d[_0xa960('0x2f')]=_[_0xa960('0x2d')](_0x430c0b[_0xa960('0x2a')],qs[_0xa960('0x2e')](_0x110c17['query'][_0xa960('0x2e')]));_0x5f0d2d[_0xa960('0x2f')]=_0x5f0d2d[_0xa960('0x2f')]['length']?_0x5f0d2d[_0xa960('0x2f')]:_0x430c0b[_0xa960('0x2a')];if(_0x110c17[_0xa960('0x2b')][_0xa960('0x3a')]){_0x5f0d2d[_0xa960('0x3b')]=[{'all':!![]}];}_0x5f0d2d=_[_0xa960('0x38')]({},_0x5f0d2d,_0x110c17['options']);return db[_0xa960('0x26')][_0xa960('0x40')](_0x5f0d2d)[_0xa960('0xe')](handleEntityNotFound(_0x2332fc,null))[_0xa960('0xe')](respondWithResult(_0x2332fc,null))[_0xa960('0x17')](handleError(_0x2332fc,null));};exports[_0xa960('0x41')]=function(_0x1dc2fa,_0x10f1c0){return db[_0xa960('0x26')][_0xa960('0x41')](_0x1dc2fa[_0xa960('0x42')],{})[_0xa960('0xe')](respondWithResult(_0x10f1c0,0xc9))[_0xa960('0x17')](handleError(_0x10f1c0,null));};exports[_0xa960('0x43')]=function(_0x5b6817,_0x280dcf){if(_0x5b6817[_0xa960('0x42')]['id']){delete _0x5b6817[_0xa960('0x42')]['id'];}return db[_0xa960('0x26')][_0xa960('0x40')]({'where':{'id':_0x5b6817[_0xa960('0x3e')]['id']}})[_0xa960('0xe')](handleEntityNotFound(_0x280dcf,null))[_0xa960('0xe')](saveUpdates(_0x5b6817[_0xa960('0x42')],null))['then'](respondWithResult(_0x280dcf,null))[_0xa960('0x17')](handleError(_0x280dcf,null));};exports[_0xa960('0x1f')]=function(_0x4a9d66,_0x12ad6f){return db[_0xa960('0x26')]['find']({'where':{'id':_0x4a9d66[_0xa960('0x3e')]['id']}})[_0xa960('0xe')](handleEntityNotFound(_0x12ad6f,null))[_0xa960('0xe')](removeEntity(_0x12ad6f,null))[_0xa960('0x17')](handleError(_0x12ad6f,null));};exports[_0xa960('0x44')]=function(_0x5f2ad1,_0x14f6e6){return db[_0xa960('0x26')]['describe']()['then'](respondWithResult(_0x14f6e6,null))[_0xa960('0x17')](handleError(_0x14f6e6,null));};exports[_0xa960('0x45')]=function(_0x4c1e6d,_0x30650f){var _0x5d87d8=_0xa960('0x46');return interactionService[_0xa960('0x47')](_0x4c1e6d,_0x5d87d8)[_0xa960('0xe')](respondWithResult(_0x30650f,null))[_0xa960('0x17')](handleError(_0x30650f,null));};exports[_0xa960('0x48')]=function(_0xdc17fa,_0x47f4e7){var _0x3fc48={'agent':{},'channel':_0xa960('0x46')};if(_0xdc17fa['body']['id']){delete _0xdc17fa[_0xa960('0x42')]['id'];}_0xdc17fa['body'][_0xa960('0x49')]=_0xdc17fa[_0xa960('0x42')][_0xa960('0x49')]||_0xdc17fa[_0xa960('0x4a')]['id'];_0x3fc48[_0xa960('0x4b')]['id']=_0xdc17fa[_0xa960('0x42')][_0xa960('0x49')];return db[_0xa960('0x26')][_0xa960('0x40')]({'where':{'id':_0xdc17fa[_0xa960('0x3e')]['id'],'UserId':null}})[_0xa960('0xe')](handleEntityNotFound(_0x47f4e7,null))[_0xa960('0xe')](function(_0x1224b4){if(_0x1224b4){_0x3fc48['message']=_0x1224b4['get']({'plain':!![]});return db[_0xa960('0x4c')][_0xa960('0x40')]({'where':{'id':_0x1224b4[_0xa960('0x4d')]}});}return null;})['then'](handleEntityNotFound(_0x47f4e7,null))[_0xa960('0xe')](function(_0x577b84){if(_0x577b84){_0x3fc48[_0xa960('0x4e')]=_0x577b84[_0xa960('0x4f')]({'plain':!![]});interaction_log[_0xa960('0xf')]('[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0xdc17fa['user']['id'],_0xdc17fa['user']['name'],_0xdc17fa[_0xa960('0x4a')][_0xa960('0x50')],_0x3fc48[_0xa960('0x4e')]['id'],_0xdc17fa[_0xa960('0x42')]?JSON[_0xa960('0x13')](_0xdc17fa[_0xa960('0x42')]):'null');return respondWithRpcPromise(_0xa960('0x51'),_0xa960('0x52'),_0x3fc48);}return null;})[_0xa960('0xe')](function(_0x2ac80d){var _0x3705e2=_0xa960('0x53')+_0x2ac80d[_0xa960('0x16')][_0xa960('0x54')];return db[_0xa960('0x55')][_0xa960('0x2b')](_0x3705e2,{'type':db['Sequelize'][_0xa960('0x56')][_0xa960('0x57')],'raw':!![]})[_0xa960('0xe')](function(_0x8ecc5){return _0x8ecc5;});})[_0xa960('0xe')](function(_0x495cb9){if(_0x495cb9){_0x3fc48[_0xa960('0x16')][_0xa960('0x58')]=_0x495cb9[0x0];if(!_0xdc17fa[_0xa960('0x42')][_0xa960('0x49')])return;return db[_0xa960('0x59')]['find']({'where':{'id':_0xdc17fa[_0xa960('0x42')][_0xa960('0x49')],'role':_0xa960('0x4b')},'attributes':['id',_0xa960('0x22'),'fullname',_0xa960('0x5a'),'internal'],'raw':!![]});}return null;})[_0xa960('0xe')](function(_0x9ede29){if(!_0x9ede29)return null;_0x3fc48[_0xa960('0x16')][_0xa960('0x4b')]=_0x9ede29;return _0x3fc48;})[_0xa960('0xe')](function(_0x514e4e){if(_0x514e4e){_0x514e4e['message'][_0xa960('0x5b')]=util['format'](_0xa960('0x5c'),_0xdc17fa[_0xa960('0x4a')][_0xa960('0x22')]);_0x514e4e[_0xa960('0x16')][_0xa960('0x5d')]=_0x3fc48['channel'];_0x514e4e['message']['motionChannel']=_0x3fc48['channel'];_0x514e4e[_0xa960('0x16')][_0xa960('0x5e')]='reject';respondWithRpcPromise(_0xa960('0x5f'),_0xa960('0x5f'),{'event':'rejectmessage','message':_[_0xa960('0x38')](_0x3fc48[_0xa960('0x16')],JSON[_0xa960('0x60')](_0x3fc48[_0xa960('0x4e')][_0xa960('0x61')]))},client9002);return _0x3fc48;}return null;})[_0xa960('0xe')](respondWithResult(_0x47f4e7,null))[_0xa960('0x17')](handleError(_0x47f4e7,null));};
\ No newline at end of file