Built motion from commit 82a371561bcdbc7605c801e5e414f4032ba9e7ad. Version 3.0.0...
[motion-next.git] / server / api / chatMessage / chatMessage.controller.js
1 const a80_0x2f3f=['create','get','debug','length','request','EventManager','ChatInteraction','send','merge','like','sequelize','where','read1stAt','ChatMessage,\x20%s,\x20%s','destroy','attributes','jayson/promise','ChatInteractionId','set','request\x20sent','Contact','ChatMessage','../../components/parsers/qs','readAt','status','YYYY-MM-DD\x20HH:mm:ss','result','accept','fieldName','then','CmContact','formData','includeAll','catch','read','reject','moment','parse','acceptmessage','options','client','stringify','name','../../rediscache','../../config/logger','body','model','nolimit','channel','query','filter','update','role','index','api','UserId','acceptMessage','message','./chatMessage.socket','interface','isNil','interaction','findAll','sendStatus','chat','offset','AcceptMessage','sort','null','end','error','[CHATMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','intersection','stack','params','pick','describe','rejectMessage','../../mysqldb','limit','RejectMessage','filters','keys','format','show','undefined','util','fields','key','manual','event','rawAttributes','info','findOne','order','user','json','count','SIP/%s','http','agent','map','include','chat-interactions','VIRTUAL'];(function(_0x1c0845,_0x2f3f6d){const _0xbb396b=function(_0x362e0b){while(--_0x362e0b){_0x1c0845['push'](_0x1c0845['shift']());}};_0xbb396b(++_0x2f3f6d);}(a80_0x2f3f,0xb6));const a80_0xbb39=function(_0x1c0845,_0x2f3f6d){_0x1c0845=_0x1c0845-0x0;let _0xbb396b=a80_0x2f3f[_0x1c0845];return _0xbb396b;};const _0x18b0e0=a80_0xbb39;'use strict';const moment=require(_0x18b0e0('0x40')),util=require(_0x18b0e0('0x9')),_=require('lodash'),qs=require(_0x18b0e0('0x32')),logger=require(_0x18b0e0('0x48'))(_0x18b0e0('0x52')),{getSocket}=require(_0x18b0e0('0x47')),db=require(_0x18b0e0('0x1'))['db'],{Op}=require(_0x18b0e0('0x26')),interaction_log=require(_0x18b0e0('0x48'))(_0x18b0e0('0x1a')),socket=getSocket();require(_0x18b0e0('0x56'))['register'](socket);const jayson=require(_0x18b0e0('0x2c')),client=jayson[_0x18b0e0('0x44')][_0x18b0e0('0x16')]({'port':0x232c}),client9002=jayson[_0x18b0e0('0x44')]['http']({'port':0x232a});function respondWithRpcPromise(_0x362e0b,_0x55b94a,_0x56fe35,_0x92e31c){return new Promise(function(_0x71744a,_0x5062aa){const _0x5b0613=a80_0xbb39,_0x5115a5=_0x92e31c||client;return _0x5115a5[_0x5b0613('0x20')](_0x362e0b,_0x56fe35)[_0x5b0613('0x39')](function(_0x51f79f){const _0x59c933=_0x5b0613;logger[_0x59c933('0xf')](_0x59c933('0x29'),_0x55b94a,_0x59c933('0x2f')),logger[_0x59c933('0x1e')]('ChatMessage,\x20%s,\x20%s,\x20%s',_0x55b94a,'request\x20sent',JSON[_0x59c933('0x45')](_0x51f79f));if(_0x51f79f[_0x59c933('0x62')]){if(_0x51f79f[_0x59c933('0x62')]['code']===0x1f4)return logger[_0x59c933('0x62')]('ChatMessage,\x20%s,\x20%s',_0x55b94a,_0x51f79f[_0x59c933('0x62')][_0x59c933('0x55')]),_0x5062aa(_0x51f79f[_0x59c933('0x62')][_0x59c933('0x55')]);return logger[_0x59c933('0x62')]('ChatMessage,\x20%s,\x20%s',_0x55b94a,_0x51f79f[_0x59c933('0x62')][_0x59c933('0x55')]),_0x71744a(_0x51f79f[_0x59c933('0x62')]['message']);}else logger[_0x59c933('0xf')](_0x59c933('0x29'),_0x55b94a,_0x59c933('0x2f')),_0x71744a(_0x51f79f[_0x59c933('0x36')]['message']);})[_0x5b0613('0x3d')](function(_0x16843d){const _0x11d9c4=_0x5b0613;logger[_0x11d9c4('0x62')]('ChatMessage,\x20%s,\x20%s',_0x55b94a,_0x16843d),_0x5062aa(_0x16843d);});});}function respondWithResult(_0x55345b,_0x41d168){return _0x41d168=_0x41d168||0xc8,function(_0x4c5701){const _0x5e6aa8=a80_0xbb39;if(_0x4c5701)return _0x55345b[_0x5e6aa8('0x34')](_0x41d168)[_0x5e6aa8('0x13')](_0x4c5701);};}function respondWithFilteredResult(_0x29609f,_0x456461){return function(_0x1b8632){const _0x3ab017=a80_0xbb39;if(_0x1b8632){const _0x34ddca=_0x1b8632['count'],_0x1cb663=_0x456461[_0x3ab017('0x5d')];let _0x460375=_0x456461[_0x3ab017('0x5d')]+_0x456461[_0x3ab017('0x2')],_0x80f3ab;return _0x460375>=_0x34ddca?(_0x460375=_0x34ddca,_0x80f3ab=0xc8):_0x80f3ab=0xce,_0x29609f['status'](_0x80f3ab),_0x29609f[_0x3ab017('0x2e')]('Content-Range',_0x1cb663+'-'+_0x460375+'/'+_0x34ddca)['json'](_0x1b8632);}return null;};}function saveUpdates(_0x197177){return function(_0x439b29){const _0x1cb0bd=a80_0xbb39;if(_0x439b29)return _0x439b29[_0x1cb0bd('0x4f')](_0x197177)['then'](function(_0x2dad23){return _0x2dad23;});return null;};}function removeEntity(_0xc50d49){return function(_0x33c7b8){if(_0x33c7b8)return _0x33c7b8['destroy']()['then'](function(){const _0x6f1734=a80_0xbb39;_0xc50d49[_0x6f1734('0x34')](0xcc)[_0x6f1734('0x61')]();});};}function handleEntityNotFound(_0xcd1093){return function(_0x56af6b){const _0x2150fc=a80_0xbb39;return!_0x56af6b&&_0xcd1093[_0x2150fc('0x5b')](0x194),_0x56af6b;};}function handleError(_0x240b19,_0x39d7a5){return _0x39d7a5=_0x39d7a5||0x1f4,function(_0x1f9e57){const _0x32d734=a80_0xbb39;logger['error'](_0x1f9e57[_0x32d734('0x65')]),_0x1f9e57[_0x32d734('0x46')]&&delete _0x1f9e57['name'],_0x240b19[_0x32d734('0x34')](_0x39d7a5)[_0x32d734('0x23')](_0x1f9e57);};}exports[_0x18b0e0('0x51')]=function(_0x3a02ff,_0x21ad66){const _0xd55fc0=_0x18b0e0;let _0x255dca={};const _0x2d8c15={},_0xb00b11={'count':0x0,'rows':[]},_0x4d799e=_[_0xd55fc0('0x18')](db['ChatMessage'][_0xd55fc0('0xe')],function(_0x430099){const _0x2b98d8=_0xd55fc0;return{'name':_0x430099[_0x2b98d8('0x38')],'type':_0x430099['type'][_0x2b98d8('0xb')]};});_0x2d8c15['model']=_[_0xd55fc0('0x18')](_0x4d799e,_0xd55fc0('0x46')),_0x2d8c15['query']=_[_0xd55fc0('0x5')](_0x3a02ff[_0xd55fc0('0x4d')]),_0x2d8c15[_0xd55fc0('0x4')]=_[_0xd55fc0('0x64')](_0x2d8c15['model'],_0x2d8c15[_0xd55fc0('0x4d')]),_0x255dca[_0xd55fc0('0x2b')]=_[_0xd55fc0('0x64')](_0x2d8c15[_0xd55fc0('0x4a')],qs[_0xd55fc0('0xa')](_0x3a02ff[_0xd55fc0('0x4d')]['fields'])),_0x255dca[_0xd55fc0('0x2b')]=_0x255dca[_0xd55fc0('0x2b')][_0xd55fc0('0x1f')]?_0x255dca[_0xd55fc0('0x2b')]:_0x2d8c15['model'];typeof _0x3a02ff['query'][_0xd55fc0('0x4b')]===_0xd55fc0('0x8')&&(_0x255dca[_0xd55fc0('0x2')]=qs[_0xd55fc0('0x2')](_0x3a02ff[_0xd55fc0('0x4d')]['limit']),_0x255dca[_0xd55fc0('0x5d')]=qs[_0xd55fc0('0x5d')](_0x3a02ff[_0xd55fc0('0x4d')][_0xd55fc0('0x5d')]));_0x255dca[_0xd55fc0('0x11')]=qs['sort'](_0x3a02ff[_0xd55fc0('0x4d')][_0xd55fc0('0x5f')]),_0x255dca[_0xd55fc0('0x27')]=qs[_0xd55fc0('0x4')](_[_0xd55fc0('0x67')](_0x3a02ff[_0xd55fc0('0x4d')],_0x2d8c15[_0xd55fc0('0x4')]),_0x4d799e);_0x3a02ff['query'][_0xd55fc0('0x4e')]&&(_0x255dca['where']=_['merge'](_0x255dca[_0xd55fc0('0x27')],{[Op['or']]:_['map'](_0x4d799e,function(_0x2ff40a){const _0x4db692=_0xd55fc0;if(_0x2ff40a['type']!==_0x4db692('0x1b')){const _0x2247f8={};return _0x2247f8[_0x2ff40a[_0x4db692('0x46')]]={[Op[_0x4db692('0x25')]]:'%'+_0x3a02ff[_0x4db692('0x4d')][_0x4db692('0x4e')]+'%'},_0x2247f8;}})}));_0x255dca=_[_0xd55fc0('0x24')]({},_0x255dca,_0x3a02ff[_0xd55fc0('0x43')]);const _0x18341d={'where':_0x255dca[_0xd55fc0('0x27')]};return db[_0xd55fc0('0x31')]['count'](_0x18341d)[_0xd55fc0('0x39')](function(_0x4f100d){const _0x4f847d=_0xd55fc0;return _0xb00b11[_0x4f847d('0x14')]=_0x4f100d,_0x3a02ff['query'][_0x4f847d('0x3c')]&&(_0x255dca[_0x4f847d('0x19')]=[{'all':!![]}]),db['ChatMessage'][_0x4f847d('0x5a')](_0x255dca);})[_0xd55fc0('0x39')](function(_0x56bbb3){return _0xb00b11['rows']=_0x56bbb3,_0xb00b11;})[_0xd55fc0('0x39')](respondWithFilteredResult(_0x21ad66,_0x255dca))[_0xd55fc0('0x3d')](handleError(_0x21ad66,null));},exports[_0x18b0e0('0x7')]=function(_0xbca2a7,_0x4390b0){const _0xb2e25f=_0x18b0e0;let _0x4653b9={'raw':!![],'where':{'id':_0xbca2a7[_0xb2e25f('0x66')]['id']}};const _0x1c6bde={};return _0x1c6bde[_0xb2e25f('0x4a')]=_['keys'](db['ChatMessage'][_0xb2e25f('0xe')]),_0x1c6bde[_0xb2e25f('0x4d')]=_[_0xb2e25f('0x5')](_0xbca2a7[_0xb2e25f('0x4d')]),_0x1c6bde[_0xb2e25f('0x4')]=_[_0xb2e25f('0x64')](_0x1c6bde[_0xb2e25f('0x4a')],_0x1c6bde[_0xb2e25f('0x4d')]),_0x4653b9[_0xb2e25f('0x2b')]=_[_0xb2e25f('0x64')](_0x1c6bde[_0xb2e25f('0x4a')],qs[_0xb2e25f('0xa')](_0xbca2a7[_0xb2e25f('0x4d')][_0xb2e25f('0xa')])),_0x4653b9[_0xb2e25f('0x2b')]=_0x4653b9[_0xb2e25f('0x2b')][_0xb2e25f('0x1f')]?_0x4653b9[_0xb2e25f('0x2b')]:_0x1c6bde['model'],_0xbca2a7[_0xb2e25f('0x4d')][_0xb2e25f('0x3c')]&&(_0x4653b9['include']=[{'all':!![]}]),_0x4653b9=_[_0xb2e25f('0x24')]({},_0x4653b9,_0xbca2a7[_0xb2e25f('0x43')]),db[_0xb2e25f('0x31')][_0xb2e25f('0x10')](_0x4653b9)[_0xb2e25f('0x39')](handleEntityNotFound(_0x4390b0,null))[_0xb2e25f('0x39')](respondWithResult(_0x4390b0,null))[_0xb2e25f('0x3d')](handleError(_0x4390b0,null));},exports[_0x18b0e0('0x1c')]=function(_0x16089e,_0x46403d){const _0x4ba0a6=_0x18b0e0;return db[_0x4ba0a6('0x31')][_0x4ba0a6('0x1c')](_0x16089e[_0x4ba0a6('0x49')],{})['then'](respondWithResult(_0x46403d,0xc9))['catch'](handleError(_0x46403d,null));},exports['update']=function(_0x315c82,_0x32dbbd){const _0xcb2464=_0x18b0e0;return _0x315c82['body']['id']&&delete _0x315c82['body']['id'],db[_0xcb2464('0x31')]['findOne']({'where':{'id':_0x315c82[_0xcb2464('0x66')]['id']}})[_0xcb2464('0x39')](handleEntityNotFound(_0x32dbbd,null))[_0xcb2464('0x39')](saveUpdates(_0x315c82['body'],null))[_0xcb2464('0x39')](respondWithResult(_0x32dbbd,null))[_0xcb2464('0x3d')](handleError(_0x32dbbd,null));},exports[_0x18b0e0('0x2a')]=function(_0x4c1cf6,_0x540565){const _0x2d79d1=_0x18b0e0;return db[_0x2d79d1('0x31')][_0x2d79d1('0x10')]({'where':{'id':_0x4c1cf6[_0x2d79d1('0x66')]['id']}})[_0x2d79d1('0x39')](handleEntityNotFound(_0x540565,null))[_0x2d79d1('0x39')](removeEntity(_0x540565,null))[_0x2d79d1('0x3d')](handleError(_0x540565,null));},exports[_0x18b0e0('0x68')]=function(_0x6f4112,_0x439237){const _0x4d0f67=_0x18b0e0;return db[_0x4d0f67('0x31')]['describe']()['then'](respondWithResult(_0x439237,null))[_0x4d0f67('0x3d')](handleError(_0x439237,null));},exports[_0x18b0e0('0x37')]=function(_0x1ade99,_0x359c07){const _0x181971=_0x18b0e0,_0x2fd55e={'channel':_0x181971('0x5c')};return _0x1ade99[_0x181971('0x49')]['id']&&delete _0x1ade99[_0x181971('0x49')]['id'],_0x1ade99['body'][_0x181971('0x3e')]=!![],_0x1ade99['body'][_0x181971('0x33')]=moment()['format'](_0x181971('0x35')),_0x1ade99[_0x181971('0x49')][_0x181971('0x53')]=_0x1ade99['body']['UserId']||_0x1ade99['user']['id'],db['ChatMessage']['findOne']({'where':{'id':_0x1ade99['params']['id'],'UserId':null},'include':[{'model':db[_0x181971('0x3a')],'as':_0x181971('0x30')}]})['then'](handleEntityNotFound(_0x359c07,null))['then'](saveUpdates(_0x1ade99['body'],null))[_0x181971('0x39')](function(_0x271373){const _0x4537d2=_0x181971;if(_0x271373)return _0x2fd55e[_0x4537d2('0x55')]=_0x271373[_0x4537d2('0x1d')]({'plain':!![]}),db['ChatInteraction'][_0x4537d2('0x10')]({'where':{'id':_0x271373[_0x4537d2('0x2d')]}});return null;})[_0x181971('0x39')](handleEntityNotFound(_0x359c07,null))[_0x181971('0x39')](function(_0x30571d){const _0x354f3c=_0x181971;if(_0x30571d)return _0x30571d[_0x354f3c('0x4f')]({'UserId':_0x1ade99[_0x354f3c('0x49')][_0x354f3c('0x53')],'read1stAt':_[_0x354f3c('0x58')](_0x30571d[_0x354f3c('0x28')])?moment()[_0x354f3c('0x6')](_0x354f3c('0x35')):undefined});return null;})[_0x181971('0x39')](function(_0xde0efa){const _0x316eea=_0x181971;if(_0xde0efa)return _0x2fd55e[_0x316eea('0x59')]=_0xde0efa[_0x316eea('0x1d')]({'plain':!![]}),interaction_log[_0x316eea('0xf')]('[CHATMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s',_0x1ade99[_0x316eea('0x12')]['id'],_0x1ade99[_0x316eea('0x12')][_0x316eea('0x46')],_0x1ade99[_0x316eea('0x12')][_0x316eea('0x50')],_0x2fd55e['interaction']['id'],_0x1ade99[_0x316eea('0x49')]?JSON[_0x316eea('0x45')](_0x1ade99[_0x316eea('0x49')]):_0x316eea('0x60')),respondWithRpcPromise(_0x316eea('0x5e'),_0x316eea('0x54'),_0x2fd55e);return null;})['then'](function(_0x47ec4c){const _0x5d1bf=_0x181971;if(_0x47ec4c){if(_0x1ade99[_0x5d1bf('0x49')][_0x5d1bf('0xc')])return _0x2fd55e[_0x5d1bf('0x55')][_0x5d1bf('0x57')]=util['format'](_0x5d1bf('0x15'),_0x1ade99[_0x5d1bf('0x12')][_0x5d1bf('0x46')]),_0x2fd55e['message'][_0x5d1bf('0x4c')]=_0x2fd55e[_0x5d1bf('0x4c')],_0x2fd55e[_0x5d1bf('0x55')][_0x5d1bf('0xd')]=_0x5d1bf('0x37'),respondWithRpcPromise(_0x5d1bf('0x21'),_0x5d1bf('0x21'),{'event':_0x5d1bf('0x42'),'message':_['merge'](_0x2fd55e[_0x5d1bf('0x55')],JSON[_0x5d1bf('0x41')](_0x2fd55e[_0x5d1bf('0x59')][_0x5d1bf('0x3b')]))},client9002)[_0x5d1bf('0x39')](function(){return _0x2fd55e;});return _0x2fd55e;}return null;})[_0x181971('0x39')](respondWithResult(_0x359c07,null))[_0x181971('0x3d')](handleError(_0x359c07,null));},exports[_0x18b0e0('0x3f')]=function(_0x585578,_0x2d60eb){const _0x2f2f4f=_0x18b0e0,_0x158d3b={'agent':{},'channel':_0x2f2f4f('0x5c')};return _0x585578['body']['id']&&delete _0x585578[_0x2f2f4f('0x49')]['id'],_0x585578['body']['UserId']=_0x585578[_0x2f2f4f('0x49')]['UserId']||_0x585578[_0x2f2f4f('0x12')]['id'],_0x158d3b[_0x2f2f4f('0x17')]['id']=_0x585578[_0x2f2f4f('0x49')]['UserId'],db[_0x2f2f4f('0x31')]['findOne']({'where':{'id':_0x585578[_0x2f2f4f('0x66')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x2d60eb,null))['then'](function(_0x476aea){const _0x3bb04b=_0x2f2f4f;if(_0x476aea)return _0x158d3b[_0x3bb04b('0x55')]=_0x476aea['get']({'plain':!![]}),db[_0x3bb04b('0x22')][_0x3bb04b('0x10')]({'where':{'id':_0x476aea['ChatInteractionId']}});return null;})['then'](handleEntityNotFound(_0x2d60eb,null))[_0x2f2f4f('0x39')](function(_0x363077){const _0x855ae8=_0x2f2f4f;if(_0x363077)return _0x158d3b['interaction']=_0x363077[_0x855ae8('0x1d')]({'plain':!![]}),interaction_log[_0x855ae8('0xf')](_0x855ae8('0x63'),_0x585578['user']['id'],_0x585578[_0x855ae8('0x12')][_0x855ae8('0x46')],_0x585578[_0x855ae8('0x12')]['role'],_0x158d3b['interaction']['id'],_0x585578['body']?JSON[_0x855ae8('0x45')](_0x585578[_0x855ae8('0x49')]):_0x855ae8('0x60')),respondWithRpcPromise(_0x855ae8('0x3'),_0x855ae8('0x0'),_0x158d3b);return null;})['then'](function(_0x1804a7){const _0x50dd7e=_0x2f2f4f;if(_0x1804a7)return _0x1804a7['message'][_0x50dd7e('0x57')]=util[_0x50dd7e('0x6')]('SIP/%s',_0x585578[_0x50dd7e('0x12')][_0x50dd7e('0x46')]),_0x1804a7['message'][_0x50dd7e('0x4c')]=_0x158d3b['channel'],_0x1804a7[_0x50dd7e('0x55')][_0x50dd7e('0xd')]=_0x50dd7e('0x3f'),respondWithRpcPromise(_0x50dd7e('0x21'),'EventManager',{'event':'rejectmessage','message':_0x1804a7['message']},client9002),_0x158d3b;return null;})[_0x2f2f4f('0x39')](respondWithResult(_0x2d60eb,null))[_0x2f2f4f('0x3d')](handleError(_0x2d60eb,null));};