4dc87491ae0a52fb0351aa2f8b8d5504e9c00388
[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 _0xdc19=['password','info','XDR\x20DISABLED','Asterisk\x20disabled\x20on\x20localhost','./calls.controller','./recordings.controller','./members.controller','./dials.controller','./transfers.controller','connect','shutdown','fullybooted','close','managerevent','devicestatechange','format','[%s][index][devicestatechange]','device','debug','[%s][index][agentcalled]','uniqueid','agentcalled','error','agentringnoanswer','[%s][index][agentringnoanswer]','agentconnect','[%s][index][agentconnect]','agentcomplete','[%s][index][agentcomplete]','[%s][index][queuecallerabandon]','queuecallerabandon','queuecallerjoin','[%s][index][queuecallerjoin]','queuecallerleave','[%s][index][queuecallerleave]','musiconholdstart','[%s][index][musiconholdstart]','musiconholdstop','[%s][index][musiconholdstop]','newstate','[%s][index][newstate]','hangup','[%s][index][hangup]','cdr','[%s][index][cdr]','blindtransfer','[%s][index][blindtransfer]','attendedtransfer','origtransfereruniqueid','[%s][index][attendedtransfer]','[%s][index][varset]','varset','newexten','[%s][index][newexten]','[%s][index][newchannel]','newchannel','dialbegin','[%s][index][dialbegin]','[%s]dialbegin','dialend','[%s][index][dialend]','./utils','util','xdr','disabled','env','production','local','asterisk','port','username'];(function(_0x590584,_0x35db98){var _0x43951e=function(_0x2c2fbb){while(--_0x2c2fbb){_0x590584['push'](_0x590584['shift']());}};_0x43951e(++_0x35db98);}(_0xdc19,0x159));var _0x9dc1=function(_0x19628b,_0x449889){_0x19628b=_0x19628b-0x0;var _0x4164a3=_0xdc19[_0x19628b];return _0x4164a3;};var AsteriskManager=require('asterisk-manager');var config=require('../../config/environment');var utils=require(_0x9dc1('0x0'));var util=require(_0x9dc1('0x1'));var isXDREnabled=config[_0x9dc1('0x2')]&&config[_0x9dc1('0x2')][_0x9dc1('0x3')]?!config[_0x9dc1('0x2')][_0x9dc1('0x3')]:!![];var isProduction=config[_0x9dc1('0x4')]===_0x9dc1('0x5')||![];var isLocalAsterisk=config[_0x9dc1('0x2')]&&config[_0x9dc1('0x2')][_0x9dc1('0x6')]===!![]||![];var ami=new AsteriskManager(config[_0x9dc1('0x7')][_0x9dc1('0x8')],config['asterisk']['ip'],config[_0x9dc1('0x7')][_0x9dc1('0x9')],config['asterisk'][_0x9dc1('0xa')],!![]);ami['keepConnected']();if(!isXDREnabled){utils[_0x9dc1('0xb')](_0x9dc1('0xc'));}else if(!isProduction&&!isLocalAsterisk){utils['info'](_0x9dc1('0xd'));}else{var agents=require('./agents.controller');var calls=require(_0x9dc1('0xe'));var queues=require('./queues.controller');var recordings=require(_0x9dc1('0xf'));var members=require(_0x9dc1('0x10'));var dials=require(_0x9dc1('0x11'));var transfers=require(_0x9dc1('0x12'));var core=require('./core.controller');ami['on'](_0x9dc1('0x13'),core['connect']);ami['on'](_0x9dc1('0x14'),core['shutdown']);ami['on'](_0x9dc1('0x15'),core['fullybooted']);ami['on']('error',core['error']);ami['on']('close',core[_0x9dc1('0x16')]);ami['on'](_0x9dc1('0x17'),core[_0x9dc1('0x17')]);ami['on'](_0x9dc1('0x18'),function(_0x4d8a7a){try{utils['debug'](util[_0x9dc1('0x19')](_0x9dc1('0x1a'),_0x4d8a7a['device']),_0x4d8a7a);members[_0x9dc1('0x18')](_0x4d8a7a);}catch(_0x416b55){utils['error'](util[_0x9dc1('0x19')](_0x9dc1('0x1a'),_0x4d8a7a[_0x9dc1('0x1b')]),_0x416b55);}});ami['on']('agentcalled',function(_0x24e737){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')](_0x9dc1('0x1d'),_0x24e737[_0x9dc1('0x1e')]),_0x24e737);agents[_0x9dc1('0x1f')](_0x24e737);}catch(_0x5999c0){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')](_0x9dc1('0x1d'),_0x24e737[_0x9dc1('0x1e')]),_0x5999c0);}});ami['on'](_0x9dc1('0x21'),function(_0x1717d9){try{utils[_0x9dc1('0x1c')](util['format'](_0x9dc1('0x22'),_0x1717d9[_0x9dc1('0x1e')]),_0x1717d9);agents[_0x9dc1('0x21')](_0x1717d9);}catch(_0x1a2888){utils['error'](util[_0x9dc1('0x19')](_0x9dc1('0x22'),_0x1717d9[_0x9dc1('0x1e')]),_0x1a2888);}});ami['on'](_0x9dc1('0x23'),function(_0x2261cd){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')]('[%s][index][agentconnect]',_0x2261cd[_0x9dc1('0x1e')]),_0x2261cd);agents[_0x9dc1('0x23')](_0x2261cd);queues[_0x9dc1('0x23')](_0x2261cd);}catch(_0x5df88d){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')](_0x9dc1('0x24'),_0x2261cd[_0x9dc1('0x1e')]),_0x5df88d);}});ami['on'](_0x9dc1('0x25'),function(_0x14b373){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')](_0x9dc1('0x26'),_0x14b373[_0x9dc1('0x1e')]),_0x14b373);agents[_0x9dc1('0x25')](_0x14b373);queues[_0x9dc1('0x25')](_0x14b373);members[_0x9dc1('0x25')](_0x14b373);}catch(_0x58c28a){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')](_0x9dc1('0x26'),_0x14b373[_0x9dc1('0x1e')]),_0x58c28a);}});ami['on']('queuecallerabandon',function(_0x807e93){try{utils['debug'](util[_0x9dc1('0x19')](_0x9dc1('0x27'),_0x807e93['uniqueid']),_0x807e93);agents[_0x9dc1('0x28')](_0x807e93);queues[_0x9dc1('0x28')](_0x807e93);}catch(_0x243180){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')](_0x9dc1('0x27'),_0x807e93['uniqueid']),_0x243180);}});ami['on'](_0x9dc1('0x29'),function(_0x460ca5){try{utils['debug'](util[_0x9dc1('0x19')]('[%s][index][queuecallerjoin]',_0x460ca5[_0x9dc1('0x1e')]),_0x460ca5);queues[_0x9dc1('0x29')](_0x460ca5);recordings[_0x9dc1('0x29')](_0x460ca5);}catch(_0x2a5d65){utils['error'](util[_0x9dc1('0x19')](_0x9dc1('0x2a'),_0x460ca5[_0x9dc1('0x1e')]),_0x2a5d65);}});ami['on'](_0x9dc1('0x2b'),function(_0x288d14){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')](_0x9dc1('0x2c'),_0x288d14[_0x9dc1('0x1e')]),_0x288d14);queues[_0x9dc1('0x2b')](_0x288d14);}catch(_0x42885c){utils['error'](util['format'](_0x9dc1('0x2c'),_0x288d14['uniqueid']),_0x42885c);}});ami['on']('musiconholdstart',function(_0x2eb009){try{utils[_0x9dc1('0x1c')](util['format']('[%s][index][musiconholdstart]',_0x2eb009[_0x9dc1('0x1e')]),_0x2eb009);queues[_0x9dc1('0x2d')](_0x2eb009);calls[_0x9dc1('0x2d')](_0x2eb009);}catch(_0x23c895){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')](_0x9dc1('0x2e'),_0x2eb009['uniqueid']),_0x23c895);}});ami['on'](_0x9dc1('0x2f'),function(_0x449e6d){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')](_0x9dc1('0x30'),_0x449e6d[_0x9dc1('0x1e')]),_0x449e6d);queues[_0x9dc1('0x2f')](_0x449e6d);calls[_0x9dc1('0x2f')](_0x449e6d);}catch(_0x36f47e){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')]('[%s][index][musiconholdstop]',_0x449e6d[_0x9dc1('0x1e')]),_0x36f47e);}});ami['on'](_0x9dc1('0x31'),function(_0x1fea15){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')](_0x9dc1('0x32'),_0x1fea15[_0x9dc1('0x1e')]),_0x1fea15);calls[_0x9dc1('0x31')](_0x1fea15);recordings[_0x9dc1('0x31')](_0x1fea15);}catch(_0x1178ba){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')](_0x9dc1('0x32'),_0x1fea15[_0x9dc1('0x1e')]),_0x1178ba);}});ami['on'](_0x9dc1('0x33'),function(_0x540f27){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')]('[%s][index][hangup]',_0x540f27[_0x9dc1('0x1e')]),_0x540f27);calls[_0x9dc1('0x33')](_0x540f27);recordings['hangup'](_0x540f27);dials[_0x9dc1('0x33')](_0x540f27);agents['hangup'](_0x540f27);queues[_0x9dc1('0x33')](_0x540f27);}catch(_0x824afc){utils[_0x9dc1('0x20')](util['format'](_0x9dc1('0x34'),_0x540f27['uniqueid']),_0x824afc);}});ami['on'](_0x9dc1('0x35'),function(_0x14972c){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')](_0x9dc1('0x36'),_0x14972c[_0x9dc1('0x1e')]),_0x14972c);members[_0x9dc1('0x35')](_0x14972c);}catch(_0x464787){utils[_0x9dc1('0x20')](util['format'](_0x9dc1('0x36'),_0x14972c[_0x9dc1('0x1e')]),_0x464787);}});ami['on'](_0x9dc1('0x37'),function(_0x3bf11a){try{utils[_0x9dc1('0x1c')](util['format'](_0x9dc1('0x38'),_0x3bf11a[_0x9dc1('0x1e')]),_0x3bf11a);queues[_0x9dc1('0x37')](_0x3bf11a);agents[_0x9dc1('0x37')](_0x3bf11a);transfers[_0x9dc1('0x37')](_0x3bf11a);recordings[_0x9dc1('0x37')](_0x3bf11a);}catch(_0x1a9c1d){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')]('[%s][index][blindtransfer]',_0x3bf11a[_0x9dc1('0x1e')]),_0x1a9c1d);}});ami['on'](_0x9dc1('0x39'),function(_0x24ee96){try{utils[_0x9dc1('0x1c')](util['format']('[%s][index][attendedtransfer]',_0x24ee96[_0x9dc1('0x3a')]),_0x24ee96);queues['attendedtransfer'](_0x24ee96);transfers[_0x9dc1('0x39')](_0x24ee96);agents[_0x9dc1('0x39')](_0x24ee96);calls[_0x9dc1('0x39')](_0x24ee96);}catch(_0x4b1cb6){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')](_0x9dc1('0x3b'),_0x24ee96[_0x9dc1('0x3a')]),_0x4b1cb6);}});ami['on']('varset',function(_0x27982c){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')](_0x9dc1('0x3c'),_0x27982c[_0x9dc1('0x1e')]),_0x27982c);queues[_0x9dc1('0x3d')](_0x27982c);recordings[_0x9dc1('0x3d')](_0x27982c);calls[_0x9dc1('0x3d')](_0x27982c);dials[_0x9dc1('0x3d')](_0x27982c);}catch(_0x16b2da){utils['error'](util[_0x9dc1('0x19')](_0x9dc1('0x3c'),_0x27982c[_0x9dc1('0x1e')]),_0x16b2da);}});ami['on'](_0x9dc1('0x3e'),function(_0x213fc5){try{utils['debug'](util[_0x9dc1('0x19')](_0x9dc1('0x3f'),_0x213fc5[_0x9dc1('0x1e')]),_0x213fc5);calls[_0x9dc1('0x3e')](_0x213fc5);recordings[_0x9dc1('0x3e')](_0x213fc5);dials['newexten'](_0x213fc5);}catch(_0x50aa07){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')](_0x9dc1('0x3f'),_0x213fc5[_0x9dc1('0x1e')]),_0x50aa07);}});ami['on']('newchannel',function(_0x3910c6){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')](_0x9dc1('0x40'),_0x3910c6['uniqueid']),_0x3910c6);calls['newchannel'](_0x3910c6);recordings[_0x9dc1('0x41')](_0x3910c6);}catch(_0x33b3fd){utils[_0x9dc1('0x20')](util[_0x9dc1('0x19')](_0x9dc1('0x40'),_0x3910c6[_0x9dc1('0x1e')]),_0x33b3fd);}});ami['on'](_0x9dc1('0x42'),function(_0xc40508){try{utils[_0x9dc1('0x1c')](util[_0x9dc1('0x19')](_0x9dc1('0x43'),_0xc40508[_0x9dc1('0x1e')]),_0xc40508);dials[_0x9dc1('0x42')](_0xc40508);}catch(_0x2dc20e){utils['error'](util[_0x9dc1('0x19')](_0x9dc1('0x44'),_0xc40508[_0x9dc1('0x1e')]),_0x2dc20e);}});ami['on'](_0x9dc1('0x45'),function(_0x276d3b){try{utils['debug'](util[_0x9dc1('0x19')](_0x9dc1('0x46'),_0x276d3b[_0x9dc1('0x1e')]),_0x276d3b);dials[_0x9dc1('0x45')](_0x276d3b);}catch(_0x4b0fbe){utils['error'](util['format'](_0x9dc1('0x46'),_0x276d3b[_0x9dc1('0x1e')]),_0x4b0fbe);}});}