Built motion from commit (unavailable).|2.4.4
[motion2.git] / server / components / extensions / rewrite.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0xdab9=['last','concat','Hangup','transaction','bulkCreate','catch','error','rewrite','lodash','util','models','Interval','findAll','intervals','VoiceExtension','IntervalId','then','map','exten','CAST(priority\x20AS\x20UNSIGNED)','filter','groupBy','queue','playback','hasOwnProperty','priority','extensions','extension','find','push','type','Set','format','CDR(type)=%s','context','VoiceExtensionId','CDR(destination)=','cutdigits','${EXTEN}','CDR(routeid)=','ExecIf','$[${LEN(${CDR(prefix)})}\x20>\x200]?Goto(','):Goto(','CDR(prefix)=${EXTEN:0:','CDR(prefix)=noprefix','recordingFormat','none','_XCALLY_MIXMONITOR_FORMAT=','XCALLY-MOTION-ANSWER=0','XCALLY-MOTION-PROGRESS=0','length','createdAt','interval','tag','CDR(tag)=','outbound','callerID','$[${LEN(${PREFIX-CALLERIDALL})}\x20>\x200]?Set(CALLERID(all)=${PREFIX-CALLERIDALL}):Set(CALLERID(all)=','$[${LEN(${PREFIX-CALLERIDALL})}\x20>\x200]?Set(CALLERID(all)=${PREFIX-CALLERIDALL}):NoOp(No\x20number\x20available)','answer','indexOf','app','toLowerCase','custom','XCALLY-MOTION-ANSWER=1','$[${XCALLY-MOTION-PROGRESS}=0]?Progress','splice','GotoIfTime',',${EXTEN},'];(function(_0x5b5abe,_0x5cc1dc){var _0x1e5f0c=function(_0x42e135){while(--_0x42e135){_0x5b5abe['push'](_0x5b5abe['shift']());}};_0x1e5f0c(++_0x5cc1dc);}(_0xdab9,0xd7));var _0x9dab=function(_0x2c6cf9,_0x17387d){_0x2c6cf9=_0x2c6cf9-0x0;var _0x614467=_0xdab9[_0x2c6cf9];return _0x614467;};'use strict';var _=require(_0x9dab('0x0'));var util=require(_0x9dab('0x1'));function rewrite(_0x5f1883,_0x38b50d){var _0x5c719c=this;return _0x5f1883[_0x9dab('0x2')][_0x9dab('0x3')][_0x9dab('0x4')]({'raw':!![]})['then'](function(_0x1b28d9){_0x5c719c[_0x9dab('0x5')]=_0x1b28d9;return _0x5f1883[_0x9dab('0x2')][_0x9dab('0x6')][_0x9dab('0x4')]({'where':{'IntervalId':_0x38b50d[_0x9dab('0x7')]},'raw':!![]});})[_0x9dab('0x8')](function(_0x1f9587){return _0x5f1883[_0x9dab('0x2')][_0x9dab('0x6')][_0x9dab('0x4')]({'where':{'exten':{'$in':_['uniq'](_[_0x9dab('0x9')](_0x1f9587,_0x9dab('0xa')))}},'order':[{'raw':_0x9dab('0xb')}],'raw':!![]});})[_0x9dab('0x8')](function(_0x5bb660){var _0x4a423d=_[_0x9dab('0xc')](_0x5bb660,{'priority':'1'});var _0x5ce1fa=_[_0x9dab('0xc')](_0x5bb660,{'isApp':0x1});var _0x18b1a3=_[_0x9dab('0xd')](_0x5ce1fa,'exten');var _0x29d2a5=[_0x9dab('0xe'),_0x9dab('0xf')];var _0x4b4445=[];var _0x1a24b3=[];for(var _0x53451d in _0x18b1a3){if(_0x18b1a3[_0x9dab('0x10')](_0x53451d)){_0x5c719c[_0x9dab('0x11')]=0x2;_0x5c719c[_0x9dab('0x12')]=[];_0x5c719c[_0x9dab('0x13')]=_[_0x9dab('0x14')](_0x4a423d,{'exten':_0x18b1a3[_0x53451d][0x0]['exten']});_0x5c719c[_0x9dab('0x12')][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')],'app':_0x9dab('0x17'),'appdata':util[_0x9dab('0x18')](_0x9dab('0x19'),_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')]),'context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c['priority']++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]});if(_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')]==='outbound'){if(_0x5c719c['extension']){_0x5c719c[_0x9dab('0x12')][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')],'app':_0x9dab('0x17'),'appdata':_0x9dab('0x1c')+(_0x5c719c[_0x9dab('0x13')][_0x9dab('0x1d')]?'${EXTEN:'+_0x5c719c[_0x9dab('0x13')][_0x9dab('0x1d')]+'}':_0x9dab('0x1e')),'context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c[_0x9dab('0x11')]++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]});}_0x5c719c[_0x9dab('0x12')][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0]['type'],'app':_0x9dab('0x17'),'appdata':_0x9dab('0x1f')+_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')],'context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c[_0x9dab('0x11')]++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]});var _0x419148=_0x5c719c[_0x9dab('0x11')]++;_0x5c719c['extensions'][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')],'app':_0x9dab('0x20'),'appdata':_0x9dab('0x21')+(_0x419148+0x2)+_0x9dab('0x22')+(_0x419148+0x1)+')','context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x419148,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]});if(_0x5c719c[_0x9dab('0x13')]){_0x5c719c['extensions'][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')],'app':'Set','appdata':_0x5c719c[_0x9dab('0x13')][_0x9dab('0x1d')]?_0x9dab('0x23')+_0x5c719c[_0x9dab('0x13')][_0x9dab('0x1d')]+'}':_0x9dab('0x24'),'context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c['priority']++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0]['VoiceExtensionId']});}_0x5c719c[_0x9dab('0x12')][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')],'app':_0x9dab('0x17'),'appdata':'outboundrouteid='+_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')],'context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c[_0x9dab('0x11')]++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0]['VoiceExtensionId']});if(_0x5c719c[_0x9dab('0x13')]&&_0x5c719c[_0x9dab('0x13')]['hasOwnProperty'](_0x9dab('0x25'))&&_0x5c719c[_0x9dab('0x13')][_0x9dab('0x25')]!==_0x9dab('0x26')){_0x5c719c[_0x9dab('0x12')][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0]['type'],'app':_0x9dab('0x17'),'appdata':'_XCALLY_MIXMONITOR_UNIQUEID=${UNIQUEID}','context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c['priority']++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]});_0x5c719c[_0x9dab('0x12')]['push']({'type':_0x18b1a3[_0x53451d][0x0]['type'],'app':_0x9dab('0x17'),'appdata':_0x9dab('0x27')+_0x5c719c['extension'][_0x9dab('0x25')]||'wav','context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c[_0x9dab('0x11')]++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]});}}_0x5c719c[_0x9dab('0x12')][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0]['type'],'app':_0x9dab('0x17'),'appdata':_0x9dab('0x28'),'context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c[_0x9dab('0x11')]++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]});_0x5c719c[_0x9dab('0x12')][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')],'app':_0x9dab('0x17'),'appdata':_0x9dab('0x29'),'context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c['priority']++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0]['VoiceExtensionId']});_0x5c719c['extensions'][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')],'app':'Set','appdata':'MONITOR_OPTIONS=ab','context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'exten':_0x18b1a3[_0x53451d][0x0][_0x9dab('0xa')],'priority':_0x5c719c['priority']++,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0]['VoiceExtensionId']});for(var _0x53fa76=0x0,_0x54f66e=0x0;_0x53fa76<_0x18b1a3[_0x53451d][_0x9dab('0x2a')];_0x53fa76+=0x1,_0x54f66e=0x0){var _0x245ac1=_0x18b1a3[_0x53451d][_0x53fa76];if(_0x245ac1[_0x9dab('0x16')]){_0x245ac1[_0x9dab('0x16')]=_0x245ac1[_0x9dab('0x16')]['toLowerCase']();}var _0x10bb22=[];var _0x559153=[];delete _0x245ac1['id'];delete _0x245ac1[_0x9dab('0x2b')];delete _0x245ac1['updatedAt'];var _0x43ce10=_0x245ac1[_0x9dab('0x2c')]!=='*,*,*,*'?[_0x245ac1[_0x9dab('0x2c')]]:_0x245ac1['IntervalId']?_[_0x9dab('0x9')](_[_0x9dab('0xc')](_0x5c719c['intervals'],{'IntervalId':_0x245ac1['IntervalId']}),_0x9dab('0x2c')):[];if(_0x245ac1['hasOwnProperty'](_0x9dab('0x2d'))){if(_0x245ac1[_0x9dab('0x2d')]&&_0x245ac1[_0x9dab('0x2d')]!=='--'){_0x10bb22[_0x9dab('0x15')]({'type':_0x245ac1[_0x9dab('0x16')],'app':_0x9dab('0x17'),'appdata':_0x9dab('0x2e')+_0x245ac1['tag'],'context':_0x245ac1[_0x9dab('0x1a')],'exten':_0x245ac1[_0x9dab('0xa')],'priority':_0x43ce10['length']+_0x5c719c[_0x9dab('0x11')]+_0x54f66e++,'VoiceExtensionId':_0x245ac1[_0x9dab('0x1b')]});}}if(_0x245ac1[_0x9dab('0x16')]===_0x9dab('0x2f')&&_0x245ac1[_0x9dab('0x10')](_0x9dab('0x30'))){if(_0x245ac1[_0x9dab('0x30')]){_0x10bb22[_0x9dab('0x15')]({'type':_0x245ac1[_0x9dab('0x16')],'app':_0x9dab('0x20'),'appdata':_0x9dab('0x31')+_0x245ac1[_0x9dab('0x30')]+')','context':_0x245ac1[_0x9dab('0x1a')],'exten':_0x245ac1['exten'],'priority':_0x43ce10[_0x9dab('0x2a')]+_0x5c719c['priority']+_0x54f66e++,'VoiceExtensionId':_0x245ac1['VoiceExtensionId']});}else{_0x10bb22[_0x9dab('0x15')]({'type':_0x245ac1[_0x9dab('0x16')],'app':'ExecIf','appdata':_0x9dab('0x32'),'context':_0x245ac1[_0x9dab('0x1a')],'exten':_0x245ac1[_0x9dab('0xa')],'priority':_0x43ce10[_0x9dab('0x2a')]+_0x5c719c[_0x9dab('0x11')]+_0x54f66e++,'VoiceExtensionId':_0x245ac1[_0x9dab('0x1b')]});}}if(_0x245ac1[_0x9dab('0x10')](_0x9dab('0x33'))){if(_0x29d2a5[_0x9dab('0x34')](_0x245ac1[_0x9dab('0x35')][_0x9dab('0x36')]())>=0x0&&_0x245ac1['appType']!==_0x9dab('0x37')){if(_0x245ac1[_0x9dab('0x33')]){_0x10bb22[_0x9dab('0x15')]({'type':_0x245ac1[_0x9dab('0x16')],'app':_0x9dab('0x20'),'appdata':'$[${XCALLY-MOTION-ANSWER}=0]?Answer','context':_0x245ac1[_0x9dab('0x1a')],'exten':_0x245ac1[_0x9dab('0xa')],'priority':_0x43ce10[_0x9dab('0x2a')]+_0x5c719c[_0x9dab('0x11')]+_0x54f66e++,'VoiceExtensionId':_0x245ac1[_0x9dab('0x1b')]});_0x10bb22[_0x9dab('0x15')]({'type':_0x245ac1['type'],'app':'Set','appdata':_0x9dab('0x38'),'context':_0x245ac1[_0x9dab('0x1a')],'exten':_0x245ac1[_0x9dab('0xa')],'priority':_0x43ce10[_0x9dab('0x2a')]+_0x5c719c[_0x9dab('0x11')]+_0x54f66e++,'VoiceExtensionId':_0x245ac1[_0x9dab('0x1b')]});}else{_0x10bb22['push']({'type':_0x245ac1[_0x9dab('0x16')],'app':_0x9dab('0x20'),'appdata':_0x9dab('0x39'),'context':_0x245ac1[_0x9dab('0x1a')],'exten':_0x245ac1['exten'],'priority':_0x43ce10[_0x9dab('0x2a')]+_0x5c719c[_0x9dab('0x11')]+_0x54f66e++,'VoiceExtensionId':_0x245ac1[_0x9dab('0x1b')]});_0x10bb22[_0x9dab('0x15')]({'type':_0x245ac1[_0x9dab('0x16')],'app':_0x9dab('0x17'),'appdata':'XCALLY-MOTION-PROGRESS=1','context':_0x245ac1[_0x9dab('0x1a')],'exten':_0x245ac1['exten'],'priority':_0x43ce10[_0x9dab('0x2a')]+_0x5c719c[_0x9dab('0x11')]+_0x54f66e++,'VoiceExtensionId':_0x245ac1[_0x9dab('0x1b')]});}}}for(var _0x5840d4=0x0;_0x5840d4<_0x43ce10[_0x9dab('0x2a')];_0x5840d4+=0x1){var _0x150950=_0x5c719c[_0x9dab('0x11')]+_0x43ce10[_0x9dab('0x2a')];var _0x508650=_0x5840d4===_0x43ce10['length']-0x1?_0x5c719c[_0x9dab('0x11')]+_0x10bb22['length']+_0x559153[_0x9dab('0x2a')]+0x2:_0x5c719c[_0x9dab('0x11')]+_0x5840d4+0x1;_0x10bb22[_0x9dab('0x3a')](_0x5840d4,0x0,{'type':_0x245ac1[_0x9dab('0x16')],'app':_0x9dab('0x3b'),'appdata':_0x43ce10[_0x5840d4]+'?'+_0x245ac1['context']+_0x9dab('0x3c')+_0x150950+':'+_0x245ac1['context']+_0x9dab('0x3c')+_0x508650,'exten':_0x245ac1[_0x9dab('0xa')],'context':_0x245ac1[_0x9dab('0x1a')],'priority':_0x5c719c[_0x9dab('0x11')]+_0x5840d4,'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]});}_0x245ac1[_0x9dab('0x11')]=_0x10bb22['length']?_[_0x9dab('0x3d')](_0x10bb22)[_0x9dab('0x11')]+0x1:_0x5c719c[_0x9dab('0x11')];_0x5c719c['priority']=(_0x559153[_0x9dab('0x2a')]?_['last'](_0x559153)[_0x9dab('0x11')]:_0x245ac1[_0x9dab('0x11')])+0x1;_0x5c719c[_0x9dab('0x12')]=_[_0x9dab('0x3e')](_0x5c719c['extensions'],_0x10bb22,[_0x245ac1],_0x559153);}_0x5c719c[_0x9dab('0x12')][_0x9dab('0x15')]({'type':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x16')],'app':_0x9dab('0x3f'),'exten':_0x18b1a3[_0x53451d][0x0]['exten'],'context':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1a')],'priority':_0x5c719c['priority'],'VoiceExtensionId':_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]});_0x4b4445[_0x9dab('0x15')](_0x18b1a3[_0x53451d][0x0][_0x9dab('0x1b')]);_0x1a24b3=_[_0x9dab('0x3e')](_0x1a24b3,_0x5c719c[_0x9dab('0x12')]);}}return _0x5f1883[_0x9dab('0x40')](function(_0x4008f8){return _0x5f1883['models'][_0x9dab('0x6')]['destroy']({'where':{'VoiceExtensionId':{'$in':_0x4b4445}},'transaction':_0x4008f8})[_0x9dab('0x8')](function(_0x4ef9ab){return _0x5f1883[_0x9dab('0x2')][_0x9dab('0x6')][_0x9dab('0x41')](_['sortBy'](_0x1a24b3,_0x9dab('0x11')),{'transaction':_0x4008f8});});});})[_0x9dab('0x42')](function(_0x5816e0){console[_0x9dab('0x43')](_0x5816e0);});}exports[_0x9dab('0x44')]=rewrite;