Built motion from commit a9fb64cc6defd8fb3a5cc199221f878e91c0e969. Version 3.0.0...
[motion-next.git] / server / api / whatsappMessage / whatsappMessage.controller.js
1 const a801_0x57c6=['show','read','client','WhatsappMessage,\x20%s,\x20%s','manual','event','whatsapp','WhatsappAccountId','stringify','intersection','VIRTUAL','RejectMessage','whatsapp-interactions','model','query','messageId','interaction','acceptMessage','result','WhatsappAccount','rawAttributes','reject','../../config/logger','debug','catch','UserId','user','inspect','accept','update','YYYY-MM-DD\x20HH:mm:ss','MessageStatus','count','rows','WhatsappInteraction','WhatsappInteractionId','merge','destroy','sendStatus','./whatsappMessage.socket','pick','then','body','request\x20sent','../../components/parsers/qs','create','[WHATSAPPMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','error','readAt','SIP/%s','Content-Range','describe','nolimit','message','rejectMessage','set','type','keys','CmContact','attributes','params','twilio','undefined','request','AcceptMessage','sort','name','filters','info','limit','read1stAt','index','include','EventManager','format','sequelize','includeAll','status','http','[WHATSAPPMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','util','options','fieldName','get','findOne','code','offset','interface','WhatsappMessage','length','map','key','fields','channel','filter','where','json','null','findAll','WhatsappAccount,\x20%s,\x20%s,\x20%s'];(function(_0x1c4b4d,_0x57c6b2){const _0x2cfd99=function(_0x219551){while(--_0x219551){_0x1c4b4d['push'](_0x1c4b4d['shift']());}};_0x2cfd99(++_0x57c6b2);}(a801_0x57c6,0x132));const a801_0x2cfd=function(_0x1c4b4d,_0x57c6b2){_0x1c4b4d=_0x1c4b4d-0x0;let _0x2cfd99=a801_0x57c6[_0x1c4b4d];return _0x2cfd99;};const _0xb97af1=a801_0x2cfd;'use strict';const moment=require('moment'),util=require(_0xb97af1('0x4a')),_=require('lodash'),qs=require(_0xb97af1('0x26')),logger=require('../../config/logger')('api'),{getSocket}=require('../../rediscache'),socket=getSocket(),interaction_log=require(_0xb97af1('0x10'))(_0xb97af1('0x6')),db=require('../../mysqldb')['db'],{Op}=require(_0xb97af1('0x45'));require(_0xb97af1('0x21'))['register'](socket);const jayson=require('jayson/promise'),client=jayson[_0xb97af1('0x60')][_0xb97af1('0x48')]({'port':0x232c}),client9002=jayson[_0xb97af1('0x60')][_0xb97af1('0x48')]({'port':0x232a});function respondWithRpcPromise(_0x219551,_0x364492,_0x5b5722,_0x373959){return new Promise(function(_0x4955e8,_0x3e439e){const _0x2601bb=a801_0x2cfd,_0x193745=_0x373959||client;return _0x193745[_0x2601bb('0x39')](_0x219551,_0x5b5722)[_0x2601bb('0x23')](function(_0x427cbc){const _0x303bb1=_0x2601bb;logger['info'](_0x303bb1('0x61'),_0x364492,_0x303bb1('0x25')),logger['debug']('WhatsappMessage,\x20%s,\x20%s,\x20%s',_0x364492,'request\x20sent',JSON[_0x303bb1('0x2')](_0x427cbc));if(_0x427cbc['error']){if(_0x427cbc[_0x303bb1('0x29')][_0x303bb1('0x4f')]===0x1f4)return logger['error'](_0x303bb1('0x61'),_0x364492,_0x427cbc[_0x303bb1('0x29')][_0x303bb1('0x2f')]),_0x3e439e(_0x427cbc[_0x303bb1('0x29')]['message']);return logger['error'](_0x303bb1('0x61'),_0x364492,_0x427cbc[_0x303bb1('0x29')][_0x303bb1('0x2f')]),_0x4955e8(_0x427cbc['error']['message']);}else logger[_0x303bb1('0x3e')](_0x303bb1('0x61'),_0x364492,_0x303bb1('0x25')),_0x4955e8(_0x427cbc[_0x303bb1('0xc')]['message']);})[_0x2601bb('0x12')](function(_0xadc76c){const _0x3f28e2=_0x2601bb;logger['error'](_0x3f28e2('0x61'),_0x364492,_0xadc76c),_0x3e439e(_0xadc76c);});});}function respondWithResult(_0x4c88be,_0x308b94){return _0x308b94=_0x308b94||0xc8,function(_0x496e04){const _0x3be8f1=a801_0x2cfd;if(_0x496e04)return _0x4c88be[_0x3be8f1('0x47')](_0x308b94)[_0x3be8f1('0x5a')](_0x496e04);};}function respondWithFilteredResult(_0x9208b8,_0x4844e3){return function(_0x115e88){const _0x2546d0=a801_0x2cfd;if(_0x115e88){const _0x14d2fb=_0x115e88[_0x2546d0('0x1a')],_0x53319f=_0x4844e3[_0x2546d0('0x50')];let _0x463e9d=_0x4844e3[_0x2546d0('0x50')]+_0x4844e3['limit'],_0x5e9ebb;return _0x463e9d>=_0x14d2fb?(_0x463e9d=_0x14d2fb,_0x5e9ebb=0xc8):_0x5e9ebb=0xce,_0x9208b8[_0x2546d0('0x47')](_0x5e9ebb),_0x9208b8[_0x2546d0('0x31')](_0x2546d0('0x2c'),_0x53319f+'-'+_0x463e9d+'/'+_0x14d2fb)['json'](_0x115e88);}return null;};}function saveUpdates(_0x4c03b7){return function(_0x28916f){const _0x4b46bb=a801_0x2cfd;if(_0x28916f)return _0x28916f[_0x4b46bb('0x17')](_0x4c03b7)[_0x4b46bb('0x23')](function(_0x53780c){return _0x53780c;});return null;};}function removeEntity(_0x812fe4){return function(_0x5e288c){const _0xbcc199=a801_0x2cfd;if(_0x5e288c)return _0x5e288c['destroy']()[_0xbcc199('0x23')](function(){const _0x55a00a=_0xbcc199;_0x812fe4[_0x55a00a('0x47')](0xcc)['end']();});};}function handleEntityNotFound(_0x4bd5ca){return function(_0x27712a){const _0x7942d=a801_0x2cfd;return!_0x27712a&&_0x4bd5ca[_0x7942d('0x20')](0x194),_0x27712a;};}function handleError(_0x33c0c8,_0x2555e5){return _0x2555e5=_0x2555e5||0x1f4,function(_0x1329ed){const _0x1b35c8=a801_0x2cfd;logger['error'](_0x1329ed['stack']),_0x1329ed['name']&&delete _0x1329ed[_0x1b35c8('0x3c')],_0x33c0c8['status'](_0x2555e5)['send'](_0x1329ed);};}exports[_0xb97af1('0x41')]=function(_0x55694d,_0x4c9be0){const _0x671dff=_0xb97af1;let _0x6dfeb9={};const _0x493546={},_0x46f6df={'count':0x0,'rows':[]},_0x202313=_[_0x671dff('0x54')](db[_0x671dff('0x52')][_0x671dff('0xe')],function(_0x528ba1){const _0x222e2c=_0x671dff;return{'name':_0x528ba1[_0x222e2c('0x4c')],'type':_0x528ba1[_0x222e2c('0x32')][_0x222e2c('0x55')]};});_0x493546[_0x671dff('0x7')]=_[_0x671dff('0x54')](_0x202313,_0x671dff('0x3c')),_0x493546[_0x671dff('0x8')]=_[_0x671dff('0x33')](_0x55694d[_0x671dff('0x8')]),_0x493546[_0x671dff('0x3d')]=_[_0x671dff('0x3')](_0x493546['model'],_0x493546['query']),_0x6dfeb9[_0x671dff('0x35')]=_[_0x671dff('0x3')](_0x493546[_0x671dff('0x7')],qs['fields'](_0x55694d[_0x671dff('0x8')][_0x671dff('0x56')])),_0x6dfeb9[_0x671dff('0x35')]=_0x6dfeb9[_0x671dff('0x35')][_0x671dff('0x53')]?_0x6dfeb9[_0x671dff('0x35')]:_0x493546[_0x671dff('0x7')];typeof _0x55694d[_0x671dff('0x8')][_0x671dff('0x2e')]===_0x671dff('0x38')&&(_0x6dfeb9['limit']=qs[_0x671dff('0x3f')](_0x55694d['query'][_0x671dff('0x3f')]),_0x6dfeb9[_0x671dff('0x50')]=qs[_0x671dff('0x50')](_0x55694d[_0x671dff('0x8')]['offset']));_0x6dfeb9['order']=qs[_0x671dff('0x3b')](_0x55694d[_0x671dff('0x8')][_0x671dff('0x3b')]),_0x6dfeb9[_0x671dff('0x59')]=qs[_0x671dff('0x3d')](_[_0x671dff('0x22')](_0x55694d[_0x671dff('0x8')],_0x493546[_0x671dff('0x3d')]),_0x202313);_0x55694d['query'][_0x671dff('0x58')]&&(_0x6dfeb9[_0x671dff('0x59')]=_['merge'](_0x6dfeb9['where'],{[Op['or']]:_[_0x671dff('0x54')](_0x202313,function(_0x5935ba){const _0x48c766=_0x671dff;if(_0x5935ba['type']!==_0x48c766('0x4')){const _0x563621={};return _0x563621[_0x5935ba[_0x48c766('0x3c')]]={[Op['like']]:'%'+_0x55694d[_0x48c766('0x8')]['filter']+'%'},_0x563621;}})}));_0x6dfeb9=_['merge']({},_0x6dfeb9,_0x55694d[_0x671dff('0x4b')]);const _0xc88237={'where':_0x6dfeb9['where']};return db['WhatsappMessage'][_0x671dff('0x1a')](_0xc88237)[_0x671dff('0x23')](function(_0x42c767){const _0x174bb8=_0x671dff;return _0x46f6df[_0x174bb8('0x1a')]=_0x42c767,_0x55694d[_0x174bb8('0x8')]['includeAll']&&(_0x6dfeb9[_0x174bb8('0x42')]=[{'all':!![]}]),db['WhatsappMessage'][_0x174bb8('0x5c')](_0x6dfeb9);})['then'](function(_0x5f0ec1){const _0x57f00a=_0x671dff;return _0x46f6df[_0x57f00a('0x1b')]=_0x5f0ec1,_0x46f6df;})['then'](respondWithFilteredResult(_0x4c9be0,_0x6dfeb9))[_0x671dff('0x12')](handleError(_0x4c9be0,null));},exports[_0xb97af1('0x5e')]=function(_0x3445b6,_0x4b4be1){const _0x48d132=_0xb97af1;let _0x5df341={'raw':!![],'where':{'id':_0x3445b6['params']['id']}};const _0x2119a3={};return _0x2119a3[_0x48d132('0x7')]=_[_0x48d132('0x33')](db[_0x48d132('0x52')][_0x48d132('0xe')]),_0x2119a3[_0x48d132('0x8')]=_[_0x48d132('0x33')](_0x3445b6[_0x48d132('0x8')]),_0x2119a3['filters']=_[_0x48d132('0x3')](_0x2119a3[_0x48d132('0x7')],_0x2119a3['query']),_0x5df341['attributes']=_['intersection'](_0x2119a3[_0x48d132('0x7')],qs[_0x48d132('0x56')](_0x3445b6[_0x48d132('0x8')][_0x48d132('0x56')])),_0x5df341['attributes']=_0x5df341[_0x48d132('0x35')][_0x48d132('0x53')]?_0x5df341[_0x48d132('0x35')]:_0x2119a3[_0x48d132('0x7')],_0x3445b6[_0x48d132('0x8')][_0x48d132('0x46')]&&(_0x5df341[_0x48d132('0x42')]=[{'all':!![]}]),_0x5df341=_[_0x48d132('0x1e')]({},_0x5df341,_0x3445b6[_0x48d132('0x4b')]),db['WhatsappMessage'][_0x48d132('0x4e')](_0x5df341)[_0x48d132('0x23')](handleEntityNotFound(_0x4b4be1,null))[_0x48d132('0x23')](respondWithResult(_0x4b4be1,null))[_0x48d132('0x12')](handleError(_0x4b4be1,null));},exports[_0xb97af1('0x27')]=function(_0x1e3c3f,_0x250b3d){const _0x524e5e=_0xb97af1;return db[_0x524e5e('0x52')][_0x524e5e('0x27')](_0x1e3c3f[_0x524e5e('0x24')],{})['then'](respondWithResult(_0x250b3d,0xc9))[_0x524e5e('0x12')](handleError(_0x250b3d,null));},exports['update']=function(_0x4c275c,_0xc25144){const _0xd173ba=_0xb97af1;return _0x4c275c[_0xd173ba('0x24')]['id']&&delete _0x4c275c[_0xd173ba('0x24')]['id'],db[_0xd173ba('0x52')][_0xd173ba('0x4e')]({'where':{'id':_0x4c275c['params']['id']}})[_0xd173ba('0x23')](handleEntityNotFound(_0xc25144,null))[_0xd173ba('0x23')](saveUpdates(_0x4c275c[_0xd173ba('0x24')],null))[_0xd173ba('0x23')](respondWithResult(_0xc25144,null))[_0xd173ba('0x12')](handleError(_0xc25144,null));},exports[_0xb97af1('0x1f')]=function(_0x2fe051,_0x5ef13a){const _0x5169fb=_0xb97af1;return db[_0x5169fb('0x52')]['findOne']({'where':{'id':_0x2fe051[_0x5169fb('0x36')]['id']}})[_0x5169fb('0x23')](handleEntityNotFound(_0x5ef13a,null))['then'](removeEntity(_0x5ef13a,null))['catch'](handleError(_0x5ef13a,null));},exports[_0xb97af1('0x2d')]=function(_0x51b959,_0x23afb3){const _0x4fffea=_0xb97af1;return db[_0x4fffea('0x52')]['describe']()[_0x4fffea('0x23')](respondWithResult(_0x23afb3,null))[_0x4fffea('0x12')](handleError(_0x23afb3,null));},exports['accept']=function(_0x24d9a1,_0x20a19f){const _0x1c17cf=_0xb97af1,_0x3ba5bf={'channel':_0x1c17cf('0x0')};return _0x24d9a1[_0x1c17cf('0x24')]['id']&&delete _0x24d9a1[_0x1c17cf('0x24')]['id'],_0x24d9a1[_0x1c17cf('0x24')][_0x1c17cf('0x5f')]=!![],_0x24d9a1[_0x1c17cf('0x24')][_0x1c17cf('0x2a')]=moment()[_0x1c17cf('0x44')]('YYYY-MM-DD\x20HH:mm:ss'),_0x24d9a1[_0x1c17cf('0x24')]['UserId']=_0x24d9a1[_0x1c17cf('0x24')][_0x1c17cf('0x13')]||_0x24d9a1['user']['id'],db[_0x1c17cf('0x52')][_0x1c17cf('0x4e')]({'where':{'id':_0x24d9a1[_0x1c17cf('0x36')]['id'],'UserId':null},'include':[{'model':db[_0x1c17cf('0x34')],'as':'Contact'}]})['then'](handleEntityNotFound(_0x20a19f,null))[_0x1c17cf('0x23')](saveUpdates(_0x24d9a1[_0x1c17cf('0x24')],null))[_0x1c17cf('0x23')](function(_0x4cc113){const _0x39b21d=_0x1c17cf;if(_0x4cc113)return _0x3ba5bf['message']=_0x4cc113[_0x39b21d('0x4d')]({'plain':!![]}),db[_0x39b21d('0x1c')]['findOne']({'where':{'id':_0x4cc113[_0x39b21d('0x1d')]}});return null;})[_0x1c17cf('0x23')](handleEntityNotFound(_0x20a19f,null))[_0x1c17cf('0x23')](function(_0x4d8431){const _0x23db95=_0x1c17cf;if(_0x4d8431)return _0x4d8431['update']({'UserId':_0x24d9a1[_0x23db95('0x24')]['UserId'],'read1stAt':_['isNil'](_0x4d8431[_0x23db95('0x40')])?moment()['format'](_0x23db95('0x18')):undefined});return null;})[_0x1c17cf('0x23')](function(_0x5b9db5){const _0xaa3368=_0x1c17cf;if(_0x5b9db5)return _0x3ba5bf[_0xaa3368('0xa')]=_0x5b9db5[_0xaa3368('0x4d')]({'plain':!![]}),interaction_log[_0xaa3368('0x3e')](_0xaa3368('0x28'),_0x24d9a1['user']['id'],_0x24d9a1['user']['name'],_0x24d9a1[_0xaa3368('0x14')]['role'],_0x3ba5bf[_0xaa3368('0xa')]['id'],_0x24d9a1[_0xaa3368('0x24')]?JSON[_0xaa3368('0x2')](_0x24d9a1[_0xaa3368('0x24')]):_0xaa3368('0x5b')),respondWithRpcPromise(_0xaa3368('0x3a'),_0xaa3368('0xb'),_0x3ba5bf);return null;})['then'](function(_0x130029){const _0x7a6d2d=_0x1c17cf;if(_0x130029){if(_0x24d9a1['body'][_0x7a6d2d('0x62')])return _0x3ba5bf[_0x7a6d2d('0x2f')][_0x7a6d2d('0x51')]=util[_0x7a6d2d('0x44')]('SIP/%s',_0x24d9a1['user']['name']),_0x3ba5bf[_0x7a6d2d('0x2f')][_0x7a6d2d('0x57')]=_0x3ba5bf[_0x7a6d2d('0x57')],_0x3ba5bf[_0x7a6d2d('0x2f')][_0x7a6d2d('0x63')]=_0x7a6d2d('0x16'),respondWithRpcPromise('EventManager',_0x7a6d2d('0x43'),{'event':'acceptmessage','message':_0x3ba5bf[_0x7a6d2d('0x2f')]},client9002)[_0x7a6d2d('0x23')](function(){return _0x3ba5bf;});return _0x3ba5bf;}return null;})[_0x1c17cf('0x23')](respondWithResult(_0x20a19f,null))[_0x1c17cf('0x12')](handleError(_0x20a19f,null));},exports[_0xb97af1('0xf')]=function(_0x3070ee,_0xb5bf0e){const _0x5386d6=_0xb97af1,_0x420e96={'agent':{},'channel':_0x5386d6('0x0')};return _0x3070ee[_0x5386d6('0x24')]['id']&&delete _0x3070ee['body']['id'],_0x3070ee[_0x5386d6('0x24')][_0x5386d6('0x13')]=_0x3070ee[_0x5386d6('0x24')][_0x5386d6('0x13')]||_0x3070ee['user']['id'],_0x420e96['agent']['id']=_0x3070ee['body'][_0x5386d6('0x13')],db[_0x5386d6('0x52')][_0x5386d6('0x4e')]({'where':{'id':_0x3070ee[_0x5386d6('0x36')]['id'],'UserId':null}})[_0x5386d6('0x23')](handleEntityNotFound(_0xb5bf0e,null))['then'](function(_0xad59ec){const _0x8f2296=_0x5386d6;if(_0xad59ec)return _0x420e96[_0x8f2296('0x2f')]=_0xad59ec[_0x8f2296('0x4d')]({'plain':!![]}),db[_0x8f2296('0x1c')][_0x8f2296('0x4e')]({'where':{'id':_0xad59ec[_0x8f2296('0x1d')]}});return null;})['then'](handleEntityNotFound(_0xb5bf0e,null))['then'](function(_0xa986d0){const _0x47141a=_0x5386d6;if(_0xa986d0)return _0x420e96['interaction']=_0xa986d0[_0x47141a('0x4d')]({'plain':!![]}),interaction_log[_0x47141a('0x3e')](_0x47141a('0x49'),_0x3070ee[_0x47141a('0x14')]['id'],_0x3070ee['user'][_0x47141a('0x3c')],_0x3070ee[_0x47141a('0x14')]['role'],_0x420e96[_0x47141a('0xa')]['id'],_0x3070ee[_0x47141a('0x24')]?JSON[_0x47141a('0x2')](_0x3070ee[_0x47141a('0x24')]):_0x47141a('0x5b')),respondWithRpcPromise(_0x47141a('0x5'),_0x47141a('0x30'),_0x420e96);return null;})[_0x5386d6('0x23')](function(_0x44679c){const _0xbbe976=_0x5386d6;if(_0x44679c)return _0x44679c[_0xbbe976('0x2f')]['interface']=util[_0xbbe976('0x44')](_0xbbe976('0x2b'),_0x3070ee[_0xbbe976('0x14')][_0xbbe976('0x3c')]),_0x44679c[_0xbbe976('0x2f')]['channel']=_0x420e96[_0xbbe976('0x57')],_0x44679c[_0xbbe976('0x2f')][_0xbbe976('0x63')]='reject',respondWithRpcPromise(_0xbbe976('0x43'),_0xbbe976('0x43'),{'event':'rejectmessage','message':_0x44679c[_0xbbe976('0x2f')]},client9002),_0x420e96;return null;})['then'](respondWithResult(_0xb5bf0e,null))[_0x5386d6('0x12')](handleError(_0xb5bf0e,null));},exports[_0xb97af1('0x47')]=function(_0x23eef4,_0x1107da){const _0x59ecf8=_0xb97af1;_0x23eef4[_0x59ecf8('0x24')]['id']&&delete _0x23eef4[_0x59ecf8('0x24')]['id'];let _0x2e8ffe;return db[_0x59ecf8('0x52')]['findOne']({'where':{'id':_0x23eef4['params']['id']}})[_0x59ecf8('0x23')](handleEntityNotFound(_0x1107da,null))[_0x59ecf8('0x23')](function(_0x1fb8bf){const _0xeba97a=_0x59ecf8;if(_0x1fb8bf)return _0x2e8ffe=_0x1fb8bf,db[_0xeba97a('0xd')][_0xeba97a('0x4e')]({'where':{'id':_0x1fb8bf[_0xeba97a('0x1')]}});})['then'](handleEntityNotFound(_0x1107da,null))['then'](function(_0x1aa03f){const _0x40e4dc=_0x59ecf8;if(_0x1aa03f){logger[_0x40e4dc('0x11')]('WhatsppMessage,\x20%s,\x20%s,\x20%s','status','received\x20delivery\x20report\x20from',_0x1aa03f['type'],util['inspect'](_0x23eef4[_0x40e4dc('0x24')],{'showHidden':![],'depth':null}));switch(_0x1aa03f[_0x40e4dc('0x32')]){case _0x40e4dc('0x37'):if(_0x23eef4[_0x40e4dc('0x24')]['MessageSid']&&_0x23eef4['body']['MessageSid']===_0x2e8ffe[_0x40e4dc('0x9')]&&_0x23eef4[_0x40e4dc('0x24')][_0x40e4dc('0x19')]&&_0x23eef4[_0x40e4dc('0x24')]['MessageStatus']===_0x40e4dc('0x5f'))return _0x2e8ffe[_0x40e4dc('0x17')]({'read':!![]});else logger['error'](_0x40e4dc('0x5d'),_0x40e4dc('0x47'),_0x40e4dc('0x37'),util[_0x40e4dc('0x15')](_0x23eef4['body'],{'showHidden':![],'depth':null}));break;}return _0x2e8ffe;}})[_0x59ecf8('0x23')](respondWithResult(_0x1107da,null))[_0x59ecf8('0x12')](handleError(_0x1107da,null));};