Built motion from commit 598073ad.|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 _0x04e7=['username','password','keepConnected','info','XDR\x20DISABLED','Asterisk\x20disabled\x20on\x20localhost','./agents.controller','./queues.controller','./recordings.controller','./members.controller','./dials.controller','./transfers.controller','./core.controller','connect','shutdown','fullybooted','error','close','managerevent','devicestatechange','debug','[%s][index][devicestatechange]','device','format','agentcalled','[%s][index][agentcalled]','[%s][index][agentringnoanswer]','uniqueid','agentringnoanswer','[%s][index][agentconnect]','agentconnect','agentcomplete','[%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]','hangup','[%s][index][hangup]','[%s][index][cdr]','cdr','[%s][index][blindtransfer]','blindtransfer','attendedtransfer','[%s][index][attendedtransfer]','origtransfereruniqueid','[%s][index][varset]','varset','[%s][index][newexten]','newexten','newchannel','[%s][index][newchannel]','[%s][index][dialbegin]','[%s]dialbegin','dialend','[%s][index][dialend]','asterisk-manager','../../config/environment','./utils','util','xdr','disabled','env','production','local','port','asterisk'];(function(_0x3858db,_0x868e2b){var _0x4103d7=function(_0x3eeb01){while(--_0x3eeb01){_0x3858db['push'](_0x3858db['shift']());}};_0x4103d7(++_0x868e2b);}(_0x04e7,0x121));var _0x704e=function(_0x2074db,_0x10b81b){_0x2074db=_0x2074db-0x0;var _0x27324c=_0x04e7[_0x2074db];return _0x27324c;};var AsteriskManager=require(_0x704e('0x0'));var config=require(_0x704e('0x1'));var utils=require(_0x704e('0x2'));var util=require(_0x704e('0x3'));var isXDREnabled=config[_0x704e('0x4')]&&!config[_0x704e('0x4')][_0x704e('0x5')];var isProduction=config[_0x704e('0x6')]===_0x704e('0x7')||![];var isLocalAsterisk=config[_0x704e('0x4')]&&config[_0x704e('0x4')][_0x704e('0x8')]===!![]||![];var ami=new AsteriskManager(config['asterisk'][_0x704e('0x9')],config[_0x704e('0xa')]['ip'],config[_0x704e('0xa')][_0x704e('0xb')],config[_0x704e('0xa')][_0x704e('0xc')],!![]);ami[_0x704e('0xd')]();if(!isXDREnabled){utils[_0x704e('0xe')](_0x704e('0xf'));}else if(!isProduction&&!isLocalAsterisk){utils[_0x704e('0xe')](_0x704e('0x10'));}else{var agents=require(_0x704e('0x11'));var calls=require('./calls.controller');var queues=require(_0x704e('0x12'));var recordings=require(_0x704e('0x13'));var members=require(_0x704e('0x14'));var dials=require(_0x704e('0x15'));var transfers=require(_0x704e('0x16'));var core=require(_0x704e('0x17'));ami['on'](_0x704e('0x18'),core['connect']);ami['on']('shutdown',core[_0x704e('0x19')]);ami['on'](_0x704e('0x1a'),core[_0x704e('0x1a')]);ami['on'](_0x704e('0x1b'),core[_0x704e('0x1b')]);ami['on'](_0x704e('0x1c'),core[_0x704e('0x1c')]);ami['on'](_0x704e('0x1d'),core['managerevent']);ami['on'](_0x704e('0x1e'),function(_0x93d58a){try{utils[_0x704e('0x1f')](util['format'](_0x704e('0x20'),_0x93d58a[_0x704e('0x21')]),_0x93d58a);members[_0x704e('0x1e')](_0x93d58a);}catch(_0x5d1e9e){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x20'),_0x93d58a[_0x704e('0x21')]),_0x5d1e9e);}});ami['on'](_0x704e('0x23'),function(_0x554c09){try{utils[_0x704e('0x1f')](util['format'](_0x704e('0x24'),_0x554c09['uniqueid']),_0x554c09);agents['agentcalled'](_0x554c09);}catch(_0x5bd786){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x24'),_0x554c09['uniqueid']),_0x5bd786);}});ami['on']('agentringnoanswer',function(_0x2f56b5){try{utils[_0x704e('0x1f')](util[_0x704e('0x22')](_0x704e('0x25'),_0x2f56b5[_0x704e('0x26')]),_0x2f56b5);agents[_0x704e('0x27')](_0x2f56b5);}catch(_0x30a391){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x25'),_0x2f56b5[_0x704e('0x26')]),_0x30a391);}});ami['on']('agentconnect',function(_0x5cae04){try{utils[_0x704e('0x1f')](util[_0x704e('0x22')](_0x704e('0x28'),_0x5cae04[_0x704e('0x26')]),_0x5cae04);agents[_0x704e('0x29')](_0x5cae04);queues[_0x704e('0x29')](_0x5cae04);}catch(_0xa6a751){utils[_0x704e('0x1b')](util['format'](_0x704e('0x28'),_0x5cae04[_0x704e('0x26')]),_0xa6a751);}});ami['on'](_0x704e('0x2a'),function(_0x50d3ab){try{utils[_0x704e('0x1f')](util['format'](_0x704e('0x2b'),_0x50d3ab[_0x704e('0x26')]),_0x50d3ab);agents[_0x704e('0x2a')](_0x50d3ab);queues[_0x704e('0x2a')](_0x50d3ab);members['agentcomplete'](_0x50d3ab);}catch(_0x56573a){utils[_0x704e('0x1b')](util['format']('[%s][index][agentcomplete]',_0x50d3ab[_0x704e('0x26')]),_0x56573a);}});ami['on'](_0x704e('0x2c'),function(_0x31a04b){try{utils[_0x704e('0x1f')](util[_0x704e('0x22')]('[%s][index][queuecallerabandon]',_0x31a04b['uniqueid']),_0x31a04b);agents[_0x704e('0x2c')](_0x31a04b);queues['queuecallerabandon'](_0x31a04b);}catch(_0x4b3a42){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x2d'),_0x31a04b[_0x704e('0x26')]),_0x4b3a42);}});ami['on'](_0x704e('0x2e'),function(_0xc8260e){try{utils[_0x704e('0x1f')](util['format'](_0x704e('0x2f'),_0xc8260e['uniqueid']),_0xc8260e);queues[_0x704e('0x2e')](_0xc8260e);recordings['queuecallerjoin'](_0xc8260e);}catch(_0x18823d){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x2f'),_0xc8260e[_0x704e('0x26')]),_0x18823d);}});ami['on'](_0x704e('0x30'),function(_0x307275){try{utils[_0x704e('0x1f')](util[_0x704e('0x22')]('[%s][index][queuecallerleave]',_0x307275[_0x704e('0x26')]),_0x307275);queues['queuecallerleave'](_0x307275);}catch(_0x35a677){utils['error'](util['format'](_0x704e('0x31'),_0x307275[_0x704e('0x26')]),_0x35a677);}});ami['on']('musiconholdstart',function(_0x1dee62){try{utils['debug'](util[_0x704e('0x22')](_0x704e('0x32'),_0x1dee62[_0x704e('0x26')]),_0x1dee62);queues['musiconholdstart'](_0x1dee62);calls[_0x704e('0x33')](_0x1dee62);}catch(_0x43cb85){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x32'),_0x1dee62[_0x704e('0x26')]),_0x43cb85);}});ami['on'](_0x704e('0x34'),function(_0x2b68d5){try{utils[_0x704e('0x1f')](util['format']('[%s][index][musiconholdstop]',_0x2b68d5[_0x704e('0x26')]),_0x2b68d5);queues[_0x704e('0x34')](_0x2b68d5);calls[_0x704e('0x34')](_0x2b68d5);}catch(_0x4be584){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x35'),_0x2b68d5[_0x704e('0x26')]),_0x4be584);}});ami['on'](_0x704e('0x36'),function(_0x18b3dc){try{utils[_0x704e('0x1f')](util[_0x704e('0x22')]('[%s][index][newstate]',_0x18b3dc[_0x704e('0x26')]),_0x18b3dc);calls[_0x704e('0x36')](_0x18b3dc);recordings[_0x704e('0x36')](_0x18b3dc);}catch(_0x52f640){utils['error'](util[_0x704e('0x22')](_0x704e('0x37'),_0x18b3dc[_0x704e('0x26')]),_0x52f640);}});ami['on'](_0x704e('0x38'),function(_0x3f3890){try{utils['debug'](util[_0x704e('0x22')]('[%s][index][hangup]',_0x3f3890['uniqueid']),_0x3f3890);calls['hangup'](_0x3f3890);recordings[_0x704e('0x38')](_0x3f3890);dials[_0x704e('0x38')](_0x3f3890);agents['hangup'](_0x3f3890);queues[_0x704e('0x38')](_0x3f3890);}catch(_0xf2bfdb){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x39'),_0x3f3890[_0x704e('0x26')]),_0xf2bfdb);}});ami['on']('cdr',function(_0x41169e){try{utils[_0x704e('0x1f')](util[_0x704e('0x22')](_0x704e('0x3a'),_0x41169e[_0x704e('0x26')]),_0x41169e);members[_0x704e('0x3b')](_0x41169e);}catch(_0x3e1a75){utils[_0x704e('0x1b')](util['format'](_0x704e('0x3a'),_0x41169e[_0x704e('0x26')]),_0x3e1a75);}});ami['on']('blindtransfer',function(_0x19cc97){try{utils[_0x704e('0x1f')](util[_0x704e('0x22')](_0x704e('0x3c'),_0x19cc97[_0x704e('0x26')]),_0x19cc97);queues[_0x704e('0x3d')](_0x19cc97);agents[_0x704e('0x3d')](_0x19cc97);transfers[_0x704e('0x3d')](_0x19cc97);recordings['blindtransfer'](_0x19cc97);}catch(_0x54560d){utils[_0x704e('0x1b')](util[_0x704e('0x22')]('[%s][index][blindtransfer]',_0x19cc97['uniqueid']),_0x54560d);}});ami['on'](_0x704e('0x3e'),function(_0x3c05b9){try{utils[_0x704e('0x1f')](util[_0x704e('0x22')](_0x704e('0x3f'),_0x3c05b9[_0x704e('0x40')]),_0x3c05b9);queues['attendedtransfer'](_0x3c05b9);transfers[_0x704e('0x3e')](_0x3c05b9);agents[_0x704e('0x3e')](_0x3c05b9);calls['attendedtransfer'](_0x3c05b9);}catch(_0x9098f2){utils['error'](util['format'](_0x704e('0x3f'),_0x3c05b9[_0x704e('0x40')]),_0x9098f2);}});ami['on']('varset',function(_0x1ba5ec){try{utils[_0x704e('0x1f')](util['format'](_0x704e('0x41'),_0x1ba5ec[_0x704e('0x26')]),_0x1ba5ec);queues[_0x704e('0x42')](_0x1ba5ec);recordings[_0x704e('0x42')](_0x1ba5ec);calls[_0x704e('0x42')](_0x1ba5ec);dials[_0x704e('0x42')](_0x1ba5ec);}catch(_0x5bd80d){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x41'),_0x1ba5ec[_0x704e('0x26')]),_0x5bd80d);}});ami['on']('newexten',function(_0x26660d){try{utils[_0x704e('0x1f')](util['format'](_0x704e('0x43'),_0x26660d[_0x704e('0x26')]),_0x26660d);calls[_0x704e('0x44')](_0x26660d);recordings[_0x704e('0x44')](_0x26660d);dials['newexten'](_0x26660d);}catch(_0x4b4a5a){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x43'),_0x26660d['uniqueid']),_0x4b4a5a);}});ami['on']('newchannel',function(_0x1f41b5){try{utils['debug'](util[_0x704e('0x22')]('[%s][index][newchannel]',_0x1f41b5[_0x704e('0x26')]),_0x1f41b5);calls['newchannel'](_0x1f41b5);recordings[_0x704e('0x45')](_0x1f41b5);}catch(_0x409706){utils[_0x704e('0x1b')](util['format'](_0x704e('0x46'),_0x1f41b5['uniqueid']),_0x409706);}});ami['on']('dialbegin',function(_0x37f8b7){try{utils['debug'](util[_0x704e('0x22')](_0x704e('0x47'),_0x37f8b7['uniqueid']),_0x37f8b7);dials['dialbegin'](_0x37f8b7);}catch(_0x13b79f){utils[_0x704e('0x1b')](util[_0x704e('0x22')](_0x704e('0x48'),_0x37f8b7[_0x704e('0x26')]),_0x13b79f);}});ami['on'](_0x704e('0x49'),function(_0x3412ea){try{utils[_0x704e('0x1f')](util[_0x704e('0x22')]('[%s][index][dialend]',_0x3412ea[_0x704e('0x26')]),_0x3412ea);dials['dialend'](_0x3412ea);}catch(_0x1f9a5e){utils['error'](util['format'](_0x704e('0x4a'),_0x3412ea['uniqueid']),_0x1f9a5e);}});}