8a974f8264ec4d43677352192a82bb0276b0c4ab
[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 _0x5224=['info','XDR\x20DISABLED','Asterisk\x20disabled\x20on\x20localhost','./agents.controller','./calls.controller','./queues.controller','./recordings.controller','./members.controller','./dials.controller','./core.controller','connect','shutdown','fullybooted','error','close','managerevent','devicestatechange','debug','format','[%s][index][devicestatechange]','device','agentcalled','uniqueid','agentringnoanswer','[%s][index][agentringnoanswer]','agentconnect','[%s][index][agentconnect]','agentcomplete','[%s][index][agentcomplete]','queuecallerabandon','[%s][index][queuecallerabandon]','[%s][index][queuecallerjoin]','queuecallerjoin','queuecallerleave','[%s][index][queuecallerleave]','musiconholdstart','musiconholdstop','[%s][index][musiconholdstop]','newstate','[%s][index][newstate]','hangup','[%s][index][hangup]','[%s][index][cdr]','cdr','[%s][index][blindtransfer]','blindtransfer','attendedtransfer','[%s][index][attendedtransfer]','origtransfereruniqueid','[%s][index][varset]','varset','newexten','[%s][index][newexten]','[%s][index][newchannel]','[%s][index][dialbegin]','[%s]dialbegin','dialend','[%s][index][dialend]','asterisk-manager','../../config/environment','xdr','disabled','env','local','asterisk','port','username','password','keepConnected'];(function(_0x189745,_0x6a76ee){var _0x4ac5ac=function(_0x76d621){while(--_0x76d621){_0x189745['push'](_0x189745['shift']());}};_0x4ac5ac(++_0x6a76ee);}(_0x5224,0x7f));var _0x4522=function(_0xdb4e73,_0x30b446){_0xdb4e73=_0xdb4e73-0x0;var _0x4578b4=_0x5224[_0xdb4e73];return _0x4578b4;};var AsteriskManager=require(_0x4522('0x0'));var config=require(_0x4522('0x1'));var utils=require('./utils');var util=require('util');var isXDREnabled=config[_0x4522('0x2')]&&config['xdr'][_0x4522('0x3')]?!config[_0x4522('0x2')]['disabled']:!![];var isProduction=config[_0x4522('0x4')]==='production'||![];var isLocalAsterisk=config[_0x4522('0x2')]&&config[_0x4522('0x2')][_0x4522('0x5')]===!![]||![];var ami=new AsteriskManager(config[_0x4522('0x6')][_0x4522('0x7')],config[_0x4522('0x6')]['ip'],config[_0x4522('0x6')][_0x4522('0x8')],config['asterisk'][_0x4522('0x9')],!![]);ami[_0x4522('0xa')]();if(!isXDREnabled){utils[_0x4522('0xb')](_0x4522('0xc'));}else if(!isProduction&&!isLocalAsterisk){utils['info'](_0x4522('0xd'));}else{var agents=require(_0x4522('0xe'));var calls=require(_0x4522('0xf'));var queues=require(_0x4522('0x10'));var recordings=require(_0x4522('0x11'));var members=require(_0x4522('0x12'));var dials=require(_0x4522('0x13'));var transfers=require('./transfers.controller');var core=require(_0x4522('0x14'));ami['on'](_0x4522('0x15'),core[_0x4522('0x15')]);ami['on'](_0x4522('0x16'),core['shutdown']);ami['on'](_0x4522('0x17'),core[_0x4522('0x17')]);ami['on'](_0x4522('0x18'),core['error']);ami['on'](_0x4522('0x19'),core['close']);ami['on'](_0x4522('0x1a'),core[_0x4522('0x1a')]);ami['on'](_0x4522('0x1b'),function(_0x9b3a95){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x1e'),_0x9b3a95[_0x4522('0x1f')]),_0x9b3a95);members[_0x4522('0x1b')](_0x9b3a95);}catch(_0x378444){utils[_0x4522('0x18')](util[_0x4522('0x1d')]('[%s][index][devicestatechange]',_0x9b3a95['device']),_0x378444);}});ami['on'](_0x4522('0x20'),function(_0x5abfae){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')]('[%s][index][agentcalled]',_0x5abfae[_0x4522('0x21')]),_0x5abfae);agents[_0x4522('0x20')](_0x5abfae);}catch(_0x34daea){utils['error'](util[_0x4522('0x1d')]('[%s][index][agentcalled]',_0x5abfae[_0x4522('0x21')]),_0x34daea);}});ami['on'](_0x4522('0x22'),function(_0xe4deee){try{utils[_0x4522('0x1c')](util['format'](_0x4522('0x23'),_0xe4deee[_0x4522('0x21')]),_0xe4deee);agents['agentringnoanswer'](_0xe4deee);}catch(_0x5ba30c){utils[_0x4522('0x18')](util[_0x4522('0x1d')]('[%s][index][agentringnoanswer]',_0xe4deee['uniqueid']),_0x5ba30c);}});ami['on'](_0x4522('0x24'),function(_0x42f5dc){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x25'),_0x42f5dc['uniqueid']),_0x42f5dc);agents[_0x4522('0x24')](_0x42f5dc);queues[_0x4522('0x24')](_0x42f5dc);}catch(_0x4f5eeb){utils[_0x4522('0x18')](util[_0x4522('0x1d')](_0x4522('0x25'),_0x42f5dc['uniqueid']),_0x4f5eeb);}});ami['on'](_0x4522('0x26'),function(_0x4d6699){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x27'),_0x4d6699['uniqueid']),_0x4d6699);agents['agentcomplete'](_0x4d6699);queues['agentcomplete'](_0x4d6699);members['agentcomplete'](_0x4d6699);}catch(_0x4d3806){utils['error'](util[_0x4522('0x1d')](_0x4522('0x27'),_0x4d6699[_0x4522('0x21')]),_0x4d3806);}});ami['on']('queuecallerabandon',function(_0x2f44a3){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')]('[%s][index][queuecallerabandon]',_0x2f44a3[_0x4522('0x21')]),_0x2f44a3);agents[_0x4522('0x28')](_0x2f44a3);queues[_0x4522('0x28')](_0x2f44a3);}catch(_0x35b8bc){utils[_0x4522('0x18')](util[_0x4522('0x1d')](_0x4522('0x29'),_0x2f44a3[_0x4522('0x21')]),_0x35b8bc);}});ami['on']('queuecallerjoin',function(_0x4dbdf0){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x2a'),_0x4dbdf0[_0x4522('0x21')]),_0x4dbdf0);queues[_0x4522('0x2b')](_0x4dbdf0);recordings[_0x4522('0x2b')](_0x4dbdf0);}catch(_0xa39d78){utils['error'](util[_0x4522('0x1d')](_0x4522('0x2a'),_0x4dbdf0['uniqueid']),_0xa39d78);}});ami['on'](_0x4522('0x2c'),function(_0x291ae9){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')]('[%s][index][queuecallerleave]',_0x291ae9[_0x4522('0x21')]),_0x291ae9);queues[_0x4522('0x2c')](_0x291ae9);}catch(_0x2dd010){utils['error'](util[_0x4522('0x1d')](_0x4522('0x2d'),_0x291ae9[_0x4522('0x21')]),_0x2dd010);}});ami['on'](_0x4522('0x2e'),function(_0x2f8a28){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')]('[%s][index][musiconholdstart]',_0x2f8a28[_0x4522('0x21')]),_0x2f8a28);queues[_0x4522('0x2e')](_0x2f8a28);calls[_0x4522('0x2e')](_0x2f8a28);}catch(_0x1cd652){utils['error'](util['format']('[%s][index][musiconholdstart]',_0x2f8a28[_0x4522('0x21')]),_0x1cd652);}});ami['on'](_0x4522('0x2f'),function(_0x1ac345){try{utils['debug'](util[_0x4522('0x1d')]('[%s][index][musiconholdstop]',_0x1ac345[_0x4522('0x21')]),_0x1ac345);queues[_0x4522('0x2f')](_0x1ac345);calls[_0x4522('0x2f')](_0x1ac345);}catch(_0x3dd3ed){utils['error'](util['format'](_0x4522('0x30'),_0x1ac345[_0x4522('0x21')]),_0x3dd3ed);}});ami['on'](_0x4522('0x31'),function(_0x5ab57b){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x32'),_0x5ab57b[_0x4522('0x21')]),_0x5ab57b);calls[_0x4522('0x31')](_0x5ab57b);recordings[_0x4522('0x31')](_0x5ab57b);}catch(_0x12b5c9){utils['error'](util[_0x4522('0x1d')](_0x4522('0x32'),_0x5ab57b[_0x4522('0x21')]),_0x12b5c9);}});ami['on'](_0x4522('0x33'),function(_0x18c486){try{utils[_0x4522('0x1c')](util['format'](_0x4522('0x34'),_0x18c486[_0x4522('0x21')]),_0x18c486);calls[_0x4522('0x33')](_0x18c486);recordings[_0x4522('0x33')](_0x18c486);dials[_0x4522('0x33')](_0x18c486);agents[_0x4522('0x33')](_0x18c486);queues[_0x4522('0x33')](_0x18c486);}catch(_0x1347d0){utils[_0x4522('0x18')](util[_0x4522('0x1d')](_0x4522('0x34'),_0x18c486[_0x4522('0x21')]),_0x1347d0);}});ami['on']('cdr',function(_0x55b861){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x35'),_0x55b861[_0x4522('0x21')]),_0x55b861);members[_0x4522('0x36')](_0x55b861);}catch(_0x5be984){utils[_0x4522('0x18')](util[_0x4522('0x1d')](_0x4522('0x35'),_0x55b861[_0x4522('0x21')]),_0x5be984);}});ami['on']('blindtransfer',function(_0x5bdf35){try{utils[_0x4522('0x1c')](util['format'](_0x4522('0x37'),_0x5bdf35[_0x4522('0x21')]),_0x5bdf35);queues['blindtransfer'](_0x5bdf35);agents[_0x4522('0x38')](_0x5bdf35);transfers[_0x4522('0x38')](_0x5bdf35);recordings[_0x4522('0x38')](_0x5bdf35);}catch(_0x18e4bd){utils['error'](util[_0x4522('0x1d')](_0x4522('0x37'),_0x5bdf35['uniqueid']),_0x18e4bd);}});ami['on'](_0x4522('0x39'),function(_0x49f8a1){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x3a'),_0x49f8a1['origtransfereruniqueid']),_0x49f8a1);queues[_0x4522('0x39')](_0x49f8a1);transfers[_0x4522('0x39')](_0x49f8a1);agents[_0x4522('0x39')](_0x49f8a1);calls['attendedtransfer'](_0x49f8a1);}catch(_0x426463){utils[_0x4522('0x18')](util[_0x4522('0x1d')]('[%s][index][attendedtransfer]',_0x49f8a1[_0x4522('0x3b')]),_0x426463);}});ami['on']('varset',function(_0x166ec8){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x3c'),_0x166ec8[_0x4522('0x21')]),_0x166ec8);queues[_0x4522('0x3d')](_0x166ec8);recordings[_0x4522('0x3d')](_0x166ec8);calls[_0x4522('0x3d')](_0x166ec8);dials[_0x4522('0x3d')](_0x166ec8);}catch(_0x1b40ad){utils[_0x4522('0x18')](util[_0x4522('0x1d')]('[%s][index][varset]',_0x166ec8[_0x4522('0x21')]),_0x1b40ad);}});ami['on']('newexten',function(_0xfb0598){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')]('[%s][index][newexten]',_0xfb0598[_0x4522('0x21')]),_0xfb0598);calls[_0x4522('0x3e')](_0xfb0598);recordings['newexten'](_0xfb0598);dials[_0x4522('0x3e')](_0xfb0598);}catch(_0x2a6782){utils[_0x4522('0x18')](util[_0x4522('0x1d')](_0x4522('0x3f'),_0xfb0598['uniqueid']),_0x2a6782);}});ami['on']('newchannel',function(_0x21af73){try{utils['debug'](util[_0x4522('0x1d')]('[%s][index][newchannel]',_0x21af73[_0x4522('0x21')]),_0x21af73);calls['newchannel'](_0x21af73);recordings['newchannel'](_0x21af73);}catch(_0x7232dd){utils[_0x4522('0x18')](util[_0x4522('0x1d')](_0x4522('0x40'),_0x21af73[_0x4522('0x21')]),_0x7232dd);}});ami['on']('dialbegin',function(_0x4a6de5){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x41'),_0x4a6de5[_0x4522('0x21')]),_0x4a6de5);dials['dialbegin'](_0x4a6de5);}catch(_0x108f54){utils[_0x4522('0x18')](util[_0x4522('0x1d')](_0x4522('0x42'),_0x4a6de5[_0x4522('0x21')]),_0x108f54);}});ami['on'](_0x4522('0x43'),function(_0x45a834){try{utils[_0x4522('0x1c')](util[_0x4522('0x1d')](_0x4522('0x44'),_0x45a834[_0x4522('0x21')]),_0x45a834);dials[_0x4522('0x43')](_0x45a834);}catch(_0x591302){utils[_0x4522('0x18')](util[_0x4522('0x1d')](_0x4522('0x44'),_0x45a834[_0x4522('0x21')]),_0x591302);}});}