Built motion from commit da617fac.|2.6.6
[motion2.git] / server / api / voiceExtension / voiceExtension.model.js
index bb12bbf..60730d0 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xaa67=['moment','bluebird','request-promise','path','rimraf','../../config/environment','./voiceExtension.attributes','exports','VoiceExtension','voice_extensions','lodash','util','api'];(function(_0x415e37,_0x35dff9){var _0x29153d=function(_0x1e3af2){while(--_0x1e3af2){_0x415e37['push'](_0x415e37['shift']());}};_0x29153d(++_0x35dff9);}(_0xaa67,0x8c));var _0x7aa6=function(_0x1aed2f,_0x3900d9){_0x1aed2f=_0x1aed2f-0x0;var _0x227d56=_0xaa67[_0x1aed2f];return _0x227d56;};'use strict';var _=require(_0x7aa6('0x0'));var util=require(_0x7aa6('0x1'));var logger=require('../../config/logger')(_0x7aa6('0x2'));var moment=require(_0x7aa6('0x3'));var BPromise=require(_0x7aa6('0x4'));var rp=require(_0x7aa6('0x5'));var fs=require('fs');var path=require(_0x7aa6('0x6'));var rimraf=require(_0x7aa6('0x7'));var config=require(_0x7aa6('0x8'));var attributes=require(_0x7aa6('0x9'));module[_0x7aa6('0xa')]=function(_0x13ff62,_0x224d59){return _0x13ff62['define'](_0x7aa6('0xb'),attributes,{'tableName':_0x7aa6('0xc'),'paranoid':![],'indexes':[],'timestamps':!![]});};
\ No newline at end of file
+var _0x0e6a=[',${EXTEN},','outboundDial','appdata','priority','last','concat','catch','define','voice_extensions','get','./voiceExtension.attributes','exports','models','type','Set','CDR(type)=','alias','NoOp','CDR(routeAlias)=','context','exten','inbound','push','XCALLY-MOTION-ANSWER=0','XCALLY-MOTION-PROGRESS=0','MONITOR_OPTIONS=ab','outbound','No\x20alias\x20set','CDR(destination)=','${EXTEN:','cutdigits','${EXTEN}','CDR(routeid)=','ExecIf','$[${LEN(${CDR(prefix)})}\x20>\x200]?Goto(','):Goto(','CDR(prefix)=noprefix','hasOwnProperty','recordingFormat','_XCALLY_MIXMONITOR_UNIQUEID=${UNIQUEID}','_XCALLY_MIXMONITOR_FORMAT=','wav','trunk','timeout','options','url','split','length','name','param','prefix','phone','SIP','join','indexOf','U(xcally-mixmonitor-context)','replace','Interval','findAll','interval','IntervalId','then','*,*,*,*','intervals','filter','tag','toLowerCase','CDR(tag)=','$[${LEN(${PREFIX-CALLERIDALL})}\x20>\x200]?Set(CALLERID(all)=${PREFIX-CALLERIDALL}):','callerID','NoOp(No\x20number\x20available)','queue','playback','includes','app','appType','custom','answer','$[${XCALLY-MOTION-ANSWER}=0]?Answer','XCALLY-MOTION-ANSWER=1','$[${XCALLY-MOTION-PROGRESS}=0]?Progress','splice'];(function(_0x279d37,_0x14de3f){var _0x530173=function(_0x37fc79){while(--_0x37fc79){_0x279d37['push'](_0x279d37['shift']());}};_0x530173(++_0x14de3f);}(_0x0e6a,0x100));var _0xa0e6=function(_0xd9caad,_0x5856b7){_0xd9caad=_0xd9caad-0x0;var _0x3127e6=_0x0e6a[_0xd9caad];return _0x3127e6;};'use strict';var _=require('lodash');var attributes=require(_0xa0e6('0x0'));module[_0xa0e6('0x1')]=function(_0x35d9f6){var _0xc880d9=_0x35d9f6[_0xa0e6('0x2')];function _0x40b6c7(_0x4b9ee9){var _0xcd5884=0x2;var _0x19cadf=[{'type':_0x4b9ee9[_0xa0e6('0x3')],'app':_0xa0e6('0x4'),'appdata':_0xa0e6('0x5')+_0x4b9ee9[_0xa0e6('0x3')],'context':_0x4b9ee9['context'],'exten':_0x4b9ee9['exten'],'priority':_0xcd5884++,'VoiceExtensionId':_0x4b9ee9['id']},{'type':_0x4b9ee9[_0xa0e6('0x3')],'app':_0x4b9ee9[_0xa0e6('0x6')]?_0xa0e6('0x4'):_0xa0e6('0x7'),'appdata':_0x4b9ee9[_0xa0e6('0x6')]?_0xa0e6('0x8')+_0x4b9ee9['alias']:'No\x20alias\x20set','context':_0x4b9ee9[_0xa0e6('0x9')],'exten':_0x4b9ee9[_0xa0e6('0xa')],'priority':_0xcd5884++,'VoiceExtensionId':_0x4b9ee9['id']}];if(_0x4b9ee9['type']===_0xa0e6('0xb')){_0x19cadf['push']({'type':_0xa0e6('0xb'),'app':_0xa0e6('0x4'),'appdata':'CDR(routeid)='+_0x4b9ee9['id'],'context':_0x4b9ee9['context'],'exten':_0x4b9ee9[_0xa0e6('0xa')],'priority':_0xcd5884++,'VoiceExtensionId':_0x4b9ee9['id']});}_0x19cadf[_0xa0e6('0xc')]({'type':_0x4b9ee9[_0xa0e6('0x3')],'app':_0xa0e6('0x4'),'appdata':_0xa0e6('0xd'),'context':_0x4b9ee9['context'],'exten':_0x4b9ee9[_0xa0e6('0xa')],'priority':_0xcd5884++,'VoiceExtensionId':_0x4b9ee9['id']},{'type':_0x4b9ee9['type'],'app':_0xa0e6('0x4'),'appdata':_0xa0e6('0xe'),'context':_0x4b9ee9['context'],'exten':_0x4b9ee9[_0xa0e6('0xa')],'priority':_0xcd5884++,'VoiceExtensionId':_0x4b9ee9['id']},{'type':_0x4b9ee9[_0xa0e6('0x3')],'app':_0xa0e6('0x4'),'appdata':_0xa0e6('0xf'),'context':_0x4b9ee9[_0xa0e6('0x9')],'exten':_0x4b9ee9[_0xa0e6('0xa')],'priority':_0xcd5884++,'VoiceExtensionId':_0x4b9ee9['id']});return _0x19cadf;}function _0x30e924(_0x4e8006){var _0x5b4294=0x2;var _0x535e39=[{'type':_0xa0e6('0x10'),'app':_0xa0e6('0x4'),'appdata':'CDR(type)=outbound','context':_0x4e8006[_0xa0e6('0x9')],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':_0xa0e6('0x10'),'app':_0x4e8006['alias']?'Set':_0xa0e6('0x7'),'appdata':_0x4e8006[_0xa0e6('0x6')]?'CDR(routeAlias)='+_0x4e8006[_0xa0e6('0x6')]:_0xa0e6('0x11'),'context':_0x4e8006['context'],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':_0xa0e6('0x10'),'app':'Set','appdata':_0xa0e6('0x12')+(_0x4e8006['cutdigits']?_0xa0e6('0x13')+_0x4e8006[_0xa0e6('0x14')]+'}':_0xa0e6('0x15')),'context':_0x4e8006[_0xa0e6('0x9')],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':_0xa0e6('0x10'),'app':_0xa0e6('0x4'),'appdata':_0xa0e6('0x16')+_0x4e8006['id'],'context':_0x4e8006[_0xa0e6('0x9')],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':_0xa0e6('0x10'),'app':_0xa0e6('0x17'),'appdata':_0xa0e6('0x18')+(_0x5b4294+0x2)+_0xa0e6('0x19')+(_0x5b4294+0x1)+')','context':_0x4e8006[_0xa0e6('0x9')],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':_0xa0e6('0x10'),'app':_0xa0e6('0x4'),'appdata':_0x4e8006[_0xa0e6('0x14')]?'CDR(prefix)=${EXTEN:0:'+_0x4e8006[_0xa0e6('0x14')]+'}':_0xa0e6('0x1a'),'context':_0x4e8006[_0xa0e6('0x9')],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':_0xa0e6('0x10'),'app':_0xa0e6('0x4'),'appdata':_0xa0e6('0xd'),'context':_0x4e8006['context'],'exten':_0x4e8006['exten'],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':_0xa0e6('0x10'),'app':_0xa0e6('0x4'),'appdata':_0xa0e6('0xe'),'context':_0x4e8006[_0xa0e6('0x9')],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':_0xa0e6('0x10'),'app':_0xa0e6('0x4'),'appdata':_0xa0e6('0xf'),'context':_0x4e8006[_0xa0e6('0x9')],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':_0xa0e6('0x10'),'app':'Set','appdata':'outboundrouteid='+_0x4e8006['id'],'context':_0x4e8006['context'],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']}];if(_0x4e8006[_0xa0e6('0x1b')](_0xa0e6('0x1c'))&&_0x4e8006[_0xa0e6('0x1c')]!=='none'){_0x535e39[_0xa0e6('0xc')]({'type':'outbound','app':_0xa0e6('0x4'),'appdata':_0xa0e6('0x1d'),'context':_0x4e8006[_0xa0e6('0x9')],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']},{'type':'outbound','app':'Set','appdata':_0xa0e6('0x1e')+_0x4e8006[_0xa0e6('0x1c')]||_0xa0e6('0x1f'),'context':_0x4e8006['context'],'exten':_0x4e8006[_0xa0e6('0xa')],'priority':_0x5b4294++,'VoiceExtensionId':_0x4e8006['id']});}return _0x535e39;}function _0x1cb97f(_0x8bd974,_0x298111){var _0x39eed7=[{'name':_0xa0e6('0x20'),'param':0x0},{'name':_0xa0e6('0x21'),'param':0x1},{'name':_0xa0e6('0x22'),'param':0x2},{'name':_0xa0e6('0x23'),'param':0x3}];var _0x1fa63d={};var _0x5def82=_0x298111[_0xa0e6('0x24')](',');var _0x2ca990=[];for(var _0x4421b1=0x0;_0x4421b1<_0x39eed7[_0xa0e6('0x25')];_0x4421b1++){switch(_0x39eed7[_0x4421b1][_0xa0e6('0x26')]){case _0xa0e6('0x20'):_0x1fa63d[_0xa0e6('0x20')]=_0x5def82[_0x39eed7[_0x4421b1][_0xa0e6('0x27')]][_0xa0e6('0x24')]('/')[0x1];_0x1fa63d['phone']=_0x5def82[_0x39eed7[_0x4421b1][_0xa0e6('0x27')]][_0xa0e6('0x24')]('/')[0x2];_0x1fa63d[_0xa0e6('0x28')]=_0x1fa63d[_0xa0e6('0x29')]?_0x1fa63d[_0xa0e6('0x29')][_0xa0e6('0x24')]('$')[0x0]:undefined;_0x1fa63d[_0xa0e6('0x29')]=_0x8bd974['cutdigits']?(_0x1fa63d[_0xa0e6('0x28')]||'')+_0xa0e6('0x13')+_0x8bd974[_0xa0e6('0x14')]+'}':(_0x1fa63d[_0xa0e6('0x28')]||'')+_0xa0e6('0x15');_0x2ca990[_0x39eed7[_0x4421b1][_0xa0e6('0x27')]]=[_0xa0e6('0x2a'),_0x1fa63d[_0xa0e6('0x20')],_0x1fa63d['phone']][_0xa0e6('0x2b')]('/');break;case _0xa0e6('0x22'):_0x1fa63d[_0xa0e6('0x22')]=_0x5def82[_0x39eed7[_0x4421b1][_0xa0e6('0x27')]];if(_0x8bd974['recordingFormat']!=='none'){if(_0x1fa63d[_0xa0e6('0x22')][_0xa0e6('0x2c')](_0xa0e6('0x2d'))<0x0){_0x1fa63d[_0xa0e6('0x22')]+=_0xa0e6('0x2d');}}else{_0x1fa63d[_0xa0e6('0x22')]=_0x1fa63d['options'][_0xa0e6('0x2e')]('U(xcally-mixmonitor-context)','');}_0x2ca990[_0x39eed7[_0x4421b1][_0xa0e6('0x27')]]=_0x1fa63d[_0xa0e6('0x22')];break;default:_0x2ca990[_0x39eed7[_0x4421b1][_0xa0e6('0x27')]]=_0x5def82[_0x39eed7[_0x4421b1][_0xa0e6('0x27')]];}}return _0x2ca990[_0xa0e6('0x2b')](',');}function _0x26bda8(_0x102bc9,_0x252f69,_0x251a94){return new Promise(function(_0x2758c8,_0x453563){var _0x27e4bd=[];if(_['isEmpty'](_0x252f69))return _0x2758c8(_0x27e4bd);_0xc880d9[_0xa0e6('0x2f')][_0xa0e6('0x30')]({'attributes':['id',_0xa0e6('0x31'),_0xa0e6('0x32')],'raw':!![]})[_0xa0e6('0x33')](function(_0x573eeb){for(var _0x1cd2ed=0x0,_0x375bf4=0x0;_0x1cd2ed<_0x252f69[_0xa0e6('0x25')];_0x1cd2ed++,_0x375bf4=0x0){var _0x1ce3f9=_0x252f69[_0x1cd2ed];var _0x4225b7=[];var _0xedb69a=[];delete _0x1ce3f9['id'];if(_0x1ce3f9[_0xa0e6('0x31')]!==_0xa0e6('0x34')){_0x1ce3f9[_0xa0e6('0x35')]=[_0x1ce3f9[_0xa0e6('0x31')]];}else{_0x1ce3f9[_0xa0e6('0x35')]=_0x1ce3f9['IntervalId']?_['map'](_[_0xa0e6('0x36')](_0x573eeb,{'IntervalId':_0x1ce3f9[_0xa0e6('0x32')]}),_0xa0e6('0x31')):[];}_0x1ce3f9[_0xa0e6('0x9')]=_0x102bc9['context'];_0x1ce3f9[_0xa0e6('0xa')]=_0x102bc9[_0xa0e6('0xa')];if(_0x1ce3f9[_0xa0e6('0x3')])_0x1ce3f9[_0xa0e6('0x3')]=_0x1ce3f9['type']['toLowerCase']();if(_0x102bc9[_0xa0e6('0x3')]==='outbound'){if(_0x1ce3f9[_0xa0e6('0x1b')](_0xa0e6('0x37'))&&_0x1ce3f9['tag']&&_0x1ce3f9[_0xa0e6('0x37')]!=='--'){_0x4225b7['push']({'type':_0x1ce3f9[_0xa0e6('0x3')][_0xa0e6('0x38')](),'app':'Set','appdata':_0xa0e6('0x39')+_0x1ce3f9[_0xa0e6('0x37')],'context':_0x102bc9[_0xa0e6('0x9')],'exten':_0x102bc9[_0xa0e6('0xa')],'priority':_0x1ce3f9[_0xa0e6('0x35')][_0xa0e6('0x25')]+_0x251a94+_0x375bf4++,'VoiceExtensionId':_0x102bc9['id']});}_0x4225b7[_0xa0e6('0xc')]({'type':_0x1ce3f9[_0xa0e6('0x3')][_0xa0e6('0x38')](),'app':_0xa0e6('0x17'),'appdata':_0xa0e6('0x3a')+(_0x1ce3f9[_0xa0e6('0x3b')]?'Set(CALLERID(all)='+_0x1ce3f9['callerID']+')':_0xa0e6('0x3c')),'context':_0x102bc9['context'],'exten':_0x102bc9[_0xa0e6('0xa')],'priority':_0x1ce3f9[_0xa0e6('0x35')][_0xa0e6('0x25')]+_0x251a94+_0x375bf4++,'VoiceExtensionId':_0x102bc9['id']});}else{if(_0x1ce3f9[_0xa0e6('0x1b')]('answer')){if([_0xa0e6('0x3d'),_0xa0e6('0x3e')][_0xa0e6('0x3f')](_0x1ce3f9[_0xa0e6('0x40')][_0xa0e6('0x38')]())&&_0x1ce3f9[_0xa0e6('0x41')]!==_0xa0e6('0x42')){if(_0x1ce3f9[_0xa0e6('0x43')]){_0x4225b7[_0xa0e6('0xc')]({'type':_0x1ce3f9[_0xa0e6('0x3')][_0xa0e6('0x38')](),'app':_0xa0e6('0x17'),'appdata':_0xa0e6('0x44'),'context':_0x102bc9[_0xa0e6('0x9')],'exten':_0x102bc9['exten'],'priority':_0x1ce3f9[_0xa0e6('0x35')][_0xa0e6('0x25')]+_0x251a94+_0x375bf4++,'VoiceExtensionId':_0x102bc9['id']});_0x4225b7[_0xa0e6('0xc')]({'type':_0x1ce3f9[_0xa0e6('0x3')][_0xa0e6('0x38')](),'app':'Set','appdata':_0xa0e6('0x45'),'context':_0x102bc9[_0xa0e6('0x9')],'exten':_0x102bc9[_0xa0e6('0xa')],'priority':_0x1ce3f9['intervals'][_0xa0e6('0x25')]+_0x251a94+_0x375bf4++,'VoiceExtensionId':_0x102bc9['id']});}else{_0x4225b7[_0xa0e6('0xc')]({'type':_0x1ce3f9[_0xa0e6('0x3')][_0xa0e6('0x38')](),'app':_0xa0e6('0x17'),'appdata':_0xa0e6('0x46'),'context':_0x102bc9['context'],'exten':_0x102bc9[_0xa0e6('0xa')],'priority':_0x1ce3f9[_0xa0e6('0x35')][_0xa0e6('0x25')]+_0x251a94+_0x375bf4++,'VoiceExtensionId':_0x102bc9['id']});_0x4225b7[_0xa0e6('0xc')]({'type':_0x1ce3f9['type'][_0xa0e6('0x38')](),'app':'Set','appdata':'XCALLY-MOTION-PROGRESS=1','context':_0x102bc9[_0xa0e6('0x9')],'exten':_0x102bc9[_0xa0e6('0xa')],'priority':_0x1ce3f9['intervals'][_0xa0e6('0x25')]+_0x251a94+_0x375bf4++,'VoiceExtensionId':_0x102bc9['id']});}}}}for(var _0x70e21f=0x0;_0x70e21f<_0x1ce3f9[_0xa0e6('0x35')][_0xa0e6('0x25')];_0x70e21f++){var _0x435967=_0x251a94+_0x1ce3f9[_0xa0e6('0x35')]['length'];var _0x400193=_0x70e21f===_0x1ce3f9[_0xa0e6('0x35')][_0xa0e6('0x25')]-0x1?_0x251a94+_0x4225b7['length']+_0xedb69a[_0xa0e6('0x25')]+0x2:_0x251a94+_0x70e21f+0x1;_0x4225b7[_0xa0e6('0x47')](_0x70e21f,0x0,{'type':_0x102bc9[_0xa0e6('0x3')],'app':'GotoIfTime','appdata':_0x1ce3f9[_0xa0e6('0x35')][_0x70e21f]+'?'+_0x102bc9[_0xa0e6('0x9')]+_0xa0e6('0x48')+_0x435967+':'+_0x102bc9[_0xa0e6('0x9')]+_0xa0e6('0x48')+_0x400193,'exten':_0x102bc9[_0xa0e6('0xa')],'context':_0x102bc9[_0xa0e6('0x9')],'priority':_0x251a94+_0x70e21f,'VoiceExtensionId':_0x102bc9['id']});}if(_0x1ce3f9[_0xa0e6('0x41')]===_0xa0e6('0x49'))_0x1ce3f9[_0xa0e6('0x4a')]=_0x1cb97f(_0x102bc9,_0x1ce3f9[_0xa0e6('0x4a')]);_0x1ce3f9[_0xa0e6('0x4b')]=_0x4225b7[_0xa0e6('0x25')]?_[_0xa0e6('0x4c')](_0x4225b7)[_0xa0e6('0x4b')]+0x1:_0x251a94;_0x27e4bd=_[_0xa0e6('0x4d')](_0x27e4bd,_0x4225b7,[_0x1ce3f9],_0xedb69a);_0x251a94=_[_0xa0e6('0x4c')](_0x27e4bd)[_0xa0e6('0x4b')]+0x1;}return _0x2758c8(_0x27e4bd);})[_0xa0e6('0x4e')](function(_0x930552){_0x453563(_0x930552);});});}return _0x35d9f6[_0xa0e6('0x4f')]('VoiceExtension',attributes,{'tableName':_0xa0e6('0x50'),'paranoid':![],'indexes':[],'timestamps':!![],'instanceMethods':{'createRouting':function(_0xecb5e4){var _0x6f255b=this[_0xa0e6('0x51')]({'plain':!![]});var _0x58d057=_0x6f255b[_0xa0e6('0x3')]==='outbound'?_0x30e924(_0x6f255b):_0x40b6c7(_0x6f255b);return _0x26bda8(_0x6f255b,_0xecb5e4,_[_0xa0e6('0x4c')](_0x58d057)[_0xa0e6('0x4b')]+0x1)['then'](function(_0x32d919){var _0x2207b8=_['concat'](_0x58d057,_0x32d919);_0x2207b8[_0xa0e6('0xc')]({'type':_0x6f255b[_0xa0e6('0x3')],'app':'Hangup','exten':_0x6f255b[_0xa0e6('0xa')],'context':_0x6f255b[_0xa0e6('0x9')],'priority':_[_0xa0e6('0x4c')](_0x2207b8)['priority']+0x1,'VoiceExtensionId':_0x6f255b['id']});return _0x2207b8;});}}});};
\ No newline at end of file