bd6d084e2cb8d1655f5955158b1273f55893bcd2
[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 _0xbb87=['password','keepConnected','info','XDR\x20DISABLED','Asterisk\x20disabled\x20on\x20localhost','./calls.controller','./queues.controller','./recordings.controller','./members.controller','./dials.controller','./core.controller','connect','shutdown','fullybooted','error','close','managerevent','devicestatechange','debug','[%s][index][devicestatechange]','device','format','agentcalled','[%s][index][agentcalled]','uniqueid','agentringnoanswer','[%s][index][agentringnoanswer]','agentconnect','[%s][index][agentcomplete]','queuecallerabandon','[%s][index][queuecallerabandon]','queuecallerjoin','[%s][index][queuecallerjoin]','queuecallerleave','[%s][index][queuecallerleave]','[%s][index][musiconholdstart]','musiconholdstart','musiconholdstop','[%s][index][musiconholdstop]','newstate','[%s][index][newstate]','[%s][index][hangup]','hangup','cdr','[%s][index][cdr]','blindtransfer','[%s][index][blindtransfer]','attendedtransfer','[%s][index][attendedtransfer]','origtransfereruniqueid','varset','[%s][index][varset]','newexten','[%s][index][newexten]','[%s][index][newchannel]','newchannel','dialbegin','[%s][index][dialbegin]','[%s][index][dialend]','dialend','asterisk-manager','util','xdr','disabled','env','production','local','port','asterisk','username'];(function(_0x5fabe,_0x2d74ef){var _0x2fb153=function(_0x58069b){while(--_0x58069b){_0x5fabe['push'](_0x5fabe['shift']());}};_0x2fb153(++_0x2d74ef);}(_0xbb87,0x1e0));var _0x7bb8=function(_0x229a3e,_0x3aa317){_0x229a3e=_0x229a3e-0x0;var _0x33b80b=_0xbb87[_0x229a3e];return _0x33b80b;};var AsteriskManager=require(_0x7bb8('0x0'));var config=require('../../config/environment');var utils=require('./utils');var util=require(_0x7bb8('0x1'));var isXDREnabled=config[_0x7bb8('0x2')]&&config[_0x7bb8('0x2')][_0x7bb8('0x3')]?!config['xdr'][_0x7bb8('0x3')]:!![];var isProduction=config[_0x7bb8('0x4')]===_0x7bb8('0x5')||![];var isLocalAsterisk=config[_0x7bb8('0x2')]&&config[_0x7bb8('0x2')][_0x7bb8('0x6')]===!![]||![];var ami=new AsteriskManager(config['asterisk'][_0x7bb8('0x7')],config[_0x7bb8('0x8')]['ip'],config[_0x7bb8('0x8')][_0x7bb8('0x9')],config[_0x7bb8('0x8')][_0x7bb8('0xa')],!![]);ami[_0x7bb8('0xb')]();if(!isXDREnabled){utils[_0x7bb8('0xc')](_0x7bb8('0xd'));}else if(!isProduction&&!isLocalAsterisk){utils[_0x7bb8('0xc')](_0x7bb8('0xe'));}else{var agents=require('./agents.controller');var calls=require(_0x7bb8('0xf'));var queues=require(_0x7bb8('0x10'));var recordings=require(_0x7bb8('0x11'));var members=require(_0x7bb8('0x12'));var dials=require(_0x7bb8('0x13'));var transfers=require('./transfers.controller');var core=require(_0x7bb8('0x14'));ami['on'](_0x7bb8('0x15'),core['connect']);ami['on'](_0x7bb8('0x16'),core[_0x7bb8('0x16')]);ami['on'](_0x7bb8('0x17'),core[_0x7bb8('0x17')]);ami['on']('error',core[_0x7bb8('0x18')]);ami['on'](_0x7bb8('0x19'),core[_0x7bb8('0x19')]);ami['on'](_0x7bb8('0x1a'),core[_0x7bb8('0x1a')]);ami['on'](_0x7bb8('0x1b'),function(_0x405425){try{utils[_0x7bb8('0x1c')](util['format'](_0x7bb8('0x1d'),_0x405425[_0x7bb8('0x1e')]),_0x405425);members['devicestatechange'](_0x405425);}catch(_0x26d81d){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')]('[%s][index][devicestatechange]',_0x405425[_0x7bb8('0x1e')]),_0x26d81d);}});ami['on'](_0x7bb8('0x20'),function(_0x1594bc){try{utils[_0x7bb8('0x1c')](util['format'](_0x7bb8('0x21'),_0x1594bc['uniqueid']),_0x1594bc);agents['agentcalled'](_0x1594bc);}catch(_0x279e19){utils[_0x7bb8('0x18')](util['format'](_0x7bb8('0x21'),_0x1594bc[_0x7bb8('0x22')]),_0x279e19);}});ami['on'](_0x7bb8('0x23'),function(_0x22787b){try{utils['debug'](util['format'](_0x7bb8('0x24'),_0x22787b[_0x7bb8('0x22')]),_0x22787b);agents[_0x7bb8('0x23')](_0x22787b);}catch(_0x1bb040){utils['error'](util[_0x7bb8('0x1f')](_0x7bb8('0x24'),_0x22787b[_0x7bb8('0x22')]),_0x1bb040);}});ami['on'](_0x7bb8('0x25'),function(_0x5b0584){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')]('[%s][index][agentconnect]',_0x5b0584[_0x7bb8('0x22')]),_0x5b0584);agents['agentconnect'](_0x5b0584);queues[_0x7bb8('0x25')](_0x5b0584);}catch(_0x344ff6){utils['error'](util[_0x7bb8('0x1f')]('[%s][index][agentconnect]',_0x5b0584['uniqueid']),_0x344ff6);}});ami['on']('agentcomplete',function(_0x5df410){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x26'),_0x5df410[_0x7bb8('0x22')]),_0x5df410);agents['agentcomplete'](_0x5df410);queues['agentcomplete'](_0x5df410);members['agentcomplete'](_0x5df410);}catch(_0x4b7f6b){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x26'),_0x5df410[_0x7bb8('0x22')]),_0x4b7f6b);}});ami['on'](_0x7bb8('0x27'),function(_0x196be9){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x28'),_0x196be9['uniqueid']),_0x196be9);agents[_0x7bb8('0x27')](_0x196be9);queues[_0x7bb8('0x27')](_0x196be9);}catch(_0x3e5bad){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x28'),_0x196be9[_0x7bb8('0x22')]),_0x3e5bad);}});ami['on'](_0x7bb8('0x29'),function(_0x12be46){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')]('[%s][index][queuecallerjoin]',_0x12be46[_0x7bb8('0x22')]),_0x12be46);queues[_0x7bb8('0x29')](_0x12be46);recordings[_0x7bb8('0x29')](_0x12be46);}catch(_0x295819){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x2a'),_0x12be46['uniqueid']),_0x295819);}});ami['on'](_0x7bb8('0x2b'),function(_0x45c195){try{utils['debug'](util['format'](_0x7bb8('0x2c'),_0x45c195[_0x7bb8('0x22')]),_0x45c195);queues[_0x7bb8('0x2b')](_0x45c195);}catch(_0xdde8e4){utils['error'](util[_0x7bb8('0x1f')](_0x7bb8('0x2c'),_0x45c195[_0x7bb8('0x22')]),_0xdde8e4);}});ami['on']('musiconholdstart',function(_0x50d40c){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x2d'),_0x50d40c[_0x7bb8('0x22')]),_0x50d40c);queues[_0x7bb8('0x2e')](_0x50d40c);calls[_0x7bb8('0x2e')](_0x50d40c);}catch(_0x146b1c){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x2d'),_0x50d40c[_0x7bb8('0x22')]),_0x146b1c);}});ami['on'](_0x7bb8('0x2f'),function(_0x2b94fa){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x30'),_0x2b94fa[_0x7bb8('0x22')]),_0x2b94fa);queues[_0x7bb8('0x2f')](_0x2b94fa);calls[_0x7bb8('0x2f')](_0x2b94fa);}catch(_0x358987){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x30'),_0x2b94fa[_0x7bb8('0x22')]),_0x358987);}});ami['on'](_0x7bb8('0x31'),function(_0x220710){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')]('[%s][index][newstate]',_0x220710[_0x7bb8('0x22')]),_0x220710);calls['newstate'](_0x220710);recordings['newstate'](_0x220710);}catch(_0x584d22){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x32'),_0x220710[_0x7bb8('0x22')]),_0x584d22);}});ami['on']('hangup',function(_0x4aabe8){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x33'),_0x4aabe8[_0x7bb8('0x22')]),_0x4aabe8);calls[_0x7bb8('0x34')](_0x4aabe8);recordings[_0x7bb8('0x34')](_0x4aabe8);dials[_0x7bb8('0x34')](_0x4aabe8);agents[_0x7bb8('0x34')](_0x4aabe8);queues['hangup'](_0x4aabe8);}catch(_0x8659cb){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x33'),_0x4aabe8[_0x7bb8('0x22')]),_0x8659cb);}});ami['on'](_0x7bb8('0x35'),function(_0x2a49fd){try{utils['debug'](util[_0x7bb8('0x1f')](_0x7bb8('0x36'),_0x2a49fd[_0x7bb8('0x22')]),_0x2a49fd);members[_0x7bb8('0x35')](_0x2a49fd);}catch(_0x28280c){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x36'),_0x2a49fd[_0x7bb8('0x22')]),_0x28280c);}});ami['on'](_0x7bb8('0x37'),function(_0x10750a){try{utils[_0x7bb8('0x1c')](util['format']('[%s][index][blindtransfer]',_0x10750a[_0x7bb8('0x22')]),_0x10750a);queues[_0x7bb8('0x37')](_0x10750a);agents['blindtransfer'](_0x10750a);transfers[_0x7bb8('0x37')](_0x10750a);recordings['blindtransfer'](_0x10750a);}catch(_0x1e0a8f){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x38'),_0x10750a[_0x7bb8('0x22')]),_0x1e0a8f);}});ami['on'](_0x7bb8('0x39'),function(_0x3a209){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x3a'),_0x3a209[_0x7bb8('0x3b')]),_0x3a209);queues[_0x7bb8('0x39')](_0x3a209);transfers[_0x7bb8('0x39')](_0x3a209);agents['attendedtransfer'](_0x3a209);calls[_0x7bb8('0x39')](_0x3a209);}catch(_0x33e233){utils[_0x7bb8('0x18')](util['format'](_0x7bb8('0x3a'),_0x3a209[_0x7bb8('0x3b')]),_0x33e233);}});ami['on'](_0x7bb8('0x3c'),function(_0x774176){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x3d'),_0x774176[_0x7bb8('0x22')]),_0x774176);queues[_0x7bb8('0x3c')](_0x774176);recordings[_0x7bb8('0x3c')](_0x774176);calls['varset'](_0x774176);dials['varset'](_0x774176);}catch(_0x25dda8){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x3d'),_0x774176[_0x7bb8('0x22')]),_0x25dda8);}});ami['on'](_0x7bb8('0x3e'),function(_0x273fe8){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x3f'),_0x273fe8[_0x7bb8('0x22')]),_0x273fe8);calls[_0x7bb8('0x3e')](_0x273fe8);recordings[_0x7bb8('0x3e')](_0x273fe8);dials[_0x7bb8('0x3e')](_0x273fe8);}catch(_0x1f32e1){utils[_0x7bb8('0x18')](util['format']('[%s][index][newexten]',_0x273fe8['uniqueid']),_0x1f32e1);}});ami['on']('newchannel',function(_0x49aeaa){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x40'),_0x49aeaa['uniqueid']),_0x49aeaa);calls[_0x7bb8('0x41')](_0x49aeaa);recordings['newchannel'](_0x49aeaa);}catch(_0x72899f){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x40'),_0x49aeaa[_0x7bb8('0x22')]),_0x72899f);}});ami['on'](_0x7bb8('0x42'),function(_0x263d0d){try{utils[_0x7bb8('0x1c')](util[_0x7bb8('0x1f')](_0x7bb8('0x43'),_0x263d0d['uniqueid']),_0x263d0d);dials[_0x7bb8('0x42')](_0x263d0d);}catch(_0x227521){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')]('[%s]dialbegin',_0x263d0d[_0x7bb8('0x22')]),_0x227521);}});ami['on']('dialend',function(_0x21121e){try{utils['debug'](util['format'](_0x7bb8('0x44'),_0x21121e[_0x7bb8('0x22')]),_0x21121e);dials[_0x7bb8('0x45')](_0x21121e);}catch(_0x3c2d2b){utils[_0x7bb8('0x18')](util[_0x7bb8('0x1f')](_0x7bb8('0x44'),_0x21121e[_0x7bb8('0x22')]),_0x3c2d2b);}});}