ac3a8bf13cfe9e8e6fa574e9ab61a4fbb8acf0f6
[motion-next.git] / server / api / chatMessage / chatMessage.controller.js
1 const a80_0x3138=['channel','formData','sendStatus','ChatInteraction','chat-interactions','ChatMessage,\x20%s,\x20%s,\x20%s','null','../../rediscache','like','filters','undefined','role','read','name','reject','ChatMessage,\x20%s,\x20%s','ChatMessage','code','parse','user','show','stack','count','body','EventManager','catch','length','filter','isNil','../../components/parsers/qs','info','../../config/logger','get','include','type','./chatMessage.socket','format','YYYY-MM-DD\x20HH:mm:ss','error','status','interaction','ChatInteractionId','api','query','includeAll','merge','where','readAt','fields','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','options','rows','params','accept','../../mysqldb','sort','sequelize','chat','result','jayson/promise','stringify','util','findAll','agent','fieldName','event','rawAttributes','destroy','rejectmessage','then','acceptmessage','json','interface','AcceptMessage','UserId','read1stAt','findOne','model','keys','send','index','message','request\x20sent','moment','lodash','SIP/%s','http','order','update','create','debug','describe','client','acceptMessage','end','map','attributes','offset','intersection'];(function(_0x105a01,_0x31384c){const _0x1b5130=function(_0x3b6488){while(--_0x3b6488){_0x105a01['push'](_0x105a01['shift']());}};_0x1b5130(++_0x31384c);}(a80_0x3138,0x14f));const a80_0x1b51=function(_0x105a01,_0x31384c){_0x105a01=_0x105a01-0x0;let _0x1b5130=a80_0x3138[_0x105a01];return _0x1b5130;};const _0x4ba0a2=a80_0x1b51;'use strict';const moment=require(_0x4ba0a2('0x2d')),util=require(_0x4ba0a2('0x17')),_=require(_0x4ba0a2('0x2e')),qs=require(_0x4ba0a2('0x5a')),logger=require(_0x4ba0a2('0x5c'))(_0x4ba0a2('0x4')),{getSocket}=require(_0x4ba0a2('0x44')),db=require(_0x4ba0a2('0x10'))['db'],{Op}=require(_0x4ba0a2('0x12')),interaction_log=require(_0x4ba0a2('0x5c'))(_0x4ba0a2('0x41')),socket=getSocket();require(_0x4ba0a2('0x60'))['register'](socket);const jayson=require(_0x4ba0a2('0x15')),client=jayson['client'][_0x4ba0a2('0x30')]({'port':0x232c}),client9002=jayson[_0x4ba0a2('0x36')][_0x4ba0a2('0x30')]({'port':0x232a});function respondWithRpcPromise(_0x3b6488,_0x3c984f,_0x236b9e,_0x120cac){return new Promise(function(_0x1e457a,_0x27b600){const _0x4d1149=a80_0x1b51,_0x245e81=_0x120cac||client;return _0x245e81['request'](_0x3b6488,_0x236b9e)[_0x4d1149('0x1f')](function(_0x207e4b){const _0x38ecc=_0x4d1149;logger[_0x38ecc('0x5b')](_0x38ecc('0x4c'),_0x3c984f,_0x38ecc('0x2c')),logger[_0x38ecc('0x34')](_0x38ecc('0x42'),_0x3c984f,_0x38ecc('0x2c'),JSON[_0x38ecc('0x16')](_0x207e4b));if(_0x207e4b['error']){if(_0x207e4b['error'][_0x38ecc('0x4e')]===0x1f4)return logger[_0x38ecc('0x0')](_0x38ecc('0x4c'),_0x3c984f,_0x207e4b['error']['message']),_0x27b600(_0x207e4b[_0x38ecc('0x0')]['message']);return logger[_0x38ecc('0x0')]('ChatMessage,\x20%s,\x20%s',_0x3c984f,_0x207e4b[_0x38ecc('0x0')]['message']),_0x1e457a(_0x207e4b[_0x38ecc('0x0')][_0x38ecc('0x2b')]);}else logger[_0x38ecc('0x5b')]('ChatMessage,\x20%s,\x20%s',_0x3c984f,_0x38ecc('0x2c')),_0x1e457a(_0x207e4b[_0x38ecc('0x14')][_0x38ecc('0x2b')]);})[_0x4d1149('0x56')](function(_0x2a6b9e){const _0x539e0e=_0x4d1149;logger[_0x539e0e('0x0')](_0x539e0e('0x4c'),_0x3c984f,_0x2a6b9e),_0x27b600(_0x2a6b9e);});});}function respondWithResult(_0xa41d83,_0x36d38d){return _0x36d38d=_0x36d38d||0xc8,function(_0x30b5d6){const _0x360109=a80_0x1b51;if(_0x30b5d6)return _0xa41d83['status'](_0x36d38d)[_0x360109('0x21')](_0x30b5d6);};}function respondWithFilteredResult(_0x4c9385,_0x45e6bd){return function(_0x14b3a3){const _0x3fcb32=a80_0x1b51;if(_0x14b3a3){const _0x3899a3=_0x14b3a3[_0x3fcb32('0x53')],_0x9d0f4f=_0x45e6bd[_0x3fcb32('0x3b')];let _0x237a1b=_0x45e6bd[_0x3fcb32('0x3b')]+_0x45e6bd['limit'],_0x4d933b;return _0x237a1b>=_0x3899a3?(_0x237a1b=_0x3899a3,_0x4d933b=0xc8):_0x4d933b=0xce,_0x4c9385['status'](_0x4d933b),_0x4c9385['set']('Content-Range',_0x9d0f4f+'-'+_0x237a1b+'/'+_0x3899a3)[_0x3fcb32('0x21')](_0x14b3a3);}return null;};}function saveUpdates(_0x2bc7ae){return function(_0x5c2f96){const _0x400815=a80_0x1b51;if(_0x5c2f96)return _0x5c2f96['update'](_0x2bc7ae)[_0x400815('0x1f')](function(_0xfa6528){return _0xfa6528;});return null;};}function removeEntity(_0x12834f){return function(_0x559965){const _0x2105c2=a80_0x1b51;if(_0x559965)return _0x559965[_0x2105c2('0x1d')]()[_0x2105c2('0x1f')](function(){const _0x362683=_0x2105c2;_0x12834f[_0x362683('0x1')](0xcc)[_0x362683('0x38')]();});};}function handleEntityNotFound(_0x1910e3){return function(_0x59fb25){const _0x3ca441=a80_0x1b51;return!_0x59fb25&&_0x1910e3[_0x3ca441('0x3f')](0x194),_0x59fb25;};}function handleError(_0x5e8972,_0x5a6d0d){return _0x5a6d0d=_0x5a6d0d||0x1f4,function(_0x138658){const _0x3af7d3=a80_0x1b51;logger['error'](_0x138658[_0x3af7d3('0x52')]),_0x138658[_0x3af7d3('0x4a')]&&delete _0x138658[_0x3af7d3('0x4a')],_0x5e8972[_0x3af7d3('0x1')](_0x5a6d0d)[_0x3af7d3('0x29')](_0x138658);};}exports[_0x4ba0a2('0x2a')]=function(_0x42fa0a,_0xfdf84){const _0x1ecf99=_0x4ba0a2;let _0x4a6675={};const _0x514b98={},_0x2e50ed={'count':0x0,'rows':[]},_0x315102=_[_0x1ecf99('0x39')](db[_0x1ecf99('0x4d')][_0x1ecf99('0x1c')],function(_0x36dc5c){const _0x424f9b=_0x1ecf99;return{'name':_0x36dc5c[_0x424f9b('0x1a')],'type':_0x36dc5c[_0x424f9b('0x5f')]['key']};});_0x514b98[_0x1ecf99('0x27')]=_[_0x1ecf99('0x39')](_0x315102,'name'),_0x514b98[_0x1ecf99('0x5')]=_[_0x1ecf99('0x28')](_0x42fa0a[_0x1ecf99('0x5')]),_0x514b98[_0x1ecf99('0x46')]=_[_0x1ecf99('0x3c')](_0x514b98[_0x1ecf99('0x27')],_0x514b98['query']),_0x4a6675['attributes']=_[_0x1ecf99('0x3c')](_0x514b98['model'],qs[_0x1ecf99('0xa')](_0x42fa0a['query'][_0x1ecf99('0xa')])),_0x4a6675[_0x1ecf99('0x3a')]=_0x4a6675[_0x1ecf99('0x3a')][_0x1ecf99('0x57')]?_0x4a6675[_0x1ecf99('0x3a')]:_0x514b98[_0x1ecf99('0x27')];typeof _0x42fa0a['query']['nolimit']===_0x1ecf99('0x47')&&(_0x4a6675['limit']=qs['limit'](_0x42fa0a[_0x1ecf99('0x5')]['limit']),_0x4a6675[_0x1ecf99('0x3b')]=qs[_0x1ecf99('0x3b')](_0x42fa0a[_0x1ecf99('0x5')][_0x1ecf99('0x3b')]));_0x4a6675[_0x1ecf99('0x31')]=qs[_0x1ecf99('0x11')](_0x42fa0a['query']['sort']),_0x4a6675['where']=qs[_0x1ecf99('0x46')](_['pick'](_0x42fa0a[_0x1ecf99('0x5')],_0x514b98[_0x1ecf99('0x46')]),_0x315102);_0x42fa0a['query'][_0x1ecf99('0x58')]&&(_0x4a6675[_0x1ecf99('0x8')]=_[_0x1ecf99('0x7')](_0x4a6675['where'],{[Op['or']]:_[_0x1ecf99('0x39')](_0x315102,function(_0x425996){const _0x1115b0=_0x1ecf99;if(_0x425996[_0x1115b0('0x5f')]!=='VIRTUAL'){const _0x3fe010={};return _0x3fe010[_0x425996[_0x1115b0('0x4a')]]={[Op[_0x1115b0('0x45')]]:'%'+_0x42fa0a[_0x1115b0('0x5')][_0x1115b0('0x58')]+'%'},_0x3fe010;}})}));_0x4a6675=_[_0x1ecf99('0x7')]({},_0x4a6675,_0x42fa0a[_0x1ecf99('0xc')]);const _0x383ae1={'where':_0x4a6675['where']};return db[_0x1ecf99('0x4d')][_0x1ecf99('0x53')](_0x383ae1)[_0x1ecf99('0x1f')](function(_0x4d1507){const _0x5561a5=_0x1ecf99;return _0x2e50ed[_0x5561a5('0x53')]=_0x4d1507,_0x42fa0a[_0x5561a5('0x5')][_0x5561a5('0x6')]&&(_0x4a6675['include']=[{'all':!![]}]),db[_0x5561a5('0x4d')][_0x5561a5('0x18')](_0x4a6675);})['then'](function(_0x535db1){const _0x539d04=_0x1ecf99;return _0x2e50ed[_0x539d04('0xd')]=_0x535db1,_0x2e50ed;})[_0x1ecf99('0x1f')](respondWithFilteredResult(_0xfdf84,_0x4a6675))[_0x1ecf99('0x56')](handleError(_0xfdf84,null));},exports[_0x4ba0a2('0x51')]=function(_0x193626,_0x26cf3c){const _0x49ed3a=_0x4ba0a2;let _0x41a949={'raw':!![],'where':{'id':_0x193626[_0x49ed3a('0xe')]['id']}};const _0x3237c2={};return _0x3237c2[_0x49ed3a('0x27')]=_[_0x49ed3a('0x28')](db[_0x49ed3a('0x4d')][_0x49ed3a('0x1c')]),_0x3237c2[_0x49ed3a('0x5')]=_[_0x49ed3a('0x28')](_0x193626['query']),_0x3237c2[_0x49ed3a('0x46')]=_[_0x49ed3a('0x3c')](_0x3237c2[_0x49ed3a('0x27')],_0x3237c2[_0x49ed3a('0x5')]),_0x41a949[_0x49ed3a('0x3a')]=_['intersection'](_0x3237c2[_0x49ed3a('0x27')],qs[_0x49ed3a('0xa')](_0x193626['query'][_0x49ed3a('0xa')])),_0x41a949[_0x49ed3a('0x3a')]=_0x41a949['attributes'][_0x49ed3a('0x57')]?_0x41a949['attributes']:_0x3237c2[_0x49ed3a('0x27')],_0x193626[_0x49ed3a('0x5')]['includeAll']&&(_0x41a949[_0x49ed3a('0x5e')]=[{'all':!![]}]),_0x41a949=_['merge']({},_0x41a949,_0x193626[_0x49ed3a('0xc')]),db[_0x49ed3a('0x4d')]['findOne'](_0x41a949)[_0x49ed3a('0x1f')](handleEntityNotFound(_0x26cf3c,null))[_0x49ed3a('0x1f')](respondWithResult(_0x26cf3c,null))[_0x49ed3a('0x56')](handleError(_0x26cf3c,null));},exports[_0x4ba0a2('0x33')]=function(_0xb65bae,_0x2a4fd4){const _0x38a313=_0x4ba0a2;return db[_0x38a313('0x4d')][_0x38a313('0x33')](_0xb65bae[_0x38a313('0x54')],{})[_0x38a313('0x1f')](respondWithResult(_0x2a4fd4,0xc9))['catch'](handleError(_0x2a4fd4,null));},exports[_0x4ba0a2('0x32')]=function(_0x40aa48,_0x5b7fe1){const _0x1baf1e=_0x4ba0a2;return _0x40aa48['body']['id']&&delete _0x40aa48[_0x1baf1e('0x54')]['id'],db['ChatMessage'][_0x1baf1e('0x26')]({'where':{'id':_0x40aa48[_0x1baf1e('0xe')]['id']}})[_0x1baf1e('0x1f')](handleEntityNotFound(_0x5b7fe1,null))['then'](saveUpdates(_0x40aa48[_0x1baf1e('0x54')],null))['then'](respondWithResult(_0x5b7fe1,null))['catch'](handleError(_0x5b7fe1,null));},exports['destroy']=function(_0x501f38,_0x507b84){const _0x1611b7=_0x4ba0a2;return db[_0x1611b7('0x4d')]['findOne']({'where':{'id':_0x501f38[_0x1611b7('0xe')]['id']}})['then'](handleEntityNotFound(_0x507b84,null))[_0x1611b7('0x1f')](removeEntity(_0x507b84,null))['catch'](handleError(_0x507b84,null));},exports[_0x4ba0a2('0x35')]=function(_0x511510,_0x1f57f8){const _0xe765d2=_0x4ba0a2;return db['ChatMessage'][_0xe765d2('0x35')]()['then'](respondWithResult(_0x1f57f8,null))[_0xe765d2('0x56')](handleError(_0x1f57f8,null));},exports['accept']=function(_0x2725d1,_0x1ac94d){const _0x533bf0=_0x4ba0a2,_0x1d05ab={'channel':_0x533bf0('0x13')};return _0x2725d1['body']['id']&&delete _0x2725d1[_0x533bf0('0x54')]['id'],_0x2725d1[_0x533bf0('0x54')][_0x533bf0('0x49')]=!![],_0x2725d1['body'][_0x533bf0('0x9')]=moment()[_0x533bf0('0x61')]('YYYY-MM-DD\x20HH:mm:ss'),_0x2725d1['body'][_0x533bf0('0x24')]=_0x2725d1[_0x533bf0('0x54')][_0x533bf0('0x24')]||_0x2725d1['user']['id'],db[_0x533bf0('0x4d')]['findOne']({'where':{'id':_0x2725d1[_0x533bf0('0xe')]['id'],'UserId':null},'include':[{'model':db['CmContact'],'as':'Contact'}]})['then'](handleEntityNotFound(_0x1ac94d,null))[_0x533bf0('0x1f')](saveUpdates(_0x2725d1[_0x533bf0('0x54')],null))[_0x533bf0('0x1f')](function(_0x392d51){const _0x4a4543=_0x533bf0;if(_0x392d51)return _0x1d05ab[_0x4a4543('0x2b')]=_0x392d51[_0x4a4543('0x5d')]({'plain':!![]}),db[_0x4a4543('0x40')]['findOne']({'where':{'id':_0x392d51[_0x4a4543('0x3')]}});return null;})[_0x533bf0('0x1f')](handleEntityNotFound(_0x1ac94d,null))[_0x533bf0('0x1f')](function(_0x53762b){const _0x97e554=_0x533bf0;if(_0x53762b)return _0x53762b[_0x97e554('0x32')]({'UserId':_0x2725d1[_0x97e554('0x54')][_0x97e554('0x24')],'read1stAt':_[_0x97e554('0x59')](_0x53762b[_0x97e554('0x25')])?moment()['format'](_0x97e554('0x62')):undefined});return null;})['then'](function(_0x46acea){const _0xc4596b=_0x533bf0;if(_0x46acea)return _0x1d05ab['interaction']=_0x46acea[_0xc4596b('0x5d')]({'plain':!![]}),interaction_log[_0xc4596b('0x5b')]('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x2725d1[_0xc4596b('0x50')]['id'],_0x2725d1[_0xc4596b('0x50')][_0xc4596b('0x4a')],_0x2725d1[_0xc4596b('0x50')]['role'],_0x1d05ab[_0xc4596b('0x2')]['id'],_0x2725d1[_0xc4596b('0x54')]?JSON[_0xc4596b('0x16')](_0x2725d1['body']):_0xc4596b('0x43')),respondWithRpcPromise(_0xc4596b('0x23'),_0xc4596b('0x37'),_0x1d05ab);return null;})[_0x533bf0('0x1f')](function(_0x4508bb){const _0x74c129=_0x533bf0;if(_0x4508bb){if(_0x2725d1['body']['manual'])return _0x1d05ab['message'][_0x74c129('0x22')]=util['format'](_0x74c129('0x2f'),_0x2725d1[_0x74c129('0x50')][_0x74c129('0x4a')]),_0x1d05ab['message'][_0x74c129('0x3d')]=_0x1d05ab[_0x74c129('0x3d')],_0x1d05ab[_0x74c129('0x2b')][_0x74c129('0x1b')]=_0x74c129('0xf'),respondWithRpcPromise(_0x74c129('0x55'),_0x74c129('0x55'),{'event':_0x74c129('0x20'),'message':_['merge'](_0x1d05ab[_0x74c129('0x2b')],JSON[_0x74c129('0x4f')](_0x1d05ab[_0x74c129('0x2')][_0x74c129('0x3e')]))},client9002)[_0x74c129('0x1f')](function(){return _0x1d05ab;});return _0x1d05ab;}return null;})[_0x533bf0('0x1f')](respondWithResult(_0x1ac94d,null))[_0x533bf0('0x56')](handleError(_0x1ac94d,null));},exports[_0x4ba0a2('0x4b')]=function(_0x27daa4,_0x41cdaf){const _0x1bf9e9=_0x4ba0a2,_0x2fd311={'agent':{},'channel':_0x1bf9e9('0x13')};return _0x27daa4[_0x1bf9e9('0x54')]['id']&&delete _0x27daa4['body']['id'],_0x27daa4[_0x1bf9e9('0x54')][_0x1bf9e9('0x24')]=_0x27daa4[_0x1bf9e9('0x54')][_0x1bf9e9('0x24')]||_0x27daa4[_0x1bf9e9('0x50')]['id'],_0x2fd311[_0x1bf9e9('0x19')]['id']=_0x27daa4[_0x1bf9e9('0x54')][_0x1bf9e9('0x24')],db['ChatMessage'][_0x1bf9e9('0x26')]({'where':{'id':_0x27daa4[_0x1bf9e9('0xe')]['id'],'UserId':null}})[_0x1bf9e9('0x1f')](handleEntityNotFound(_0x41cdaf,null))[_0x1bf9e9('0x1f')](function(_0x2cd096){const _0x438ad1=_0x1bf9e9;if(_0x2cd096)return _0x2fd311[_0x438ad1('0x2b')]=_0x2cd096[_0x438ad1('0x5d')]({'plain':!![]}),db[_0x438ad1('0x40')]['findOne']({'where':{'id':_0x2cd096[_0x438ad1('0x3')]}});return null;})['then'](handleEntityNotFound(_0x41cdaf,null))[_0x1bf9e9('0x1f')](function(_0x4ff7fa){const _0x4219e9=_0x1bf9e9;if(_0x4ff7fa)return _0x2fd311['interaction']=_0x4ff7fa[_0x4219e9('0x5d')]({'plain':!![]}),interaction_log['info'](_0x4219e9('0xb'),_0x27daa4['user']['id'],_0x27daa4[_0x4219e9('0x50')][_0x4219e9('0x4a')],_0x27daa4[_0x4219e9('0x50')][_0x4219e9('0x48')],_0x2fd311[_0x4219e9('0x2')]['id'],_0x27daa4[_0x4219e9('0x54')]?JSON[_0x4219e9('0x16')](_0x27daa4[_0x4219e9('0x54')]):'null'),respondWithRpcPromise('RejectMessage','rejectMessage',_0x2fd311);return null;})['then'](function(_0x37fd00){const _0x27db94=_0x1bf9e9;if(_0x37fd00)return _0x37fd00[_0x27db94('0x2b')][_0x27db94('0x22')]=util[_0x27db94('0x61')](_0x27db94('0x2f'),_0x27daa4['user']['name']),_0x37fd00[_0x27db94('0x2b')][_0x27db94('0x3d')]=_0x2fd311[_0x27db94('0x3d')],_0x37fd00[_0x27db94('0x2b')][_0x27db94('0x1b')]=_0x27db94('0x4b'),respondWithRpcPromise('EventManager',_0x27db94('0x55'),{'event':_0x27db94('0x1e'),'message':_0x37fd00[_0x27db94('0x2b')]},client9002),_0x2fd311;return null;})[_0x1bf9e9('0x1f')](respondWithResult(_0x41cdaf,null))[_0x1bf9e9('0x56')](handleError(_0x41cdaf,null));};