Built motion from commit ffdca78c.|2.6.24
[motion2.git] / server / api / webbar / webbar.controller.js
index 270304c..e4dea9f 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x16d2=['localhost','socket.io-emitter','number','userId\x20is\x20required','string','callNumber\x20is\x20required','info','stringify','emit','log','stack','name','status','send','then','error','code','message','findOne','agent','all','filter','rows','UserId','sessionId','length','\x20not\x20found!','originate','originate\x20fired:','body','json','userId','callNumber','callerId','entityFound:','user:%s','webbar:originate','hangup','hangup\x20fired:','validate','format','webbar:hangup','hangup\x20executed!','answer','answer\x20fired:','answer\x20executed!','catch','hold','hold\x20fired:','webbar:hold','hold\x20executed!','unhold\x20fired:','webbar:unhold','calls','calls\x20fired:','VoiceChannels','conference','conference\x20fired:','conference\x20executed!','transfer','transfer\x20fired:','webbar:transfer','transfer\x20executed!','path','lodash','../../mysqldb','../../config/environment','util','bluebird','jayson/promise','client','http','webbarapi','ioredis','redis','defaults'];(function(_0x161ac3,_0x142e49){var _0x3bb837=function(_0x269c7c){while(--_0x269c7c){_0x161ac3['push'](_0x161ac3['shift']());}};_0x3bb837(++_0x142e49);}(_0x16d2,0x123));var _0x216d=function(_0x49ea0a,_0x365e34){_0x49ea0a=_0x49ea0a-0x0;var _0x2695c1=_0x16d2[_0x49ea0a];return _0x2695c1;};'use strict';var path=require(_0x216d('0x0'));var fs=require('fs');var _=require(_0x216d('0x1'));var db=require(_0x216d('0x2'))['db'];var config=require(_0x216d('0x3'));var util=require(_0x216d('0x4'));var BPromise=require(_0x216d('0x5'));var jayson=require(_0x216d('0x6'));var amiClient=jayson[_0x216d('0x7')][_0x216d('0x8')]({'port':0x232a});var logger=require('../../config/logger')(_0x216d('0x9'));var Redis=require(_0x216d('0xa'));config[_0x216d('0xb')]=_[_0x216d('0xc')](config[_0x216d('0xb')],{'host':_0x216d('0xd'),'port':0x18eb});var io=require(_0x216d('0xe'))(new Redis(config[_0x216d('0xb')]));var Schema=require('validate');var originateValidation=new Schema({'userId':{'type':_0x216d('0xf'),'required':[!![],_0x216d('0x10')]},'callNumber':{'type':_0x216d('0x11'),'required':[!![],_0x216d('0x12')]},'callerId':{'type':_0x216d('0x11')},'callbackUrl':{'type':_0x216d('0x11')}});var hangupValidation=new Schema({'userId':{'type':'number','required':[!![],_0x216d('0x10')]},'sessionId':{'type':'string','required':![]}});var answerValidation=new Schema({'userId':{'type':_0x216d('0xf'),'required':[!![],_0x216d('0x10')]},'sessionId':{'type':_0x216d('0x11'),'required':![]}});var transferValidation=new Schema({'userId':{'type':_0x216d('0xf'),'required':[!![],_0x216d('0x10')]},'sessionId':{'type':_0x216d('0x11'),'required':[!![],'sessionId\x20is\x20required']},'transferNumber':{'type':_0x216d('0x11'),'required':[!![],'transferNumber\x20is\x20required']}});var holdValidation=new Schema({'userId':{'type':_0x216d('0xf'),'required':[!![],_0x216d('0x10')]},'sessionId':{'type':'string','required':![]}});var unholdValidation=new Schema({'userId':{'type':_0x216d('0xf'),'required':[!![],_0x216d('0x10')]},'sessionId':{'type':'string','required':![]}});var callsValidation=new Schema({'userId':{'type':_0x216d('0xf'),'required':[!![],'userId\x20is\x20required']}});var conferenceValidation=new Schema({'userId':{'type':_0x216d('0xf'),'required':[!![],_0x216d('0x10')]}});function emit(_0x4631b0,_0x23ff86,_0x3e5585){logger[_0x216d('0x13')](_0x4631b0,_0x23ff86,JSON[_0x216d('0x14')](_0x3e5585));io['to'](_0x4631b0)[_0x216d('0x15')](_0x23ff86,_0x3e5585);}function handleError(_0x19fdac){return function(_0x53d464){console[_0x216d('0x16')]('handleError:',_0x53d464,_0x53d464 instanceof RangeError);logger['error'](_0x53d464[_0x216d('0x17')]);if(_0x53d464 instanceof RangeError){if(_0x53d464[_0x216d('0x18')]){delete _0x53d464['name'];}_0x19fdac[_0x216d('0x19')](0x194)[_0x216d('0x1a')](_0x53d464);}else{if(_0x53d464['name']){delete _0x53d464[_0x216d('0x18')];}_0x19fdac[_0x216d('0x19')](0x1f4)[_0x216d('0x1a')](_0x53d464);}};}function checkError(){return function(_0x3e9818){if(!_0x3e9818){throw new RangeError('NotFound');}return _0x3e9818;};}function respondWithRpcPromise(_0x20ee7c,_0x294bbf){return new BPromise(function(_0x10f299,_0x438981){var _0x206782=amiClient;return _0x206782['request'](_0x20ee7c,_0x294bbf)[_0x216d('0x1b')](function(_0x1bd4db){if(_0x1bd4db[_0x216d('0x1c')]){if(_0x1bd4db[_0x216d('0x1c')][_0x216d('0x1d')]===0x1f4){return _0x438981(_0x1bd4db['error'][_0x216d('0x1e')]);}return _0x10f299(_0x1bd4db[_0x216d('0x1c')][_0x216d('0x1e')]);}else{_0x10f299(_0x1bd4db['result']);}})['catch'](function(_0x56460f){_0x438981(_0x56460f);});});}function getAgent(_0x4c792e){return db['User'][_0x216d('0x1f')]({'where':{'id':_0x4c792e,'role':_0x216d('0x20')}})[_0x216d('0x1b')](checkError());}function getAgentCheckSession(_0x73b509,_0x46d0ef){return new BPromise(function(_0x47fa6d,_0x5b21d8){var _0xa7624a=respondWithRpcPromise('VoiceChannels');var _0x23d1c3=getAgent(_0x73b509);Promise[_0x216d('0x21')]([_0xa7624a,_0x23d1c3])[_0x216d('0x1b')](function(_0x20bc16){var _0x307f2b=_0x20bc16[0x0];var _0x12bcab=_0x20bc16[0x1];var _0x28fcc2=_[_0x216d('0x22')](_0x307f2b[_0x216d('0x23')],function(_0x28f56a){return _0x28f56a[_0x216d('0x24')]==_0x12bcab['id']&&_0x28f56a[_0x216d('0x25')]==_0x46d0ef;});if(_0x28fcc2[_0x216d('0x26')]==0x1){_0x47fa6d(_0x12bcab);}else{_0x5b21d8(new RangeError('sessionId\x20'+_0x46d0ef+_0x216d('0x27')));}});});}exports[_0x216d('0x28')]=function(_0x37e8e6,_0x510ad9){logger[_0x216d('0x13')](_0x216d('0x29'),_0x37e8e6[_0x216d('0x2a')]);var _0xeff234=originateValidation['validate'](_0x37e8e6[_0x216d('0x2a')]);if(_0xeff234[_0x216d('0x26')]>0x0){return _0x510ad9[_0x216d('0x19')](0x190)[_0x216d('0x2b')](_0xeff234);}var _0x14d417=_0x37e8e6[_0x216d('0x2a')][_0x216d('0x2c')];var _0x35d4d2=_0x37e8e6[_0x216d('0x2a')][_0x216d('0x2d')];var _0x6eda4=_0x37e8e6['body'][_0x216d('0x2e')];var _0x451c4d=_0x37e8e6[_0x216d('0x2a')]['callbackUrl'];return getAgent(_0x14d417)[_0x216d('0x1b')](function(_0x2e86f9){logger['info'](_0x216d('0x2f'),_0x2e86f9['name']);emit(util['format'](_0x216d('0x30'),_0x2e86f9[_0x216d('0x18')]),_0x216d('0x31'),{'callNumber':_0x35d4d2,'callerId':_0x6eda4,'callbackUrl':_0x451c4d});return _0x510ad9[_0x216d('0x19')](0xc8)['json']({'error':![],'message':'originate\x20executed!'});})['catch'](handleError(_0x510ad9));};exports[_0x216d('0x32')]=function(_0x38972e,_0x47e006){logger[_0x216d('0x13')](_0x216d('0x33'),_0x38972e['body']);var _0xe49ba4=hangupValidation[_0x216d('0x34')](_0x38972e[_0x216d('0x2a')]);if(_0xe49ba4[_0x216d('0x26')]>0x0){return _0x47e006[_0x216d('0x19')](0x190)[_0x216d('0x2b')](_0xe49ba4);}var _0x35cb6e=_0x38972e[_0x216d('0x2a')]['userId'];var _0x4bc645=_0x38972e[_0x216d('0x2a')][_0x216d('0x25')];return getAgent(_0x35cb6e)['then'](function(_0xf33f9c){logger[_0x216d('0x13')](_0x216d('0x2f'),_0xf33f9c['name']);emit(util[_0x216d('0x35')](_0x216d('0x30'),_0xf33f9c[_0x216d('0x18')]),_0x216d('0x36'),{'sessionId':_0x4bc645});return _0x47e006['status'](0xc8)[_0x216d('0x2b')]({'error':![],'message':_0x216d('0x37')});})['catch'](handleError(_0x47e006));};exports[_0x216d('0x38')]=function(_0x306e9f,_0x590eb6){logger['info'](_0x216d('0x39'),_0x306e9f[_0x216d('0x2a')]);var _0x3c491e=answerValidation['validate'](_0x306e9f[_0x216d('0x2a')]);if(_0x3c491e['length']>0x0){return _0x590eb6['status'](0x190)[_0x216d('0x2b')](_0x3c491e);}var _0x43336e=_0x306e9f[_0x216d('0x2a')]['userId'];var _0xaccf45=_0x306e9f['body'][_0x216d('0x25')];return getAgent(_0x43336e)[_0x216d('0x1b')](function(_0x842af2){logger['info'](_0x216d('0x2f'),_0x842af2[_0x216d('0x18')]);emit(util[_0x216d('0x35')](_0x216d('0x30'),_0x842af2['name']),'webbar:answer',{'sessionId':_0xaccf45});return _0x590eb6['status'](0xc8)[_0x216d('0x2b')]({'error':![],'message':_0x216d('0x3a')});})[_0x216d('0x3b')](handleError(_0x590eb6));};exports[_0x216d('0x3c')]=function(_0x3344e3,_0x13f51c){logger[_0x216d('0x13')](_0x216d('0x3d'),_0x3344e3['body']);var _0x3771dc=holdValidation[_0x216d('0x34')](_0x3344e3[_0x216d('0x2a')]);if(_0x3771dc[_0x216d('0x26')]>0x0){return _0x13f51c['status'](0x190)[_0x216d('0x2b')](_0x3771dc);}var _0x542e1b=_0x3344e3[_0x216d('0x2a')][_0x216d('0x2c')];var _0xceb993=_0x3344e3['body']['sessionId'];return getAgent(_0x542e1b)[_0x216d('0x1b')](function(_0x32d499){logger[_0x216d('0x13')](_0x216d('0x2f'),_0x32d499[_0x216d('0x18')]);emit(util[_0x216d('0x35')]('user:%s',_0x32d499['name']),_0x216d('0x3e'),{'sessionId':_0xceb993});return _0x13f51c['status'](0xc8)[_0x216d('0x2b')]({'error':![],'message':_0x216d('0x3f')});})['catch'](handleError(_0x13f51c));};exports['unhold']=function(_0x5f37e3,_0x4bac14){logger[_0x216d('0x13')](_0x216d('0x40'),_0x5f37e3[_0x216d('0x2a')]);var _0x216f44=unholdValidation[_0x216d('0x34')](_0x5f37e3[_0x216d('0x2a')]);if(_0x216f44[_0x216d('0x26')]>0x0){return _0x4bac14['status'](0x190)[_0x216d('0x2b')](_0x216f44);}var _0x34cdb9=_0x5f37e3[_0x216d('0x2a')]['userId'];var _0x1e1caf=_0x5f37e3[_0x216d('0x2a')][_0x216d('0x25')];return getAgent(_0x34cdb9)[_0x216d('0x1b')](function(_0x481754){logger[_0x216d('0x13')](_0x216d('0x2f'),_0x481754[_0x216d('0x18')]);emit(util[_0x216d('0x35')]('user:%s',_0x481754[_0x216d('0x18')]),_0x216d('0x41'),{'sessionId':_0x1e1caf});return _0x4bac14['status'](0xc8)[_0x216d('0x2b')]({'error':![],'message':'unhold\x20executed!'});})[_0x216d('0x3b')](handleError(_0x4bac14));};exports[_0x216d('0x42')]=function(_0x22e025,_0xe65193){logger[_0x216d('0x13')](_0x216d('0x43'),_0xe65193[_0x216d('0x2a')]);var _0x2c6cb6=callsValidation[_0x216d('0x34')](_0x22e025['body']);if(_0x2c6cb6[_0x216d('0x26')]>0x0){return _0xe65193[_0x216d('0x19')](0x190)['json'](_0x2c6cb6);}var _0x241ce4=_0x22e025[_0x216d('0x2a')]['userId'];var _0x4edf77=respondWithRpcPromise(_0x216d('0x44'));var _0x5e4b3d=getAgent(_0x241ce4);return Promise[_0x216d('0x21')]([_0x4edf77,_0x5e4b3d])[_0x216d('0x1b')](function(_0x2c9b1f){var _0x590c4e=_0x2c9b1f[0x0];var _0x3acd4b=_0x2c9b1f[0x1];var _0x5112ea=_['filter'](_0x590c4e[_0x216d('0x23')],function(_0x38ee94){return _0x38ee94['UserId']==_0x3acd4b['id'];});return _0xe65193[_0x216d('0x19')](0xc8)[_0x216d('0x2b')]({'count':_0x5112ea[_0x216d('0x26')],'rows':_0x5112ea});})[_0x216d('0x3b')](handleError(_0xe65193));};exports[_0x216d('0x45')]=function(_0xd723fc,_0x5276df){logger['info'](_0x216d('0x46'),_0xd723fc[_0x216d('0x2a')]);var _0x1ce36c=conferenceValidation[_0x216d('0x34')](_0xd723fc[_0x216d('0x2a')]);if(_0x1ce36c[_0x216d('0x26')]>0x0){return _0x5276df[_0x216d('0x19')](0x190)[_0x216d('0x2b')](_0x1ce36c);}var _0x3c01a4=_0xd723fc[_0x216d('0x2a')][_0x216d('0x2c')];return getAgent(_0x3c01a4)[_0x216d('0x1b')](function(_0x489bdd){logger['info'](_0x216d('0x2f'),_0x489bdd[_0x216d('0x18')]);emit(util['format'](_0x216d('0x30'),_0x489bdd['name']),'webbar:conference');return _0x5276df[_0x216d('0x19')](0xc8)[_0x216d('0x2b')]({'error':![],'message':_0x216d('0x47')});})[_0x216d('0x3b')](handleError(_0x5276df));};exports[_0x216d('0x48')]=function(_0x3847b6,_0xb00e58){logger[_0x216d('0x13')](_0x216d('0x49'),_0x3847b6[_0x216d('0x2a')]);var _0x1c08d9=transferValidation[_0x216d('0x34')](_0x3847b6[_0x216d('0x2a')]);if(_0x1c08d9[_0x216d('0x26')]>0x0){return _0xb00e58[_0x216d('0x19')](0x190)[_0x216d('0x2b')](_0x1c08d9);}var _0xb398cc=_0x3847b6[_0x216d('0x2a')][_0x216d('0x2c')];var _0x34540e=_0x3847b6[_0x216d('0x2a')][_0x216d('0x25')];var _0x5f04ba=_0x3847b6[_0x216d('0x2a')]['transferNumber'];return getAgent(_0xb398cc)[_0x216d('0x1b')](function(_0x51507b){logger[_0x216d('0x13')](_0x216d('0x2f'),_0x51507b['name']);emit(util[_0x216d('0x35')](_0x216d('0x30'),_0x51507b[_0x216d('0x18')]),_0x216d('0x4a'),{'sessionId':_0x34540e,'transferNumber':_0x5f04ba});return _0xb00e58[_0x216d('0x19')](0xc8)[_0x216d('0x2b')]({'error':![],'message':_0x216d('0x4b')});})[_0x216d('0x3b')](handleError(_0xb00e58));};
\ No newline at end of file
+var _0x2356=['stringify','emit','log','handleError:','error','stack','name','status','NotFound','code','message','result','catch','User','VoiceChannels','filter','UserId','length','sessionId\x20','\x20not\x20found!','originate','originate\x20fired:','body','json','userId','callNumber','callbackUrl','entityFound:','format','user:%s','originate\x20executed!','hangup','sessionId','webbar:hangup','hangup\x20executed!','answer','webbar:answer','answer\x20executed!','hold\x20fired:','then','webbar:hold','hold\x20executed!','webbar:unhold','unhold\x20executed!','calls\x20fired:','all','rows','conference','webbar:conference','conference\x20executed!','transfer','transfer\x20fired:','transferNumber','webbar:transfer','transfer\x20executed!','lodash','../../mysqldb','bluebird','jayson/promise','../../config/logger','redis','defaults','validate','userId\x20is\x20required','string','callNumber\x20is\x20required','number','sessionId\x20is\x20required','transferNumber\x20is\x20required','info'];(function(_0x14add3,_0x13ce8d){var _0x4a174f=function(_0x2b3ed7){while(--_0x2b3ed7){_0x14add3['push'](_0x14add3['shift']());}};_0x4a174f(++_0x13ce8d);}(_0x2356,0x14f));var _0x6235=function(_0x15ab61,_0x2e1df1){_0x15ab61=_0x15ab61-0x0;var _0x35fd48=_0x2356[_0x15ab61];return _0x35fd48;};'use strict';var path=require('path');var fs=require('fs');var _=require(_0x6235('0x0'));var db=require(_0x6235('0x1'))['db'];var config=require('../../config/environment');var util=require('util');var BPromise=require(_0x6235('0x2'));var jayson=require(_0x6235('0x3'));var amiClient=jayson['client']['http']({'port':0x232a});var logger=require(_0x6235('0x4'))('webbarapi');var Redis=require('ioredis');config[_0x6235('0x5')]=_[_0x6235('0x6')](config[_0x6235('0x5')],{'host':'localhost','port':0x18eb});var io=require('socket.io-emitter')(new Redis(config['redis']));var Schema=require(_0x6235('0x7'));var originateValidation=new Schema({'userId':{'type':'number','required':[!![],_0x6235('0x8')]},'callNumber':{'type':_0x6235('0x9'),'required':[!![],_0x6235('0xa')]},'callerId':{'type':_0x6235('0x9')},'callbackUrl':{'type':'string'}});var hangupValidation=new Schema({'userId':{'type':_0x6235('0xb'),'required':[!![],_0x6235('0x8')]},'sessionId':{'type':_0x6235('0x9'),'required':![]}});var answerValidation=new Schema({'userId':{'type':_0x6235('0xb'),'required':[!![],_0x6235('0x8')]},'sessionId':{'type':'string','required':![]}});var transferValidation=new Schema({'userId':{'type':_0x6235('0xb'),'required':[!![],_0x6235('0x8')]},'sessionId':{'type':_0x6235('0x9'),'required':[!![],_0x6235('0xc')]},'transferNumber':{'type':'string','required':[!![],_0x6235('0xd')]}});var holdValidation=new Schema({'userId':{'type':_0x6235('0xb'),'required':[!![],'userId\x20is\x20required']},'sessionId':{'type':_0x6235('0x9'),'required':![]}});var unholdValidation=new Schema({'userId':{'type':'number','required':[!![],_0x6235('0x8')]},'sessionId':{'type':_0x6235('0x9'),'required':![]}});var callsValidation=new Schema({'userId':{'type':'number','required':[!![],_0x6235('0x8')]}});var conferenceValidation=new Schema({'userId':{'type':_0x6235('0xb'),'required':[!![],_0x6235('0x8')]}});function emit(_0x3f32af,_0x5d1ab7,_0x37b728){logger[_0x6235('0xe')](_0x3f32af,_0x5d1ab7,JSON[_0x6235('0xf')](_0x37b728));io['to'](_0x3f32af)[_0x6235('0x10')](_0x5d1ab7,_0x37b728);}function handleError(_0x78f0db){return function(_0x2a3554){console[_0x6235('0x11')](_0x6235('0x12'),_0x2a3554,_0x2a3554 instanceof RangeError);logger[_0x6235('0x13')](_0x2a3554[_0x6235('0x14')]);if(_0x2a3554 instanceof RangeError){if(_0x2a3554['name']){delete _0x2a3554[_0x6235('0x15')];}_0x78f0db[_0x6235('0x16')](0x194)['send'](_0x2a3554);}else{if(_0x2a3554['name']){delete _0x2a3554[_0x6235('0x15')];}_0x78f0db['status'](0x1f4)['send'](_0x2a3554);}};}function checkError(){return function(_0x4eead1){if(!_0x4eead1){throw new RangeError(_0x6235('0x17'));}return _0x4eead1;};}function respondWithRpcPromise(_0x3e2e24,_0x1eccae){return new BPromise(function(_0x1c60c7,_0x24c057){var _0x270c49=amiClient;return _0x270c49['request'](_0x3e2e24,_0x1eccae)['then'](function(_0x4663b3){if(_0x4663b3['error']){if(_0x4663b3[_0x6235('0x13')][_0x6235('0x18')]===0x1f4){return _0x24c057(_0x4663b3[_0x6235('0x13')][_0x6235('0x19')]);}return _0x1c60c7(_0x4663b3[_0x6235('0x13')]['message']);}else{_0x1c60c7(_0x4663b3[_0x6235('0x1a')]);}})[_0x6235('0x1b')](function(_0x168b01){_0x24c057(_0x168b01);});});}function getAgent(_0x46f73a){return db[_0x6235('0x1c')]['findOne']({'where':{'id':_0x46f73a,'role':'agent'}})['then'](checkError());}function getAgentCheckSession(_0x4f28f2,_0x5aa9fa){return new BPromise(function(_0x404e30,_0x39f563){var _0x20c633=respondWithRpcPromise(_0x6235('0x1d'));var _0x2acc8c=getAgent(_0x4f28f2);Promise['all']([_0x20c633,_0x2acc8c])['then'](function(_0x5dc066){var _0x94db3c=_0x5dc066[0x0];var _0x50ea93=_0x5dc066[0x1];var _0xc77505=_[_0x6235('0x1e')](_0x94db3c['rows'],function(_0x37580b){return _0x37580b[_0x6235('0x1f')]==_0x50ea93['id']&&_0x37580b['sessionId']==_0x5aa9fa;});if(_0xc77505[_0x6235('0x20')]==0x1){_0x404e30(_0x50ea93);}else{_0x39f563(new RangeError(_0x6235('0x21')+_0x5aa9fa+_0x6235('0x22')));}});});}exports[_0x6235('0x23')]=function(_0x5182e5,_0x452f60){logger[_0x6235('0xe')](_0x6235('0x24'),_0x5182e5[_0x6235('0x25')]);var _0x2e233d=originateValidation['validate'](_0x5182e5[_0x6235('0x25')]);if(_0x2e233d['length']>0x0){return _0x452f60['status'](0x190)[_0x6235('0x26')](_0x2e233d);}var _0x54a6ea=_0x5182e5['body'][_0x6235('0x27')];var _0x4b3564=_0x5182e5['body'][_0x6235('0x28')];var _0x176cab=_0x5182e5[_0x6235('0x25')]['callerId'];var _0x258b8a=_0x5182e5[_0x6235('0x25')][_0x6235('0x29')];return getAgent(_0x54a6ea)['then'](function(_0x358ca9){logger['info'](_0x6235('0x2a'),_0x358ca9[_0x6235('0x15')]);emit(util[_0x6235('0x2b')](_0x6235('0x2c'),_0x358ca9[_0x6235('0x15')]),'webbar:originate',{'callNumber':_0x4b3564,'callerId':_0x176cab,'callbackUrl':_0x258b8a});return _0x452f60[_0x6235('0x16')](0xc8)['json']({'error':![],'message':_0x6235('0x2d')});})[_0x6235('0x1b')](handleError(_0x452f60));};exports[_0x6235('0x2e')]=function(_0x3ab7f6,_0x3cc997){logger['info']('hangup\x20fired:',_0x3ab7f6[_0x6235('0x25')]);var _0x3ed704=hangupValidation[_0x6235('0x7')](_0x3ab7f6[_0x6235('0x25')]);if(_0x3ed704[_0x6235('0x20')]>0x0){return _0x3cc997[_0x6235('0x16')](0x190)[_0x6235('0x26')](_0x3ed704);}var _0xc3969=_0x3ab7f6[_0x6235('0x25')][_0x6235('0x27')];var _0x48b6ed=_0x3ab7f6['body'][_0x6235('0x2f')];return getAgent(_0xc3969)['then'](function(_0x585744){logger[_0x6235('0xe')](_0x6235('0x2a'),_0x585744[_0x6235('0x15')]);emit(util['format'](_0x6235('0x2c'),_0x585744['name']),_0x6235('0x30'),{'sessionId':_0x48b6ed});return _0x3cc997[_0x6235('0x16')](0xc8)[_0x6235('0x26')]({'error':![],'message':_0x6235('0x31')});})[_0x6235('0x1b')](handleError(_0x3cc997));};exports[_0x6235('0x32')]=function(_0x105acc,_0x13f974){logger['info']('answer\x20fired:',_0x105acc[_0x6235('0x25')]);var _0x54cbb1=answerValidation[_0x6235('0x7')](_0x105acc[_0x6235('0x25')]);if(_0x54cbb1[_0x6235('0x20')]>0x0){return _0x13f974[_0x6235('0x16')](0x190)[_0x6235('0x26')](_0x54cbb1);}var _0x38092e=_0x105acc[_0x6235('0x25')]['userId'];var _0x3a99c4=_0x105acc[_0x6235('0x25')][_0x6235('0x2f')];return getAgent(_0x38092e)['then'](function(_0x202f53){logger[_0x6235('0xe')](_0x6235('0x2a'),_0x202f53[_0x6235('0x15')]);emit(util[_0x6235('0x2b')](_0x6235('0x2c'),_0x202f53[_0x6235('0x15')]),_0x6235('0x33'),{'sessionId':_0x3a99c4});return _0x13f974['status'](0xc8)[_0x6235('0x26')]({'error':![],'message':_0x6235('0x34')});})[_0x6235('0x1b')](handleError(_0x13f974));};exports['hold']=function(_0x341680,_0x445518){logger[_0x6235('0xe')](_0x6235('0x35'),_0x341680[_0x6235('0x25')]);var _0x2acca5=holdValidation[_0x6235('0x7')](_0x341680[_0x6235('0x25')]);if(_0x2acca5[_0x6235('0x20')]>0x0){return _0x445518['status'](0x190)[_0x6235('0x26')](_0x2acca5);}var _0x4f30c4=_0x341680[_0x6235('0x25')][_0x6235('0x27')];var _0xe997ab=_0x341680['body']['sessionId'];return getAgent(_0x4f30c4)[_0x6235('0x36')](function(_0x433263){logger[_0x6235('0xe')](_0x6235('0x2a'),_0x433263['name']);emit(util[_0x6235('0x2b')](_0x6235('0x2c'),_0x433263['name']),_0x6235('0x37'),{'sessionId':_0xe997ab});return _0x445518['status'](0xc8)[_0x6235('0x26')]({'error':![],'message':_0x6235('0x38')});})[_0x6235('0x1b')](handleError(_0x445518));};exports['unhold']=function(_0x2aa5f9,_0x5bff03){logger['info']('unhold\x20fired:',_0x2aa5f9[_0x6235('0x25')]);var _0x1d4555=unholdValidation[_0x6235('0x7')](_0x2aa5f9[_0x6235('0x25')]);if(_0x1d4555[_0x6235('0x20')]>0x0){return _0x5bff03[_0x6235('0x16')](0x190)[_0x6235('0x26')](_0x1d4555);}var _0x492ce6=_0x2aa5f9[_0x6235('0x25')][_0x6235('0x27')];var _0x4696e4=_0x2aa5f9[_0x6235('0x25')]['sessionId'];return getAgent(_0x492ce6)[_0x6235('0x36')](function(_0x27ae26){logger[_0x6235('0xe')]('entityFound:',_0x27ae26[_0x6235('0x15')]);emit(util['format']('user:%s',_0x27ae26['name']),_0x6235('0x39'),{'sessionId':_0x4696e4});return _0x5bff03['status'](0xc8)[_0x6235('0x26')]({'error':![],'message':_0x6235('0x3a')});})[_0x6235('0x1b')](handleError(_0x5bff03));};exports['calls']=function(_0x27ba7d,_0x5257cf){logger[_0x6235('0xe')](_0x6235('0x3b'),_0x5257cf[_0x6235('0x25')]);var _0x457af6=callsValidation[_0x6235('0x7')](_0x27ba7d[_0x6235('0x25')]);if(_0x457af6[_0x6235('0x20')]>0x0){return _0x5257cf[_0x6235('0x16')](0x190)['json'](_0x457af6);}var _0x140c69=_0x27ba7d[_0x6235('0x25')]['userId'];var _0x471e6e=respondWithRpcPromise('VoiceChannels');var _0x4f3711=getAgent(_0x140c69);return Promise[_0x6235('0x3c')]([_0x471e6e,_0x4f3711])['then'](function(_0x40fe25){var _0x132612=_0x40fe25[0x0];var _0x6f743b=_0x40fe25[0x1];var _0x3859ff=_[_0x6235('0x1e')](_0x132612[_0x6235('0x3d')],function(_0x2ea969){return _0x2ea969[_0x6235('0x1f')]==_0x6f743b['id'];});return _0x5257cf[_0x6235('0x16')](0xc8)[_0x6235('0x26')]({'count':_0x3859ff[_0x6235('0x20')],'rows':_0x3859ff});})[_0x6235('0x1b')](handleError(_0x5257cf));};exports[_0x6235('0x3e')]=function(_0x2d4d01,_0x1716b9){logger[_0x6235('0xe')]('conference\x20fired:',_0x2d4d01[_0x6235('0x25')]);var _0x35ce3f=conferenceValidation['validate'](_0x2d4d01[_0x6235('0x25')]);if(_0x35ce3f[_0x6235('0x20')]>0x0){return _0x1716b9['status'](0x190)[_0x6235('0x26')](_0x35ce3f);}var _0x27c6f9=_0x2d4d01['body'][_0x6235('0x27')];return getAgent(_0x27c6f9)[_0x6235('0x36')](function(_0x3f9f5f){logger['info'](_0x6235('0x2a'),_0x3f9f5f[_0x6235('0x15')]);emit(util['format']('user:%s',_0x3f9f5f[_0x6235('0x15')]),_0x6235('0x3f'));return _0x1716b9[_0x6235('0x16')](0xc8)[_0x6235('0x26')]({'error':![],'message':_0x6235('0x40')});})[_0x6235('0x1b')](handleError(_0x1716b9));};exports[_0x6235('0x41')]=function(_0x20dbef,_0x1b6716){logger[_0x6235('0xe')](_0x6235('0x42'),_0x20dbef[_0x6235('0x25')]);var _0x22dac8=transferValidation[_0x6235('0x7')](_0x20dbef[_0x6235('0x25')]);if(_0x22dac8[_0x6235('0x20')]>0x0){return _0x1b6716[_0x6235('0x16')](0x190)[_0x6235('0x26')](_0x22dac8);}var _0x42d5b2=_0x20dbef[_0x6235('0x25')]['userId'];var _0x4ac76b=_0x20dbef[_0x6235('0x25')][_0x6235('0x2f')];var _0x3c0b20=_0x20dbef[_0x6235('0x25')][_0x6235('0x43')];return getAgent(_0x42d5b2)['then'](function(_0x8943b1){logger['info'](_0x6235('0x2a'),_0x8943b1['name']);emit(util['format'](_0x6235('0x2c'),_0x8943b1[_0x6235('0x15')]),_0x6235('0x44'),{'sessionId':_0x4ac76b,'transferNumber':_0x3c0b20});return _0x1b6716[_0x6235('0x16')](0xc8)[_0x6235('0x26')]({'error':![],'message':_0x6235('0x45')});})[_0x6235('0x1b')](handleError(_0x1b6716));};
\ No newline at end of file