Built motion from commit e781dc3c.|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 _0x8846=['application','appdata','toLowerCase','startsWith','cdr','split','substring','queuecallerjoin','[%s][recordings][queuecallerjoin]','[%s][recordings][queuecallerjoin]\x20queue:%s','queue','blindtransfer','[%s][recordings][blindtransfer]','transferercalleridnum','transferercalleridname','transfereecalleridnum','transfereecalleridname','transfereruniqueid','lodash','./utils','./transfers.controller','info','format','[%s][recordings][writeDB]','uniqueid','blinds','transfereeuniqueid','accountcode','getUserByInternal','then','name','UserId','request','CreateVoiceRecording','newchannel','debug','linkedid','[%s][recordings][newchannel]\x20context:%s\x20exten:%s','exten','error','newstate','[%s][recordings][newstate]','isNil','channelstate','context','channel','[%s][recordings][newstate]\x20linkedid:%s\x20context:%s\x20channel:%s','varset','variable','[%s][recordings][varset]','[%s][recordings][varset]\x20variable:%s\x20value:%s','value','.wav49','replace','.WAV','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','newexten','[%s][recordings][newexten]','[%s][recordings][newexten]\x20application:%s\x20appdata:%s'];(function(_0x3766fa,_0x2cf3f6){var _0x4bd55a=function(_0x1963f2){while(--_0x1963f2){_0x3766fa['push'](_0x3766fa['shift']());}};_0x4bd55a(++_0x2cf3f6);}(_0x8846,0x136));var _0x6884=function(_0x3ee768,_0x11af44){_0x3ee768=_0x3ee768-0x0;var _0x26ddae=_0x8846[_0x3ee768];return _0x26ddae;};'use strict';var _=require(_0x6884('0x0'));var util=require('util');var utils=require(_0x6884('0x1'));var transfers=require(_0x6884('0x2'));var recordings={};function writeDB(_0x562cf4){var _0x1bfe3f;utils[_0x6884('0x3')](util[_0x6884('0x4')](_0x6884('0x5'),_0x562cf4[_0x6884('0x6')]));if(transfers[_0x6884('0x7')][_0x562cf4[_0x6884('0x6')]]){_0x1bfe3f=_0x562cf4[_0x6884('0x6')];_0x562cf4[_0x6884('0x6')]=transfers[_0x6884('0x7')][_0x562cf4['uniqueid']][_0x6884('0x8')];}if(_0x562cf4[_0x6884('0x9')]){utils[_0x6884('0xa')](_0x562cf4[_0x6884('0x9')])[_0x6884('0xb')](function(_0x4bc0b4){if(_0x4bc0b4){_0x562cf4['membername']=_0x4bc0b4[_0x6884('0xc')];_0x562cf4[_0x6884('0xd')]=_0x4bc0b4['id'];}utils[_0x6884('0xe')]('CreateVoiceRecording',_0x562cf4);});}else{utils[_0x6884('0xe')](_0x6884('0xf'),_0x562cf4);}if(_0x1bfe3f)delete transfers['blinds'][_0x1bfe3f];}exports[_0x6884('0x10')]=function(_0x3762e1){try{utils[_0x6884('0x11')](util[_0x6884('0x4')]('[%s][recordings][newchannel]',_0x3762e1[_0x6884('0x6')]),_0x3762e1);if(_0x3762e1['uniqueid']==_0x3762e1[_0x6884('0x12')]){utils[_0x6884('0x3')](util[_0x6884('0x4')](_0x6884('0x13'),_0x3762e1[_0x6884('0x6')],_0x3762e1['context'],_0x3762e1[_0x6884('0x14')]));recordings[_0x3762e1[_0x6884('0x6')]]={'uniqueid':_0x3762e1[_0x6884('0x6')],'accountcode':_0x3762e1['accountcode'],'exten':_0x3762e1[_0x6884('0x14')],'context':_0x3762e1['context'],'channel':_0x3762e1['channel'],'monitors':[]};}}catch(_0x10fb54){utils[_0x6884('0x15')](util[_0x6884('0x4')]('[%s][recordings][newchannel]',_0x3762e1[_0x6884('0x6')]),_0x10fb54);}};exports[_0x6884('0x16')]=function(_0x499077){try{utils['debug'](util['format'](_0x6884('0x17'),_0x499077[_0x6884('0x6')]),_0x499077);if(!_[_0x6884('0x18')](recordings[_0x499077[_0x6884('0x6')]])&&_0x499077[_0x6884('0x19')]==0x6){utils[_0x6884('0x3')](util[_0x6884('0x4')]('[%s][recordings][newstate]\x20context:%s\x20channel:%s',_0x499077[_0x6884('0x6')],_0x499077[_0x6884('0x1a')],_0x499077[_0x6884('0x1b')]));}else if(!_['isNil'](recordings[_0x499077[_0x6884('0x12')]])&&_0x499077[_0x6884('0x19')]==0x6&&_0x499077[_0x6884('0x1a')]!='transfer'){utils[_0x6884('0x3')](util[_0x6884('0x4')](_0x6884('0x1c'),_0x499077[_0x6884('0x6')],_0x499077[_0x6884('0x12')],_0x499077[_0x6884('0x1a')],_0x499077[_0x6884('0x1b')]));recordings[_0x499077['linkedid']]['accountcode']=_0x499077[_0x6884('0x9')];}}catch(_0x39f693){utils['error'](util['format'](_0x6884('0x17'),_0x499077[_0x6884('0x6')]),_0x39f693);}};exports[_0x6884('0x1d')]=function(_0x4963d8){try{if(!_['isNil'](_0x4963d8[_0x6884('0x1e')])&&!_[_0x6884('0x18')](_0x4963d8[_0x6884('0x1e')]['mixmonitor_filename'])){utils[_0x6884('0x11')](util[_0x6884('0x4')](_0x6884('0x1f'),_0x4963d8[_0x6884('0x6')]),_0x4963d8);utils['info'](util['format'](_0x6884('0x20'),_0x4963d8[_0x6884('0x6')],_0x4963d8[_0x6884('0x1e')],_0x4963d8[_0x6884('0x21')]));if(_['endsWith'](_0x4963d8[_0x6884('0x21')],_0x6884('0x22'))){_0x4963d8[_0x6884('0x21')]=_0x4963d8[_0x6884('0x21')][_0x6884('0x23')](_0x6884('0x22'),_0x6884('0x24'));}if(recordings[_0x4963d8[_0x6884('0x12')]]){var _0x2b5f48=_[_0x6884('0x25')](recordings[_0x4963d8[_0x6884('0x12')]][_0x6884('0x26')],{'value':_0x4963d8['value']});if(_[_0x6884('0x18')](_0x2b5f48)){recordings[_0x4963d8[_0x6884('0x12')]][_0x6884('0x26')][_0x6884('0x27')]({'value':_0x4963d8[_0x6884('0x21')]});}}}}catch(_0x5e687d){utils[_0x6884('0x15')](util['format']('[%s][recordings][varset]',_0x4963d8[_0x6884('0x6')]),_0x5e687d);}};exports[_0x6884('0x28')]=function(_0x1e44a5){try{if(!_[_0x6884('0x18')](recordings[_0x1e44a5['uniqueid']])){utils[_0x6884('0x11')](util['format'](_0x6884('0x29'),_0x1e44a5[_0x6884('0x6')]),_0x1e44a5);utils[_0x6884('0x3')](util[_0x6884('0x4')](_0x6884('0x2a'),_0x1e44a5[_0x6884('0x6')],_0x1e44a5[_0x6884('0x2b')],_0x1e44a5[_0x6884('0x2c')],_0x1e44a5[_0x6884('0x2d')]));recordings[_0x1e44a5['uniqueid']][_0x6884('0x2b')]=_0x1e44a5[_0x6884('0x2b')];recordings[_0x1e44a5[_0x6884('0x6')]][_0x6884('0x2c')]=_0x1e44a5[_0x6884('0x2c')];recordings[_0x1e44a5['uniqueid']][_0x6884('0x2e')]=_0x1e44a5[_0x6884('0x2e')];recordings[_0x1e44a5[_0x6884('0x6')]][_0x6884('0x2f')]=_0x1e44a5[_0x6884('0x2f')];if(recordings[_0x1e44a5[_0x6884('0x6')]][_0x6884('0x30')]==_0x6884('0x31')&&recordings[_0x1e44a5[_0x6884('0x6')]]['accountcode']){recordings[_0x1e44a5[_0x6884('0x6')]]['connectedlinenum']=recordings[_0x1e44a5[_0x6884('0x6')]]['accountcode'];recordings[_0x1e44a5[_0x6884('0x6')]][_0x6884('0x2f')]='';}recordings[_0x1e44a5[_0x6884('0x6')]][_0x6884('0x26')][_0x6884('0x32')](function(_0x17dc8f){var _0x5587a9=_[_0x6884('0x33')](recordings[_0x1e44a5['uniqueid']]);_0x5587a9['value']=_0x17dc8f[_0x6884('0x21')];writeDB(_0x5587a9);});delete recordings[_0x1e44a5['uniqueid']];}}catch(_0x18d190){utils['error'](util[_0x6884('0x4')](_0x6884('0x29'),_0x1e44a5['uniqueid']),_0x18d190);}};exports[_0x6884('0x34')]=function(_0xb74895){try{if(!_[_0x6884('0x18')](recordings[_0xb74895[_0x6884('0x6')]])){utils['debug'](util[_0x6884('0x4')](_0x6884('0x35'),_0xb74895[_0x6884('0x6')]),_0xb74895);utils['info'](util[_0x6884('0x4')](_0x6884('0x36'),_0xb74895[_0x6884('0x6')],_0xb74895[_0x6884('0x37')],_0xb74895[_0x6884('0x38')]));if(_0xb74895[_0x6884('0x37')][_0x6884('0x39')]()=='set'&&_[_0x6884('0x3a')](_0xb74895[_0x6884('0x38')][_0x6884('0x39')](),_0x6884('0x3b'))){var _0x59db60=_0xb74895['appdata'][_0x6884('0x3c')]('=');var _0x1280e0=_0x59db60[0x0][_0x6884('0x3d')](_0x59db60[0x0]['lastIndexOf']('(')+0x1,_0x59db60[0x0]['lastIndexOf'](')'));var _0x3391d3=_0x59db60[0x1];recordings[_0xb74895[_0x6884('0x6')]][_0x1280e0]=_0x3391d3;}}}catch(_0x200691){utils['error'](util[_0x6884('0x4')](_0x6884('0x35'),_0xb74895[_0x6884('0x6')]),_0x200691);}};exports[_0x6884('0x3e')]=function(_0x42be1d){try{if(!_[_0x6884('0x18')](recordings[_0x42be1d[_0x6884('0x6')]])){utils[_0x6884('0x11')](util[_0x6884('0x4')](_0x6884('0x3f'),_0x42be1d[_0x6884('0x6')]),_0x42be1d);utils[_0x6884('0x3')](util[_0x6884('0x4')](_0x6884('0x40'),_0x42be1d[_0x6884('0x6')],_0x42be1d['queue']));recordings[_0x42be1d[_0x6884('0x6')]][_0x6884('0x41')]=_0x42be1d[_0x6884('0x41')];}}catch(_0x204649){utils[_0x6884('0x15')](util[_0x6884('0x4')](_0x6884('0x3f'),_0x42be1d[_0x6884('0x6')]),_0x204649);}};exports[_0x6884('0x42')]=function(_0x8106be){try{utils[_0x6884('0x11')](util[_0x6884('0x4')](_0x6884('0x43'),_0x8106be[_0x6884('0x6')]),_0x8106be);utils['info'](util[_0x6884('0x4')]('[%s][recordings][blindtransfer]\x20transferercalleridnum:%s\x20transferercalleridname:%s\x20transfereecalleridnum:%s\x20transfereecalleridname:%s',_0x8106be[_0x6884('0x6')],_0x8106be[_0x6884('0x44')],_0x8106be[_0x6884('0x45')],_0x8106be[_0x6884('0x46')],_0x8106be[_0x6884('0x47')]));if(recordings[_0x8106be[_0x6884('0x48')]]&&transfers[_0x6884('0x7')][_0x8106be[_0x6884('0x48')]]){transfers[_0x6884('0x7')][_0x8106be[_0x6884('0x48')]]['recording']=!![];}}catch(_0x20ef10){utils[_0x6884('0x15')](util[_0x6884('0x4')](_0x6884('0x43'),_0x8106be['uniqueid']),_0x20ef10);}};