Built motion from commit 753c950e.|2.5.42
[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 _0x92bf=['transfer','[%s][recordings][newstate]\x20linkedid:%s\x20context:%s\x20channel:%s','mixmonitor_filename','[%s][recordings][varset]','[%s][recordings][varset]\x20variable:%s\x20value:%s','variable','value','.wav49','replace','find','monitors','push','hangup','[%s][recordings][hangup]','[%s][recordings][hangup]\x20calleridnum:%s\x20calleridname:%s\x20reason:%s','calleridnum','calleridname','cause-txt','connectedlinenum','connectedlinename','type','outbound','forEach','clone','[%s][recordings][newexten]','[%s][recordings][newexten]\x20application:%s\x20appdata:%s','application','appdata','set','toLowerCase','cdr','substring','[%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','transfereecalleridname','transfereruniqueid','recording','util','./utils','./transfers.controller','info','[%s][recordings][writeDB]','uniqueid','blinds','transfereeuniqueid','accountcode','getUserByInternal','then','membername','UserId','CreateVoiceRecording','request','newchannel','debug','format','[%s][recordings][newchannel]','linkedid','context','exten','error','newstate','[%s][recordings][newstate]','isNil','channelstate','[%s][recordings][newstate]\x20context:%s\x20channel:%s','channel'];(function(_0x524bb0,_0x326327){var _0x2fb947=function(_0x56302b){while(--_0x56302b){_0x524bb0['push'](_0x524bb0['shift']());}};_0x2fb947(++_0x326327);}(_0x92bf,0xbb));var _0xf92b=function(_0x173ad1,_0x56c4ac){_0x173ad1=_0x173ad1-0x0;var _0x26e30b=_0x92bf[_0x173ad1];return _0x26e30b;};'use strict';var _=require('lodash');var util=require(_0xf92b('0x0'));var utils=require(_0xf92b('0x1'));var transfers=require(_0xf92b('0x2'));var recordings={};function writeDB(_0x5d22e2){var _0x456c6c;utils[_0xf92b('0x3')](util['format'](_0xf92b('0x4'),_0x5d22e2[_0xf92b('0x5')]));if(transfers[_0xf92b('0x6')][_0x5d22e2[_0xf92b('0x5')]]){_0x456c6c=_0x5d22e2[_0xf92b('0x5')];_0x5d22e2[_0xf92b('0x5')]=transfers['blinds'][_0x5d22e2['uniqueid']][_0xf92b('0x7')];}if(_0x5d22e2[_0xf92b('0x8')]){utils[_0xf92b('0x9')](_0x5d22e2[_0xf92b('0x8')])[_0xf92b('0xa')](function(_0x2966d9){if(_0x2966d9){_0x5d22e2[_0xf92b('0xb')]=_0x2966d9['name'];_0x5d22e2[_0xf92b('0xc')]=_0x2966d9['id'];}utils['request'](_0xf92b('0xd'),_0x5d22e2);});}else{utils[_0xf92b('0xe')](_0xf92b('0xd'),_0x5d22e2);}if(_0x456c6c)delete transfers[_0xf92b('0x6')][_0x456c6c];}exports[_0xf92b('0xf')]=function(_0x172dab){try{utils[_0xf92b('0x10')](util[_0xf92b('0x11')](_0xf92b('0x12'),_0x172dab[_0xf92b('0x5')]),_0x172dab);if(_0x172dab[_0xf92b('0x5')]==_0x172dab[_0xf92b('0x13')]){utils[_0xf92b('0x3')](util[_0xf92b('0x11')]('[%s][recordings][newchannel]\x20context:%s\x20exten:%s',_0x172dab[_0xf92b('0x5')],_0x172dab[_0xf92b('0x14')],_0x172dab[_0xf92b('0x15')]));recordings[_0x172dab['uniqueid']]={'uniqueid':_0x172dab[_0xf92b('0x5')],'accountcode':_0x172dab[_0xf92b('0x8')],'exten':_0x172dab[_0xf92b('0x15')],'context':_0x172dab[_0xf92b('0x14')],'channel':_0x172dab['channel'],'monitors':[]};}}catch(_0x322407){utils[_0xf92b('0x16')](util[_0xf92b('0x11')]('[%s][recordings][newchannel]',_0x172dab[_0xf92b('0x5')]),_0x322407);}};exports[_0xf92b('0x17')]=function(_0xabd133){try{utils[_0xf92b('0x10')](util['format'](_0xf92b('0x18'),_0xabd133[_0xf92b('0x5')]),_0xabd133);if(!_[_0xf92b('0x19')](recordings[_0xabd133[_0xf92b('0x5')]])&&_0xabd133[_0xf92b('0x1a')]==0x6){utils['info'](util[_0xf92b('0x11')](_0xf92b('0x1b'),_0xabd133[_0xf92b('0x5')],_0xabd133[_0xf92b('0x14')],_0xabd133[_0xf92b('0x1c')]));}else if(!_[_0xf92b('0x19')](recordings[_0xabd133[_0xf92b('0x13')]])&&_0xabd133[_0xf92b('0x1a')]==0x6&&_0xabd133['context']!=_0xf92b('0x1d')){utils[_0xf92b('0x3')](util[_0xf92b('0x11')](_0xf92b('0x1e'),_0xabd133[_0xf92b('0x5')],_0xabd133[_0xf92b('0x13')],_0xabd133[_0xf92b('0x14')],_0xabd133[_0xf92b('0x1c')]));recordings[_0xabd133[_0xf92b('0x13')]][_0xf92b('0x8')]=_0xabd133[_0xf92b('0x8')];}}catch(_0x102d8e){utils[_0xf92b('0x16')](util['format'](_0xf92b('0x18'),_0xabd133[_0xf92b('0x5')]),_0x102d8e);}};exports['varset']=function(_0x23b7f1){try{if(!_[_0xf92b('0x19')](_0x23b7f1['variable'])&&!_['isNil'](_0x23b7f1['variable'][_0xf92b('0x1f')])){utils['debug'](util['format'](_0xf92b('0x20'),_0x23b7f1[_0xf92b('0x5')]),_0x23b7f1);utils['info'](util['format'](_0xf92b('0x21'),_0x23b7f1[_0xf92b('0x5')],_0x23b7f1[_0xf92b('0x22')],_0x23b7f1[_0xf92b('0x23')]));if(_['endsWith'](_0x23b7f1[_0xf92b('0x23')],_0xf92b('0x24'))){_0x23b7f1[_0xf92b('0x23')]=_0x23b7f1[_0xf92b('0x23')][_0xf92b('0x25')](_0xf92b('0x24'),'.WAV');}if(recordings[_0x23b7f1[_0xf92b('0x13')]]){var _0x88b8a3=_[_0xf92b('0x26')](recordings[_0x23b7f1[_0xf92b('0x13')]][_0xf92b('0x27')],{'value':_0x23b7f1['value']});if(_[_0xf92b('0x19')](_0x88b8a3)){recordings[_0x23b7f1[_0xf92b('0x13')]][_0xf92b('0x27')][_0xf92b('0x28')]({'value':_0x23b7f1['value']});}}}}catch(_0x5a41fc){utils[_0xf92b('0x16')](util[_0xf92b('0x11')](_0xf92b('0x20'),_0x23b7f1[_0xf92b('0x5')]),_0x5a41fc);}};exports[_0xf92b('0x29')]=function(_0x369cb6){try{if(!_[_0xf92b('0x19')](recordings[_0x369cb6[_0xf92b('0x5')]])){utils[_0xf92b('0x10')](util[_0xf92b('0x11')](_0xf92b('0x2a'),_0x369cb6[_0xf92b('0x5')]),_0x369cb6);utils[_0xf92b('0x3')](util['format'](_0xf92b('0x2b'),_0x369cb6[_0xf92b('0x5')],_0x369cb6[_0xf92b('0x2c')],_0x369cb6[_0xf92b('0x2d')],_0x369cb6[_0xf92b('0x2e')]));recordings[_0x369cb6['uniqueid']][_0xf92b('0x2c')]=_0x369cb6[_0xf92b('0x2c')];recordings[_0x369cb6[_0xf92b('0x5')]][_0xf92b('0x2d')]=_0x369cb6[_0xf92b('0x2d')];recordings[_0x369cb6[_0xf92b('0x5')]]['connectedlinenum']=_0x369cb6[_0xf92b('0x2f')];recordings[_0x369cb6['uniqueid']][_0xf92b('0x30')]=_0x369cb6[_0xf92b('0x30')];if(recordings[_0x369cb6[_0xf92b('0x5')]][_0xf92b('0x31')]==_0xf92b('0x32')&&recordings[_0x369cb6[_0xf92b('0x5')]]['accountcode']){recordings[_0x369cb6[_0xf92b('0x5')]]['connectedlinenum']=recordings[_0x369cb6['uniqueid']]['accountcode'];recordings[_0x369cb6[_0xf92b('0x5')]][_0xf92b('0x30')]='';}recordings[_0x369cb6[_0xf92b('0x5')]]['monitors'][_0xf92b('0x33')](function(_0x37dd08){var _0x347379=_[_0xf92b('0x34')](recordings[_0x369cb6['uniqueid']]);_0x347379[_0xf92b('0x23')]=_0x37dd08[_0xf92b('0x23')];writeDB(_0x347379);});delete recordings[_0x369cb6[_0xf92b('0x5')]];}}catch(_0x72ce2d){utils[_0xf92b('0x16')](util[_0xf92b('0x11')](_0xf92b('0x2a'),_0x369cb6['uniqueid']),_0x72ce2d);}};exports['newexten']=function(_0x53251f){try{if(!_[_0xf92b('0x19')](recordings[_0x53251f[_0xf92b('0x5')]])){utils[_0xf92b('0x10')](util[_0xf92b('0x11')](_0xf92b('0x35'),_0x53251f[_0xf92b('0x5')]),_0x53251f);utils['info'](util[_0xf92b('0x11')](_0xf92b('0x36'),_0x53251f[_0xf92b('0x5')],_0x53251f[_0xf92b('0x37')],_0x53251f[_0xf92b('0x38')]));if(_0x53251f[_0xf92b('0x37')]['toLowerCase']()==_0xf92b('0x39')&&_['startsWith'](_0x53251f[_0xf92b('0x38')][_0xf92b('0x3a')](),_0xf92b('0x3b'))){var _0xc40f40=_0x53251f[_0xf92b('0x38')]['split']('=');var _0xedc31a=_0xc40f40[0x0][_0xf92b('0x3c')](_0xc40f40[0x0]['lastIndexOf']('(')+0x1,_0xc40f40[0x0]['lastIndexOf'](')'));var _0x26fad2=_0xc40f40[0x1];recordings[_0x53251f[_0xf92b('0x5')]][_0xedc31a]=_0x26fad2;}}}catch(_0x1c484f){utils['error'](util['format']('[%s][recordings][newexten]',_0x53251f[_0xf92b('0x5')]),_0x1c484f);}};exports['queuecallerjoin']=function(_0x45a522){try{if(!_[_0xf92b('0x19')](recordings[_0x45a522[_0xf92b('0x5')]])){utils[_0xf92b('0x10')](util[_0xf92b('0x11')](_0xf92b('0x3d'),_0x45a522[_0xf92b('0x5')]),_0x45a522);utils['info'](util[_0xf92b('0x11')](_0xf92b('0x3e'),_0x45a522[_0xf92b('0x5')],_0x45a522[_0xf92b('0x3f')]));recordings[_0x45a522['uniqueid']][_0xf92b('0x3f')]=_0x45a522[_0xf92b('0x3f')];}}catch(_0x3975cc){utils[_0xf92b('0x16')](util['format'](_0xf92b('0x3d'),_0x45a522[_0xf92b('0x5')]),_0x3975cc);}};exports[_0xf92b('0x40')]=function(_0x164b94){try{utils[_0xf92b('0x10')](util[_0xf92b('0x11')](_0xf92b('0x41'),_0x164b94['uniqueid']),_0x164b94);utils[_0xf92b('0x3')](util[_0xf92b('0x11')](_0xf92b('0x42'),_0x164b94[_0xf92b('0x5')],_0x164b94[_0xf92b('0x43')],_0x164b94[_0xf92b('0x44')],_0x164b94['transfereecalleridnum'],_0x164b94[_0xf92b('0x45')]));if(recordings[_0x164b94['transfereruniqueid']]&&transfers[_0xf92b('0x6')][_0x164b94[_0xf92b('0x46')]]){transfers['blinds'][_0x164b94[_0xf92b('0x46')]][_0xf92b('0x47')]=!![];}}catch(_0x3260ce){utils[_0xf92b('0x16')](util[_0xf92b('0x11')](_0xf92b('0x41'),_0x164b94[_0xf92b('0x5')]),_0x3260ce);}};