2b04cb418ac543613e9cb150f02ddd243e003ea2
[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 _0xd9c1=['musiconholdstart','[index][musiconholdstart]','musiconholdstop','[index][musiconholdstop]','newstate','[index][newstate]','hangup','[index][hangup]','cdr','[index][cdr]','blindtransfer','[index][blindtransfer]','attendedtransfer','[index][attendedtransfer]','[index][varset]','varset','newexten','[index][newexten]','newchannel','[index][newchannel]','dialbegin','[index][dialbegin]','dialend','[index][dialend]','asterisk-manager','../../config/environment','./utils','port','asterisk','username','password','keepConnected','xdr','./agents.controller','./calls.controller','./queues.controller','./dials.controller','./transfers.controller','./core.controller','connect','shutdown','fullybooted','error','close','managerevent','devicestatechange','debug','[index][devicestatechange]','agentcalled','[index][agentcalled]','agentringnoanswer','[index][agentringnoanswer]','agentconnect','[index][agentconnect]','agentcomplete','[index][agentcomplete]','queuecallerabandon','[index][queuecallerjoin]','queuecallerjoin','[index][queuecallerleave]','queuecallerleave'];(function(_0x2edfd4,_0x1e6c06){var _0x44a033=function(_0x1c3d5e){while(--_0x1c3d5e){_0x2edfd4['push'](_0x2edfd4['shift']());}};_0x44a033(++_0x1e6c06);}(_0xd9c1,0xcf));var _0x1d9c=function(_0x1996a7,_0x4666ea){_0x1996a7=_0x1996a7-0x0;var _0x3edf0e=_0xd9c1[_0x1996a7];return _0x3edf0e;};var AsteriskManager=require(_0x1d9c('0x0'));var config=require(_0x1d9c('0x1'));var utils=require(_0x1d9c('0x2'));var ami=new AsteriskManager(config['asterisk'][_0x1d9c('0x3')],config[_0x1d9c('0x4')]['ip'],config[_0x1d9c('0x4')][_0x1d9c('0x5')],config['asterisk'][_0x1d9c('0x6')],!![]);ami[_0x1d9c('0x7')]();if(config[_0x1d9c('0x8')]&&config['xdr']['disabled']){utils['info']('XDR\x20DISABLED');}else{var agents=require(_0x1d9c('0x9'));var calls=require(_0x1d9c('0xa'));var queues=require(_0x1d9c('0xb'));var recordings=require('./recordings.controller');var members=require('./members.controller');var dials=require(_0x1d9c('0xc'));var transfers=require(_0x1d9c('0xd'));var core=require(_0x1d9c('0xe'));ami['on']('connect',core[_0x1d9c('0xf')]);ami['on'](_0x1d9c('0x10'),core['shutdown']);ami['on'](_0x1d9c('0x11'),core['fullybooted']);ami['on']('error',core[_0x1d9c('0x12')]);ami['on'](_0x1d9c('0x13'),core[_0x1d9c('0x13')]);ami['on'](_0x1d9c('0x14'),core['managerevent']);ami['on'](_0x1d9c('0x15'),function(_0x52fb35){try{utils[_0x1d9c('0x16')](_0x1d9c('0x17'),_0x52fb35);members[_0x1d9c('0x15')](_0x52fb35);}catch(_0x46d158){utils['error'](_0x1d9c('0x17'),_0x46d158);}});ami['on'](_0x1d9c('0x18'),function(_0x2c239b){try{utils[_0x1d9c('0x16')](_0x1d9c('0x19'),_0x2c239b);agents[_0x1d9c('0x18')](_0x2c239b);}catch(_0x191a75){utils[_0x1d9c('0x12')](_0x1d9c('0x19'),_0x191a75);}});ami['on'](_0x1d9c('0x1a'),function(_0x56b2b1){try{utils[_0x1d9c('0x16')](_0x1d9c('0x1b'),_0x56b2b1);agents[_0x1d9c('0x1a')](_0x56b2b1);}catch(_0x4141d2){utils[_0x1d9c('0x12')]('[index][agentringnoanswer]',_0x4141d2);}});ami['on'](_0x1d9c('0x1c'),function(_0x3be9b0){try{utils['debug'](_0x1d9c('0x1d'),_0x3be9b0);agents[_0x1d9c('0x1c')](_0x3be9b0);queues[_0x1d9c('0x1c')](_0x3be9b0);}catch(_0x448f95){utils[_0x1d9c('0x12')](_0x1d9c('0x1d'),_0x448f95);}});ami['on'](_0x1d9c('0x1e'),function(_0x326d76){try{utils['debug'](_0x1d9c('0x1f'),_0x326d76);agents[_0x1d9c('0x1e')](_0x326d76);queues['agentcomplete'](_0x326d76);members[_0x1d9c('0x1e')](_0x326d76);}catch(_0x338029){utils[_0x1d9c('0x12')](_0x1d9c('0x1f'),_0x338029);}});ami['on'](_0x1d9c('0x20'),function(_0x1866e6){try{utils[_0x1d9c('0x16')]('[index][queuecallerabandon]',_0x1866e6);agents[_0x1d9c('0x20')](_0x1866e6);queues[_0x1d9c('0x20')](_0x1866e6);}catch(_0x251a15){utils[_0x1d9c('0x12')]('[index][queuecallerabandon]',_0x251a15);}});ami['on']('queuecallerjoin',function(_0x3695f5){try{utils[_0x1d9c('0x16')](_0x1d9c('0x21'),_0x3695f5);queues[_0x1d9c('0x22')](_0x3695f5);recordings[_0x1d9c('0x22')](_0x3695f5);}catch(_0x37b96d){utils[_0x1d9c('0x12')](_0x1d9c('0x21'),_0x37b96d);}});ami['on']('queuecallerleave',function(_0x4cfba4){try{utils[_0x1d9c('0x16')](_0x1d9c('0x23'),_0x4cfba4);queues[_0x1d9c('0x24')](_0x4cfba4);}catch(_0x27ea72){utils[_0x1d9c('0x12')](_0x1d9c('0x23'),_0x27ea72);}});ami['on'](_0x1d9c('0x25'),function(_0x711e25){try{utils[_0x1d9c('0x16')](_0x1d9c('0x26'),_0x711e25);queues[_0x1d9c('0x25')](_0x711e25);calls[_0x1d9c('0x25')](_0x711e25);}catch(_0x5b9ef6){utils['error'](_0x1d9c('0x26'),_0x5b9ef6);}});ami['on'](_0x1d9c('0x27'),function(_0x2744f8){try{utils[_0x1d9c('0x16')](_0x1d9c('0x28'),_0x2744f8);queues[_0x1d9c('0x27')](_0x2744f8);calls[_0x1d9c('0x27')](_0x2744f8);}catch(_0x449d35){utils['error'](_0x1d9c('0x28'),_0x449d35);}});ami['on'](_0x1d9c('0x29'),function(_0x6e3212){try{utils[_0x1d9c('0x16')]('[index][newstate]',_0x6e3212);calls[_0x1d9c('0x29')](_0x6e3212);recordings[_0x1d9c('0x29')](_0x6e3212);}catch(_0x4670ff){utils['error'](_0x1d9c('0x2a'),_0x4670ff);}});ami['on'](_0x1d9c('0x2b'),function(_0x36dba4){try{utils[_0x1d9c('0x16')](_0x1d9c('0x2c'),_0x36dba4);calls[_0x1d9c('0x2b')](_0x36dba4);recordings['hangup'](_0x36dba4);dials[_0x1d9c('0x2b')](_0x36dba4);agents['hangup'](_0x36dba4);queues[_0x1d9c('0x2b')](_0x36dba4);}catch(_0x447563){utils['error'](_0x1d9c('0x2c'),_0x447563);}});ami['on'](_0x1d9c('0x2d'),function(_0x48a67d){try{utils[_0x1d9c('0x16')](_0x1d9c('0x2e'),_0x48a67d);members[_0x1d9c('0x2d')](_0x48a67d);}catch(_0x2fbc73){utils[_0x1d9c('0x12')](_0x1d9c('0x2e'),_0x2fbc73);}});ami['on'](_0x1d9c('0x2f'),function(_0x48600c){try{utils[_0x1d9c('0x16')](_0x1d9c('0x30'),_0x48600c);queues['blindtransfer'](_0x48600c);agents[_0x1d9c('0x2f')](_0x48600c);transfers[_0x1d9c('0x2f')](_0x48600c);}catch(_0x2923bc){utils[_0x1d9c('0x12')](_0x1d9c('0x30'),_0x2923bc);}});ami['on'](_0x1d9c('0x31'),function(_0x1b05be){try{utils[_0x1d9c('0x16')](_0x1d9c('0x32'),_0x1b05be);queues[_0x1d9c('0x31')](_0x1b05be);transfers[_0x1d9c('0x31')](_0x1b05be);agents[_0x1d9c('0x31')](_0x1b05be);calls['attendedtransfer'](_0x1b05be);}catch(_0x1f2fad){utils[_0x1d9c('0x12')](_0x1d9c('0x32'),_0x1f2fad);}});ami['on']('varset',function(_0x1b5785){try{utils['debug'](_0x1d9c('0x33'),_0x1b5785);queues['varset'](_0x1b5785);recordings[_0x1d9c('0x34')](_0x1b5785);calls[_0x1d9c('0x34')](_0x1b5785);dials[_0x1d9c('0x34')](_0x1b5785);}catch(_0x294910){utils[_0x1d9c('0x12')](_0x1d9c('0x33'),_0x294910);}});ami['on'](_0x1d9c('0x35'),function(_0x39739f){try{utils['debug'](_0x1d9c('0x36'),_0x39739f);calls[_0x1d9c('0x35')](_0x39739f);recordings[_0x1d9c('0x35')](_0x39739f);dials[_0x1d9c('0x35')](_0x39739f);}catch(_0x1680ad){utils[_0x1d9c('0x12')]('[index][newexten]',_0x1680ad);}});ami['on'](_0x1d9c('0x37'),function(_0xcd2dc6){try{utils[_0x1d9c('0x16')](_0x1d9c('0x38'),_0xcd2dc6);calls['newchannel'](_0xcd2dc6);recordings[_0x1d9c('0x37')](_0xcd2dc6);}catch(_0x22b446){utils[_0x1d9c('0x12')]('[index][newchannel]',_0x22b446);}});ami['on'](_0x1d9c('0x39'),function(_0xc22016){try{utils['debug'](_0x1d9c('0x3a'),_0xc22016);dials[_0x1d9c('0x39')](_0xc22016);}catch(_0x393fbf){utils[_0x1d9c('0x12')](_0x1d9c('0x39'),_0x393fbf);}});ami['on'](_0x1d9c('0x3b'),function(_0x4db09d){try{utils[_0x1d9c('0x16')](_0x1d9c('0x3c'),_0x4db09d);dials[_0x1d9c('0x3b')](_0x4db09d);}catch(_0x21b9a9){utils[_0x1d9c('0x12')](_0x1d9c('0x3c'),_0x21b9a9);}});}