Built motion from commit 25580385.|2.6.2
[motion2.git] / server / services / xdr / recordings.controller.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 _0xb36b=['calleridname','cause-txt','calleridnum','connectedlinenum','connectedlinename','type','clone','[%s][recordings][hangup]','newexten','[%s][recordings][newexten]','[%s][recordings][newexten]\x20application:%s\x20appdata:%s','appdata','application','toLowerCase','set','cdr','split','substring','lastIndexOf','queuecallerjoin','[%s][recordings][queuecallerjoin]','[%s][recordings][queuecallerjoin]\x20queue:%s','queue','blindtransfer','[%s][recordings][blindtransfer]','[%s][recordings][blindtransfer]\x20transferercalleridnum:%s\x20transferercalleridname:%s\x20transfereecalleridnum:%s\x20transfereecalleridname:%s','transferercalleridnum','transferercalleridname','transfereecalleridnum','transfereecalleridname','transfereruniqueid','recording','lodash','util','./utils','./transfers.controller','info','format','[%s][recordings][writeDB]','uniqueid','blinds','transfereeuniqueid','accountcode','then','UserId','request','CreateVoiceRecording','newchannel','debug','linkedid','context','exten','channel','error','newstate','[%s][recordings][newstate]','isNil','channelstate','transfer','[%s][recordings][newstate]\x20linkedid:%s\x20context:%s\x20channel:%s','variable','mixmonitor_filename','[%s][recordings][varset]','[%s][recordings][varset]\x20variable:%s\x20value:%s','value','endsWith','replace','.wav49','.WAV','find','monitors','push','hangup','[%s][recordings][hangup]\x20calleridnum:%s\x20calleridname:%s\x20reason:%s'];(function(_0x10ca64,_0x110ece){var _0x397fb8=function(_0x177404){while(--_0x177404){_0x10ca64['push'](_0x10ca64['shift']());}};_0x397fb8(++_0x110ece);}(_0xb36b,0x148));var _0xbb36=function(_0x15660e,_0x1b2b74){_0x15660e=_0x15660e-0x0;var _0x36e231=_0xb36b[_0x15660e];return _0x36e231;};'use strict';var _=require(_0xbb36('0x0'));var util=require(_0xbb36('0x1'));var utils=require(_0xbb36('0x2'));var transfers=require(_0xbb36('0x3'));var recordings={};function writeDB(_0x35451b){var _0x39c9cf;utils[_0xbb36('0x4')](util[_0xbb36('0x5')](_0xbb36('0x6'),_0x35451b[_0xbb36('0x7')]));if(transfers['blinds'][_0x35451b['uniqueid']]){_0x39c9cf=_0x35451b[_0xbb36('0x7')];_0x35451b[_0xbb36('0x7')]=transfers[_0xbb36('0x8')][_0x35451b['uniqueid']][_0xbb36('0x9')];}if(_0x35451b[_0xbb36('0xa')]){utils['getUserByInternal'](_0x35451b[_0xbb36('0xa')])[_0xbb36('0xb')](function(_0x2d9529){if(_0x2d9529){_0x35451b['membername']=_0x2d9529['name'];_0x35451b[_0xbb36('0xc')]=_0x2d9529['id'];}utils[_0xbb36('0xd')](_0xbb36('0xe'),_0x35451b);});}else{utils[_0xbb36('0xd')](_0xbb36('0xe'),_0x35451b);}if(_0x39c9cf)delete transfers[_0xbb36('0x8')][_0x39c9cf];}exports[_0xbb36('0xf')]=function(_0x90fa0b){try{utils[_0xbb36('0x10')](util[_0xbb36('0x5')]('[%s][recordings][newchannel]',_0x90fa0b['uniqueid']),_0x90fa0b);if(_0x90fa0b[_0xbb36('0x7')]==_0x90fa0b[_0xbb36('0x11')]){utils[_0xbb36('0x4')](util[_0xbb36('0x5')]('[%s][recordings][newchannel]\x20context:%s\x20exten:%s',_0x90fa0b[_0xbb36('0x7')],_0x90fa0b[_0xbb36('0x12')],_0x90fa0b['exten']));recordings[_0x90fa0b[_0xbb36('0x7')]]={'uniqueid':_0x90fa0b[_0xbb36('0x7')],'accountcode':_0x90fa0b[_0xbb36('0xa')],'exten':_0x90fa0b[_0xbb36('0x13')],'context':_0x90fa0b[_0xbb36('0x12')],'channel':_0x90fa0b[_0xbb36('0x14')],'monitors':[]};}}catch(_0x161d80){utils[_0xbb36('0x15')](util[_0xbb36('0x5')]('[%s][recordings][newchannel]',_0x90fa0b['uniqueid']),_0x161d80);}};exports[_0xbb36('0x16')]=function(_0x3bccfb){try{utils[_0xbb36('0x10')](util[_0xbb36('0x5')](_0xbb36('0x17'),_0x3bccfb['uniqueid']),_0x3bccfb);if(!_[_0xbb36('0x18')](recordings[_0x3bccfb[_0xbb36('0x7')]])&&_0x3bccfb['channelstate']==0x6){utils[_0xbb36('0x4')](util[_0xbb36('0x5')]('[%s][recordings][newstate]\x20context:%s\x20channel:%s',_0x3bccfb[_0xbb36('0x7')],_0x3bccfb['context'],_0x3bccfb[_0xbb36('0x14')]));}else if(!_[_0xbb36('0x18')](recordings[_0x3bccfb[_0xbb36('0x11')]])&&_0x3bccfb[_0xbb36('0x19')]==0x6&&_0x3bccfb[_0xbb36('0x12')]!=_0xbb36('0x1a')){utils[_0xbb36('0x4')](util[_0xbb36('0x5')](_0xbb36('0x1b'),_0x3bccfb[_0xbb36('0x7')],_0x3bccfb['linkedid'],_0x3bccfb[_0xbb36('0x12')],_0x3bccfb[_0xbb36('0x14')]));recordings[_0x3bccfb[_0xbb36('0x11')]][_0xbb36('0xa')]=_0x3bccfb[_0xbb36('0xa')];}}catch(_0x441ba){utils[_0xbb36('0x15')](util[_0xbb36('0x5')](_0xbb36('0x17'),_0x3bccfb[_0xbb36('0x7')]),_0x441ba);}};exports['varset']=function(_0x4fd148){try{if(!_[_0xbb36('0x18')](_0x4fd148[_0xbb36('0x1c')])&&!_[_0xbb36('0x18')](_0x4fd148[_0xbb36('0x1c')][_0xbb36('0x1d')])){utils['debug'](util['format'](_0xbb36('0x1e'),_0x4fd148[_0xbb36('0x7')]),_0x4fd148);utils[_0xbb36('0x4')](util[_0xbb36('0x5')](_0xbb36('0x1f'),_0x4fd148[_0xbb36('0x7')],_0x4fd148[_0xbb36('0x1c')],_0x4fd148[_0xbb36('0x20')]));if(_[_0xbb36('0x21')](_0x4fd148[_0xbb36('0x20')],'.wav49')){_0x4fd148[_0xbb36('0x20')]=_0x4fd148[_0xbb36('0x20')][_0xbb36('0x22')](_0xbb36('0x23'),_0xbb36('0x24'));}if(recordings[_0x4fd148[_0xbb36('0x11')]]){var _0x5d9639=_[_0xbb36('0x25')](recordings[_0x4fd148[_0xbb36('0x11')]]['monitors'],{'value':_0x4fd148[_0xbb36('0x20')]});if(_[_0xbb36('0x18')](_0x5d9639)){recordings[_0x4fd148[_0xbb36('0x11')]][_0xbb36('0x26')][_0xbb36('0x27')]({'value':_0x4fd148[_0xbb36('0x20')]});}}}}catch(_0x2ea5e1){utils[_0xbb36('0x15')](util[_0xbb36('0x5')](_0xbb36('0x1e'),_0x4fd148[_0xbb36('0x7')]),_0x2ea5e1);}};exports[_0xbb36('0x28')]=function(_0x1182cc){try{if(!_[_0xbb36('0x18')](recordings[_0x1182cc[_0xbb36('0x7')]])){utils[_0xbb36('0x10')](util[_0xbb36('0x5')]('[%s][recordings][hangup]',_0x1182cc[_0xbb36('0x7')]),_0x1182cc);utils[_0xbb36('0x4')](util[_0xbb36('0x5')](_0xbb36('0x29'),_0x1182cc[_0xbb36('0x7')],_0x1182cc['calleridnum'],_0x1182cc[_0xbb36('0x2a')],_0x1182cc[_0xbb36('0x2b')]));recordings[_0x1182cc[_0xbb36('0x7')]][_0xbb36('0x2c')]=_0x1182cc[_0xbb36('0x2c')];recordings[_0x1182cc[_0xbb36('0x7')]][_0xbb36('0x2a')]=_0x1182cc['calleridname'];recordings[_0x1182cc[_0xbb36('0x7')]][_0xbb36('0x2d')]=_0x1182cc['connectedlinenum'];recordings[_0x1182cc[_0xbb36('0x7')]][_0xbb36('0x2e')]=_0x1182cc['connectedlinename'];if(recordings[_0x1182cc[_0xbb36('0x7')]][_0xbb36('0x2f')]=='outbound'&&recordings[_0x1182cc[_0xbb36('0x7')]][_0xbb36('0xa')]){recordings[_0x1182cc[_0xbb36('0x7')]]['connectedlinenum']=recordings[_0x1182cc['uniqueid']][_0xbb36('0xa')];recordings[_0x1182cc[_0xbb36('0x7')]]['connectedlinename']='';}recordings[_0x1182cc[_0xbb36('0x7')]]['monitors']['forEach'](function(_0x12607d){var _0x4ed8bb=_[_0xbb36('0x30')](recordings[_0x1182cc['uniqueid']]);_0x4ed8bb[_0xbb36('0x20')]=_0x12607d[_0xbb36('0x20')];writeDB(_0x4ed8bb);});delete recordings[_0x1182cc[_0xbb36('0x7')]];}}catch(_0xaa373b){utils[_0xbb36('0x15')](util['format'](_0xbb36('0x31'),_0x1182cc[_0xbb36('0x7')]),_0xaa373b);}};exports[_0xbb36('0x32')]=function(_0x4fea0b){try{if(!_[_0xbb36('0x18')](recordings[_0x4fea0b[_0xbb36('0x7')]])){utils[_0xbb36('0x10')](util['format'](_0xbb36('0x33'),_0x4fea0b[_0xbb36('0x7')]),_0x4fea0b);utils[_0xbb36('0x4')](util[_0xbb36('0x5')](_0xbb36('0x34'),_0x4fea0b[_0xbb36('0x7')],_0x4fea0b['application'],_0x4fea0b[_0xbb36('0x35')]));if(_0x4fea0b[_0xbb36('0x36')][_0xbb36('0x37')]()==_0xbb36('0x38')&&_['startsWith'](_0x4fea0b['appdata'][_0xbb36('0x37')](),_0xbb36('0x39'))){var _0x2c3d97=_0x4fea0b[_0xbb36('0x35')][_0xbb36('0x3a')]('=');var _0x3be366=_0x2c3d97[0x0][_0xbb36('0x3b')](_0x2c3d97[0x0][_0xbb36('0x3c')]('(')+0x1,_0x2c3d97[0x0][_0xbb36('0x3c')](')'));var _0x59160f=_0x2c3d97[0x1];recordings[_0x4fea0b['uniqueid']][_0x3be366]=_0x59160f;}}}catch(_0x4fa2f1){utils[_0xbb36('0x15')](util[_0xbb36('0x5')](_0xbb36('0x33'),_0x4fea0b[_0xbb36('0x7')]),_0x4fa2f1);}};exports[_0xbb36('0x3d')]=function(_0x182fb3){try{if(!_['isNil'](recordings[_0x182fb3['uniqueid']])){utils[_0xbb36('0x10')](util[_0xbb36('0x5')](_0xbb36('0x3e'),_0x182fb3[_0xbb36('0x7')]),_0x182fb3);utils[_0xbb36('0x4')](util[_0xbb36('0x5')](_0xbb36('0x3f'),_0x182fb3[_0xbb36('0x7')],_0x182fb3[_0xbb36('0x40')]));recordings[_0x182fb3[_0xbb36('0x7')]]['queue']=_0x182fb3[_0xbb36('0x40')];}}catch(_0xb451bf){utils[_0xbb36('0x15')](util[_0xbb36('0x5')](_0xbb36('0x3e'),_0x182fb3[_0xbb36('0x7')]),_0xb451bf);}};exports[_0xbb36('0x41')]=function(_0x4312e5){try{utils[_0xbb36('0x10')](util[_0xbb36('0x5')](_0xbb36('0x42'),_0x4312e5[_0xbb36('0x7')]),_0x4312e5);utils[_0xbb36('0x4')](util['format'](_0xbb36('0x43'),_0x4312e5['uniqueid'],_0x4312e5[_0xbb36('0x44')],_0x4312e5[_0xbb36('0x45')],_0x4312e5[_0xbb36('0x46')],_0x4312e5[_0xbb36('0x47')]));if(recordings[_0x4312e5[_0xbb36('0x48')]]&&transfers[_0xbb36('0x8')][_0x4312e5[_0xbb36('0x48')]]){transfers[_0xbb36('0x8')][_0x4312e5['transfereruniqueid']][_0xbb36('0x49')]=!![];}}catch(_0x67ce2e){utils[_0xbb36('0x15')](util['format'](_0xbb36('0x42'),_0x4312e5[_0xbb36('0x7')]),_0x67ce2e);}};