Built motion from commit fda31434.|2.5.44
[motion2.git] / server / services / xdr / index.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 _0x202d=['XDR\x20DISABLED','Asterisk\x20disabled\x20on\x20localhost','./agents.controller','./queues.controller','./members.controller','./dials.controller','./transfers.controller','./core.controller','connect','shutdown','fullybooted','error','managerevent','devicestatechange','debug','format','[%s][index][devicestatechange]','device','agentcalled','uniqueid','[%s][index][agentcalled]','agentringnoanswer','[%s][index][agentringnoanswer]','agentconnect','[%s][index][agentconnect]','agentcomplete','[%s][index][agentcomplete]','[%s][index][queuecallerabandon]','queuecallerabandon','queuecallerjoin','[%s][index][queuecallerjoin]','queuecallerleave','musiconholdstart','[%s][index][musiconholdstart]','musiconholdstop','[%s][index][musiconholdstop]','newstate','[%s][index][newstate]','hangup','[%s][index][hangup]','[%s][index][cdr]','cdr','blindtransfer','[%s][index][blindtransfer]','[%s][index][attendedtransfer]','origtransfereruniqueid','attendedtransfer','varset','[%s][index][varset]','newexten','[%s][index][newexten]','[%s][index][newchannel]','newchannel','[%s][index][dialbegin]','dialbegin','[%s]dialbegin','[%s][index][dialend]','asterisk-manager','../../config/environment','./utils','xdr','production','local','asterisk','port','username','password','info'];(function(_0x263edc,_0xd4ad76){var _0x70041=function(_0xbe33c2){while(--_0xbe33c2){_0x263edc['push'](_0x263edc['shift']());}};_0x70041(++_0xd4ad76);}(_0x202d,0x105));var _0xd202=function(_0x2e151a,_0x61339a){_0x2e151a=_0x2e151a-0x0;var _0x3ac736=_0x202d[_0x2e151a];return _0x3ac736;};var AsteriskManager=require(_0xd202('0x0'));var config=require(_0xd202('0x1'));var utils=require(_0xd202('0x2'));var util=require('util');var isXDREnabled=config['xdr']&&config[_0xd202('0x3')]['disabled']?!config[_0xd202('0x3')]['disabled']:!![];var isProduction=config['env']===_0xd202('0x4')||![];var isLocalAsterisk=config[_0xd202('0x3')]&&config[_0xd202('0x3')][_0xd202('0x5')]===!![]||![];var ami=new AsteriskManager(config[_0xd202('0x6')][_0xd202('0x7')],config[_0xd202('0x6')]['ip'],config[_0xd202('0x6')][_0xd202('0x8')],config[_0xd202('0x6')][_0xd202('0x9')],!![]);ami['keepConnected']();if(!isXDREnabled){utils[_0xd202('0xa')](_0xd202('0xb'));}else if(!isProduction&&!isLocalAsterisk){utils[_0xd202('0xa')](_0xd202('0xc'));}else{var agents=require(_0xd202('0xd'));var calls=require('./calls.controller');var queues=require(_0xd202('0xe'));var recordings=require('./recordings.controller');var members=require(_0xd202('0xf'));var dials=require(_0xd202('0x10'));var transfers=require(_0xd202('0x11'));var core=require(_0xd202('0x12'));ami['on'](_0xd202('0x13'),core['connect']);ami['on']('shutdown',core[_0xd202('0x14')]);ami['on'](_0xd202('0x15'),core['fullybooted']);ami['on'](_0xd202('0x16'),core['error']);ami['on']('close',core['close']);ami['on']('managerevent',core[_0xd202('0x17')]);ami['on'](_0xd202('0x18'),function(_0x28cfd9){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x1b'),_0x28cfd9['device']),_0x28cfd9);members[_0xd202('0x18')](_0x28cfd9);}catch(_0x442ede){utils[_0xd202('0x16')](util[_0xd202('0x1a')](_0xd202('0x1b'),_0x28cfd9[_0xd202('0x1c')]),_0x442ede);}});ami['on'](_0xd202('0x1d'),function(_0x312b6b){try{utils['debug'](util[_0xd202('0x1a')]('[%s][index][agentcalled]',_0x312b6b[_0xd202('0x1e')]),_0x312b6b);agents['agentcalled'](_0x312b6b);}catch(_0x577ef0){utils['error'](util[_0xd202('0x1a')](_0xd202('0x1f'),_0x312b6b['uniqueid']),_0x577ef0);}});ami['on'](_0xd202('0x20'),function(_0x44972a){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x21'),_0x44972a['uniqueid']),_0x44972a);agents[_0xd202('0x20')](_0x44972a);}catch(_0x38f822){utils[_0xd202('0x16')](util['format'](_0xd202('0x21'),_0x44972a['uniqueid']),_0x38f822);}});ami['on'](_0xd202('0x22'),function(_0x213b42){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x23'),_0x213b42[_0xd202('0x1e')]),_0x213b42);agents[_0xd202('0x22')](_0x213b42);queues['agentconnect'](_0x213b42);}catch(_0x52a12c){utils[_0xd202('0x16')](util[_0xd202('0x1a')](_0xd202('0x23'),_0x213b42[_0xd202('0x1e')]),_0x52a12c);}});ami['on'](_0xd202('0x24'),function(_0x34603e){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x25'),_0x34603e[_0xd202('0x1e')]),_0x34603e);agents['agentcomplete'](_0x34603e);queues['agentcomplete'](_0x34603e);members[_0xd202('0x24')](_0x34603e);}catch(_0x356b81){utils[_0xd202('0x16')](util[_0xd202('0x1a')](_0xd202('0x25'),_0x34603e[_0xd202('0x1e')]),_0x356b81);}});ami['on']('queuecallerabandon',function(_0x18a83a){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x26'),_0x18a83a['uniqueid']),_0x18a83a);agents['queuecallerabandon'](_0x18a83a);queues[_0xd202('0x27')](_0x18a83a);}catch(_0x3d5b36){utils[_0xd202('0x16')](util[_0xd202('0x1a')](_0xd202('0x26'),_0x18a83a[_0xd202('0x1e')]),_0x3d5b36);}});ami['on'](_0xd202('0x28'),function(_0x3e5e75){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x29'),_0x3e5e75[_0xd202('0x1e')]),_0x3e5e75);queues[_0xd202('0x28')](_0x3e5e75);recordings[_0xd202('0x28')](_0x3e5e75);}catch(_0x128f7f){utils['error'](util['format'](_0xd202('0x29'),_0x3e5e75['uniqueid']),_0x128f7f);}});ami['on'](_0xd202('0x2a'),function(_0x116773){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')]('[%s][index][queuecallerleave]',_0x116773['uniqueid']),_0x116773);queues[_0xd202('0x2a')](_0x116773);}catch(_0x30aa5a){utils[_0xd202('0x16')](util[_0xd202('0x1a')]('[%s][index][queuecallerleave]',_0x116773[_0xd202('0x1e')]),_0x30aa5a);}});ami['on'](_0xd202('0x2b'),function(_0x464b5f){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x2c'),_0x464b5f[_0xd202('0x1e')]),_0x464b5f);queues[_0xd202('0x2b')](_0x464b5f);calls[_0xd202('0x2b')](_0x464b5f);}catch(_0x2b6ccd){utils[_0xd202('0x16')](util[_0xd202('0x1a')](_0xd202('0x2c'),_0x464b5f[_0xd202('0x1e')]),_0x2b6ccd);}});ami['on'](_0xd202('0x2d'),function(_0x2c1f55){try{utils['debug'](util[_0xd202('0x1a')](_0xd202('0x2e'),_0x2c1f55[_0xd202('0x1e')]),_0x2c1f55);queues[_0xd202('0x2d')](_0x2c1f55);calls[_0xd202('0x2d')](_0x2c1f55);}catch(_0x356309){utils[_0xd202('0x16')](util[_0xd202('0x1a')]('[%s][index][musiconholdstop]',_0x2c1f55['uniqueid']),_0x356309);}});ami['on'](_0xd202('0x2f'),function(_0x4dba72){try{utils['debug'](util['format'](_0xd202('0x30'),_0x4dba72[_0xd202('0x1e')]),_0x4dba72);calls['newstate'](_0x4dba72);recordings['newstate'](_0x4dba72);}catch(_0x51ffe4){utils[_0xd202('0x16')](util[_0xd202('0x1a')](_0xd202('0x30'),_0x4dba72[_0xd202('0x1e')]),_0x51ffe4);}});ami['on'](_0xd202('0x31'),function(_0x1417d6){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x32'),_0x1417d6[_0xd202('0x1e')]),_0x1417d6);calls[_0xd202('0x31')](_0x1417d6);recordings[_0xd202('0x31')](_0x1417d6);dials[_0xd202('0x31')](_0x1417d6);agents['hangup'](_0x1417d6);queues['hangup'](_0x1417d6);}catch(_0x17f555){utils[_0xd202('0x16')](util['format'](_0xd202('0x32'),_0x1417d6[_0xd202('0x1e')]),_0x17f555);}});ami['on']('cdr',function(_0x167cec){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x33'),_0x167cec[_0xd202('0x1e')]),_0x167cec);members[_0xd202('0x34')](_0x167cec);}catch(_0x4ffeba){utils[_0xd202('0x16')](util['format'](_0xd202('0x33'),_0x167cec[_0xd202('0x1e')]),_0x4ffeba);}});ami['on'](_0xd202('0x35'),function(_0x1877c5){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x36'),_0x1877c5['uniqueid']),_0x1877c5);queues[_0xd202('0x35')](_0x1877c5);agents[_0xd202('0x35')](_0x1877c5);transfers[_0xd202('0x35')](_0x1877c5);recordings[_0xd202('0x35')](_0x1877c5);}catch(_0x48aeb8){utils[_0xd202('0x16')](util['format'](_0xd202('0x36'),_0x1877c5[_0xd202('0x1e')]),_0x48aeb8);}});ami['on']('attendedtransfer',function(_0xc20a24){try{utils[_0xd202('0x19')](util['format'](_0xd202('0x37'),_0xc20a24[_0xd202('0x38')]),_0xc20a24);queues[_0xd202('0x39')](_0xc20a24);transfers['attendedtransfer'](_0xc20a24);agents[_0xd202('0x39')](_0xc20a24);calls[_0xd202('0x39')](_0xc20a24);}catch(_0xc35302){utils[_0xd202('0x16')](util[_0xd202('0x1a')](_0xd202('0x37'),_0xc20a24[_0xd202('0x38')]),_0xc35302);}});ami['on'](_0xd202('0x3a'),function(_0xd8746e){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x3b'),_0xd8746e[_0xd202('0x1e')]),_0xd8746e);queues['varset'](_0xd8746e);recordings['varset'](_0xd8746e);calls[_0xd202('0x3a')](_0xd8746e);dials['varset'](_0xd8746e);}catch(_0x39be76){utils[_0xd202('0x16')](util['format'](_0xd202('0x3b'),_0xd8746e[_0xd202('0x1e')]),_0x39be76);}});ami['on'](_0xd202('0x3c'),function(_0x2a9d8c){try{utils[_0xd202('0x19')](util['format'](_0xd202('0x3d'),_0x2a9d8c[_0xd202('0x1e')]),_0x2a9d8c);calls['newexten'](_0x2a9d8c);recordings[_0xd202('0x3c')](_0x2a9d8c);dials[_0xd202('0x3c')](_0x2a9d8c);}catch(_0xe95b94){utils['error'](util[_0xd202('0x1a')](_0xd202('0x3d'),_0x2a9d8c[_0xd202('0x1e')]),_0xe95b94);}});ami['on']('newchannel',function(_0x5c6b83){try{utils[_0xd202('0x19')](util['format'](_0xd202('0x3e'),_0x5c6b83['uniqueid']),_0x5c6b83);calls[_0xd202('0x3f')](_0x5c6b83);recordings['newchannel'](_0x5c6b83);}catch(_0x1e8ffd){utils[_0xd202('0x16')](util['format'](_0xd202('0x3e'),_0x5c6b83['uniqueid']),_0x1e8ffd);}});ami['on']('dialbegin',function(_0x1d0d28){try{utils[_0xd202('0x19')](util['format'](_0xd202('0x40'),_0x1d0d28['uniqueid']),_0x1d0d28);dials[_0xd202('0x41')](_0x1d0d28);}catch(_0x3d0cbc){utils[_0xd202('0x16')](util['format'](_0xd202('0x42'),_0x1d0d28[_0xd202('0x1e')]),_0x3d0cbc);}});ami['on']('dialend',function(_0x4212e5){try{utils[_0xd202('0x19')](util[_0xd202('0x1a')](_0xd202('0x43'),_0x4212e5[_0xd202('0x1e')]),_0x4212e5);dials['dialend'](_0x4212e5);}catch(_0x3a0549){utils[_0xd202('0x16')](util[_0xd202('0x1a')](_0xd202('0x43'),_0x4212e5[_0xd202('0x1e')]),_0x3a0549);}});}