46eae3b2fe9ac1b9cad074775c79974e8e862ffb
[motion-next.git] / server / api / openchannelMessage / openchannelMessage.controller.js
1 const a487_0x2c87=['key','interaction','role','then','client','rejectMessage','fields','openchannel-interactions','includeAll','manual','[OPENCHANNELMESSAGE:ACCEPT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','OpenchannelMessage,\x20%s,\x20%s','show','map','util','destroy','type','params','merge','acceptmessage','jayson/promise','VIRTUAL','result','catch','describe','../../config/logger','length','error','null','options','keys','lodash','agent','isNil','index','Contact','./openchannelMessage.socket','rejectmessage','request','like','message','findAll','OpenchannelInteractionId','undefined','set','../../rediscache','status','../../components/parsers/qs','EventManager','filters','event','stringify','end','format','interface','SIP/%s','../../mysqldb','json','include','read1stAt','readAt','get','pick','channel','accept','rows','order','user','register','OpenchannelMessage','limit','body','offset','create','findOne','read','count','reject','CmContact','where','update','info','attributes','request\x20sent','query','Content-Range','sequelize','intersection','fieldName','filter','rawAttributes','name','http','UserId','[OPENCHANNELMESSAGE:REJECT]\x20id=%s\x20name=%s\x20role=%s\x20interaction=%s\x20body=%s','OpenchannelInteraction','nolimit','send','OpenchannelMessage,\x20%s,\x20%s,\x20%s','model','api','sort','openchannel'];(function(_0x21e480,_0x2c8738){const _0x332199=function(_0x45f9b9){while(--_0x45f9b9){_0x21e480['push'](_0x21e480['shift']());}};_0x332199(++_0x2c8738);}(a487_0x2c87,0x13a));const a487_0x3321=function(_0x21e480,_0x2c8738){_0x21e480=_0x21e480-0x0;let _0x332199=a487_0x2c87[_0x21e480];return _0x332199;};const _0x52805c=a487_0x3321;'use strict';const moment=require('moment'),util=require(_0x52805c('0x9')),_=require(_0x52805c('0x1a')),qs=require(_0x52805c('0x2a')),logger=require(_0x52805c('0x14'))(_0x52805c('0x5f')),{getSocket}=require(_0x52805c('0x28')),socket=getSocket(),interaction_log=require(_0x52805c('0x14'))(_0x52805c('0x2')),db=require(_0x52805c('0x33'))['db'],{Op}=require(_0x52805c('0x51'));require(_0x52805c('0x1f'))[_0x52805c('0x3f')](socket);const jayson=require(_0x52805c('0xf')),client=jayson[_0x52805c('0x66')][_0x52805c('0x57')]({'port':0x232c}),client9002=jayson[_0x52805c('0x66')][_0x52805c('0x57')]({'port':0x232a});function respondWithRpcPromise(_0x45f9b9,_0x1b1582,_0x3536fc,_0x32128b){return new Promise(function(_0x19bab5,_0x5bd92c){const _0x1f8b60=a487_0x3321,_0x518350=_0x32128b||client;return _0x518350[_0x1f8b60('0x21')](_0x45f9b9,_0x3536fc)[_0x1f8b60('0x65')](function(_0x339e87){const _0x34386d=_0x1f8b60;logger['info']('OpenchannelMessage,\x20%s,\x20%s',_0x1b1582,_0x34386d('0x4e')),logger['debug'](_0x34386d('0x5d'),_0x1b1582,_0x34386d('0x4e'),JSON[_0x34386d('0x2e')](_0x339e87));if(_0x339e87[_0x34386d('0x16')]){if(_0x339e87[_0x34386d('0x16')]['code']===0x1f4)return logger['error'](_0x34386d('0x6'),_0x1b1582,_0x339e87['error']['message']),_0x5bd92c(_0x339e87[_0x34386d('0x16')][_0x34386d('0x23')]);return logger[_0x34386d('0x16')](_0x34386d('0x6'),_0x1b1582,_0x339e87[_0x34386d('0x16')][_0x34386d('0x23')]),_0x19bab5(_0x339e87[_0x34386d('0x16')][_0x34386d('0x23')]);}else logger[_0x34386d('0x4c')]('OpenchannelMessage,\x20%s,\x20%s',_0x1b1582,_0x34386d('0x4e')),_0x19bab5(_0x339e87[_0x34386d('0x11')][_0x34386d('0x23')]);})[_0x1f8b60('0x12')](function(_0x1c03c9){const _0x1d2e1d=_0x1f8b60;logger[_0x1d2e1d('0x16')](_0x1d2e1d('0x6'),_0x1b1582,_0x1c03c9),_0x5bd92c(_0x1c03c9);});});}function respondWithResult(_0x5d4221,_0x455af2){return _0x455af2=_0x455af2||0xc8,function(_0x31f9d7){const _0x2fb733=a487_0x3321;if(_0x31f9d7)return _0x5d4221[_0x2fb733('0x29')](_0x455af2)['json'](_0x31f9d7);};}function respondWithFilteredResult(_0x1a65e2,_0x2f9ed3){return function(_0x32ff9c){const _0x3170c2=a487_0x3321;if(_0x32ff9c){const _0x56d89a=_0x32ff9c[_0x3170c2('0x47')],_0x3b9610=_0x2f9ed3[_0x3170c2('0x43')];let _0x33d74b=_0x2f9ed3[_0x3170c2('0x43')]+_0x2f9ed3[_0x3170c2('0x41')],_0x334445;return _0x33d74b>=_0x56d89a?(_0x33d74b=_0x56d89a,_0x334445=0xc8):_0x334445=0xce,_0x1a65e2[_0x3170c2('0x29')](_0x334445),_0x1a65e2[_0x3170c2('0x27')](_0x3170c2('0x50'),_0x3b9610+'-'+_0x33d74b+'/'+_0x56d89a)[_0x3170c2('0x34')](_0x32ff9c);}return null;};}function saveUpdates(_0x3191ad){return function(_0x4be06e){const _0x2d183b=a487_0x3321;if(_0x4be06e)return _0x4be06e['update'](_0x3191ad)[_0x2d183b('0x65')](function(_0x631068){return _0x631068;});return null;};}function removeEntity(_0x39fe97){return function(_0x1530c9){const _0x534b3f=a487_0x3321;if(_0x1530c9)return _0x1530c9[_0x534b3f('0xa')]()['then'](function(){const _0x3e06a5=_0x534b3f;_0x39fe97[_0x3e06a5('0x29')](0xcc)[_0x3e06a5('0x2f')]();});};}function handleEntityNotFound(_0x3d5029){return function(_0x1bec72){return!_0x1bec72&&_0x3d5029['sendStatus'](0x194),_0x1bec72;};}function handleError(_0x479d0d,_0x489126){return _0x489126=_0x489126||0x1f4,function(_0x134ee6){const _0x31728f=a487_0x3321;logger[_0x31728f('0x16')](_0x134ee6['stack']),_0x134ee6[_0x31728f('0x56')]&&delete _0x134ee6[_0x31728f('0x56')],_0x479d0d[_0x31728f('0x29')](_0x489126)[_0x31728f('0x5c')](_0x134ee6);};}exports[_0x52805c('0x1d')]=function(_0x1c0677,_0x24e1cc){const _0x33dcdb=_0x52805c;let _0x2039c5={};const _0x5160b9={},_0xede0d6={'count':0x0,'rows':[]},_0x2d0c92=_[_0x33dcdb('0x8')](db['OpenchannelMessage'][_0x33dcdb('0x55')],function(_0x133713){const _0xcd9093=_0x33dcdb;return{'name':_0x133713[_0xcd9093('0x53')],'type':_0x133713[_0xcd9093('0xb')][_0xcd9093('0x62')]};});_0x5160b9[_0x33dcdb('0x5e')]=_[_0x33dcdb('0x8')](_0x2d0c92,_0x33dcdb('0x56')),_0x5160b9[_0x33dcdb('0x4f')]=_[_0x33dcdb('0x19')](_0x1c0677['query']),_0x5160b9['filters']=_[_0x33dcdb('0x52')](_0x5160b9[_0x33dcdb('0x5e')],_0x5160b9[_0x33dcdb('0x4f')]),_0x2039c5[_0x33dcdb('0x4d')]=_[_0x33dcdb('0x52')](_0x5160b9['model'],qs['fields'](_0x1c0677[_0x33dcdb('0x4f')][_0x33dcdb('0x1')])),_0x2039c5[_0x33dcdb('0x4d')]=_0x2039c5[_0x33dcdb('0x4d')][_0x33dcdb('0x15')]?_0x2039c5['attributes']:_0x5160b9[_0x33dcdb('0x5e')];typeof _0x1c0677[_0x33dcdb('0x4f')][_0x33dcdb('0x5b')]===_0x33dcdb('0x26')&&(_0x2039c5[_0x33dcdb('0x41')]=qs['limit'](_0x1c0677[_0x33dcdb('0x4f')][_0x33dcdb('0x41')]),_0x2039c5[_0x33dcdb('0x43')]=qs[_0x33dcdb('0x43')](_0x1c0677['query'][_0x33dcdb('0x43')]));_0x2039c5[_0x33dcdb('0x3d')]=qs[_0x33dcdb('0x60')](_0x1c0677['query'][_0x33dcdb('0x60')]),_0x2039c5[_0x33dcdb('0x4a')]=qs[_0x33dcdb('0x2c')](_[_0x33dcdb('0x39')](_0x1c0677['query'],_0x5160b9[_0x33dcdb('0x2c')]),_0x2d0c92);_0x1c0677[_0x33dcdb('0x4f')]['filter']&&(_0x2039c5[_0x33dcdb('0x4a')]=_[_0x33dcdb('0xd')](_0x2039c5[_0x33dcdb('0x4a')],{[Op['or']]:_[_0x33dcdb('0x8')](_0x2d0c92,function(_0x3290eb){const _0x1106f9=_0x33dcdb;if(_0x3290eb[_0x1106f9('0xb')]!==_0x1106f9('0x10')){const _0x3e6206={};return _0x3e6206[_0x3290eb['name']]={[Op[_0x1106f9('0x22')]]:'%'+_0x1c0677['query'][_0x1106f9('0x54')]+'%'},_0x3e6206;}})}));_0x2039c5=_[_0x33dcdb('0xd')]({},_0x2039c5,_0x1c0677[_0x33dcdb('0x18')]);const _0x32e9aa={'where':_0x2039c5['where']};return db[_0x33dcdb('0x40')][_0x33dcdb('0x47')](_0x32e9aa)[_0x33dcdb('0x65')](function(_0x2a06af){const _0x2cb076=_0x33dcdb;return _0xede0d6['count']=_0x2a06af,_0x1c0677['query'][_0x2cb076('0x3')]&&(_0x2039c5[_0x2cb076('0x35')]=[{'all':!![]}]),db[_0x2cb076('0x40')][_0x2cb076('0x24')](_0x2039c5);})[_0x33dcdb('0x65')](function(_0x2b6e79){const _0x1e07e5=_0x33dcdb;return _0xede0d6[_0x1e07e5('0x3c')]=_0x2b6e79,_0xede0d6;})[_0x33dcdb('0x65')](respondWithFilteredResult(_0x24e1cc,_0x2039c5))['catch'](handleError(_0x24e1cc,null));},exports[_0x52805c('0x7')]=function(_0x4dd2d5,_0xbef974){const _0x19625d=_0x52805c;let _0x1d1e39={'raw':!![],'where':{'id':_0x4dd2d5[_0x19625d('0xc')]['id']}};const _0x574c80={};return _0x574c80['model']=_[_0x19625d('0x19')](db[_0x19625d('0x40')][_0x19625d('0x55')]),_0x574c80[_0x19625d('0x4f')]=_[_0x19625d('0x19')](_0x4dd2d5[_0x19625d('0x4f')]),_0x574c80[_0x19625d('0x2c')]=_[_0x19625d('0x52')](_0x574c80[_0x19625d('0x5e')],_0x574c80['query']),_0x1d1e39['attributes']=_['intersection'](_0x574c80[_0x19625d('0x5e')],qs[_0x19625d('0x1')](_0x4dd2d5[_0x19625d('0x4f')]['fields'])),_0x1d1e39[_0x19625d('0x4d')]=_0x1d1e39['attributes'][_0x19625d('0x15')]?_0x1d1e39[_0x19625d('0x4d')]:_0x574c80[_0x19625d('0x5e')],_0x4dd2d5['query'][_0x19625d('0x3')]&&(_0x1d1e39[_0x19625d('0x35')]=[{'all':!![]}]),_0x1d1e39=_[_0x19625d('0xd')]({},_0x1d1e39,_0x4dd2d5['options']),db[_0x19625d('0x40')][_0x19625d('0x45')](_0x1d1e39)[_0x19625d('0x65')](handleEntityNotFound(_0xbef974,null))[_0x19625d('0x65')](respondWithResult(_0xbef974,null))[_0x19625d('0x12')](handleError(_0xbef974,null));},exports[_0x52805c('0x44')]=function(_0xb99e51,_0x123a30){const _0x3b9aab=_0x52805c;return db[_0x3b9aab('0x40')][_0x3b9aab('0x44')](_0xb99e51['body'],{})['then'](respondWithResult(_0x123a30,0xc9))[_0x3b9aab('0x12')](handleError(_0x123a30,null));},exports[_0x52805c('0x4b')]=function(_0x4c9703,_0x56ec62){const _0x404af5=_0x52805c;return _0x4c9703[_0x404af5('0x42')]['id']&&delete _0x4c9703[_0x404af5('0x42')]['id'],db[_0x404af5('0x40')][_0x404af5('0x45')]({'where':{'id':_0x4c9703['params']['id']}})[_0x404af5('0x65')](handleEntityNotFound(_0x56ec62,null))['then'](saveUpdates(_0x4c9703[_0x404af5('0x42')],null))[_0x404af5('0x65')](respondWithResult(_0x56ec62,null))[_0x404af5('0x12')](handleError(_0x56ec62,null));},exports[_0x52805c('0xa')]=function(_0xce68a5,_0x4bb9d3){const _0x31ab55=_0x52805c;return db['OpenchannelMessage']['findOne']({'where':{'id':_0xce68a5[_0x31ab55('0xc')]['id']}})['then'](handleEntityNotFound(_0x4bb9d3,null))['then'](removeEntity(_0x4bb9d3,null))['catch'](handleError(_0x4bb9d3,null));},exports[_0x52805c('0x13')]=function(_0x2fd77e,_0x4544c8){const _0x1451f7=_0x52805c;return db[_0x1451f7('0x40')][_0x1451f7('0x13')]()['then'](respondWithResult(_0x4544c8,null))['catch'](handleError(_0x4544c8,null));},exports['accept']=function(_0x1fb8de,_0xae705a){const _0x4067bf=_0x52805c,_0x17ea7b={'channel':_0x4067bf('0x61')};return _0x1fb8de[_0x4067bf('0x42')]['id']&&delete _0x1fb8de[_0x4067bf('0x42')]['id'],_0x1fb8de[_0x4067bf('0x42')][_0x4067bf('0x46')]=!![],_0x1fb8de[_0x4067bf('0x42')][_0x4067bf('0x37')]=moment()['format']('YYYY-MM-DD\x20HH:mm:ss'),_0x1fb8de[_0x4067bf('0x42')]['UserId']=_0x1fb8de['body'][_0x4067bf('0x58')]||_0x1fb8de[_0x4067bf('0x3e')]['id'],db['OpenchannelMessage'][_0x4067bf('0x45')]({'where':{'id':_0x1fb8de[_0x4067bf('0xc')]['id'],'UserId':null},'include':[{'model':db[_0x4067bf('0x49')],'as':_0x4067bf('0x1e')}]})[_0x4067bf('0x65')](handleEntityNotFound(_0xae705a,null))[_0x4067bf('0x65')](saveUpdates(_0x1fb8de[_0x4067bf('0x42')],null))[_0x4067bf('0x65')](function(_0x235008){const _0x274bd2=_0x4067bf;if(_0x235008)return _0x17ea7b[_0x274bd2('0x23')]=_0x235008['get']({'plain':!![]}),db[_0x274bd2('0x5a')][_0x274bd2('0x45')]({'where':{'id':_0x235008[_0x274bd2('0x25')]}});return null;})[_0x4067bf('0x65')](handleEntityNotFound(_0xae705a,null))['then'](function(_0x31c1f6){const _0x10e30f=_0x4067bf;if(_0x31c1f6)return _0x31c1f6[_0x10e30f('0x4b')]({'UserId':_0x1fb8de[_0x10e30f('0x42')][_0x10e30f('0x58')],'read1stAt':_[_0x10e30f('0x1c')](_0x31c1f6[_0x10e30f('0x36')])?moment()[_0x10e30f('0x30')]('YYYY-MM-DD\x20HH:mm:ss'):undefined});return null;})[_0x4067bf('0x65')](function(_0x473295){const _0x5d2d2f=_0x4067bf;if(_0x473295)return _0x17ea7b[_0x5d2d2f('0x63')]=_0x473295[_0x5d2d2f('0x38')]({'plain':!![]}),interaction_log[_0x5d2d2f('0x4c')](_0x5d2d2f('0x5'),_0x1fb8de[_0x5d2d2f('0x3e')]['id'],_0x1fb8de[_0x5d2d2f('0x3e')][_0x5d2d2f('0x56')],_0x1fb8de[_0x5d2d2f('0x3e')][_0x5d2d2f('0x64')],_0x17ea7b[_0x5d2d2f('0x63')]['id'],_0x1fb8de[_0x5d2d2f('0x42')]?JSON[_0x5d2d2f('0x2e')](_0x1fb8de[_0x5d2d2f('0x42')]):_0x5d2d2f('0x17')),respondWithRpcPromise('AcceptMessage','acceptMessage',_0x17ea7b);return null;})[_0x4067bf('0x65')](function(_0x29c1aa){const _0x11dac6=_0x4067bf;if(_0x29c1aa){if(_0x1fb8de['body'][_0x11dac6('0x4')])return _0x17ea7b['message'][_0x11dac6('0x31')]=util['format']('SIP/%s',_0x1fb8de[_0x11dac6('0x3e')][_0x11dac6('0x56')]),_0x17ea7b[_0x11dac6('0x23')][_0x11dac6('0x3a')]=_0x17ea7b[_0x11dac6('0x3a')],_0x17ea7b['message']['event']=_0x11dac6('0x3b'),respondWithRpcPromise(_0x11dac6('0x2b'),_0x11dac6('0x2b'),{'event':_0x11dac6('0xe'),'message':_0x17ea7b[_0x11dac6('0x23')]},client9002)[_0x11dac6('0x65')](function(){return _0x17ea7b;});return _0x17ea7b;}return null;})[_0x4067bf('0x65')](respondWithResult(_0xae705a,null))[_0x4067bf('0x12')](handleError(_0xae705a,null));},exports[_0x52805c('0x48')]=function(_0x1eb070,_0x1e45c5){const _0x39e8b8=_0x52805c,_0x120739={'agent':{},'channel':'openchannel'};return _0x1eb070[_0x39e8b8('0x42')]['id']&&delete _0x1eb070[_0x39e8b8('0x42')]['id'],_0x1eb070[_0x39e8b8('0x42')][_0x39e8b8('0x58')]=_0x1eb070[_0x39e8b8('0x42')][_0x39e8b8('0x58')]||_0x1eb070[_0x39e8b8('0x3e')]['id'],_0x120739[_0x39e8b8('0x1b')]['id']=_0x1eb070['body'][_0x39e8b8('0x58')],db[_0x39e8b8('0x40')][_0x39e8b8('0x45')]({'where':{'id':_0x1eb070[_0x39e8b8('0xc')]['id'],'UserId':null}})['then'](handleEntityNotFound(_0x1e45c5,null))[_0x39e8b8('0x65')](function(_0x550f88){const _0xa547be=_0x39e8b8;if(_0x550f88)return _0x120739['message']=_0x550f88['get']({'plain':!![]}),db[_0xa547be('0x5a')][_0xa547be('0x45')]({'where':{'id':_0x550f88['OpenchannelInteractionId']}});return null;})[_0x39e8b8('0x65')](handleEntityNotFound(_0x1e45c5,null))['then'](function(_0x532188){const _0x598d1d=_0x39e8b8;if(_0x532188)return _0x120739[_0x598d1d('0x63')]=_0x532188[_0x598d1d('0x38')]({'plain':!![]}),interaction_log[_0x598d1d('0x4c')](_0x598d1d('0x59'),_0x1eb070[_0x598d1d('0x3e')]['id'],_0x1eb070['user'][_0x598d1d('0x56')],_0x1eb070[_0x598d1d('0x3e')][_0x598d1d('0x64')],_0x120739['interaction']['id'],_0x1eb070[_0x598d1d('0x42')]?JSON[_0x598d1d('0x2e')](_0x1eb070[_0x598d1d('0x42')]):_0x598d1d('0x17')),respondWithRpcPromise('RejectMessage',_0x598d1d('0x0'),_0x120739);return null;})[_0x39e8b8('0x65')](function(_0x43034e){const _0x3db479=_0x39e8b8;if(_0x43034e)return _0x43034e['message']['interface']=util['format'](_0x3db479('0x32'),_0x1eb070[_0x3db479('0x3e')][_0x3db479('0x56')]),_0x43034e[_0x3db479('0x23')][_0x3db479('0x3a')]=_0x120739[_0x3db479('0x3a')],_0x43034e[_0x3db479('0x23')][_0x3db479('0x2d')]=_0x3db479('0x48'),respondWithRpcPromise(_0x3db479('0x2b'),'EventManager',{'event':_0x3db479('0x20'),'message':_0x43034e[_0x3db479('0x23')]},client9002),_0x120739;return null;})['then'](respondWithResult(_0x1e45c5,null))[_0x39e8b8('0x12')](handleError(_0x1e45c5,null));};