Built motion from commit 14588770.|2.5.38
[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 _0x5279=['[%s][index][queuecallerabandon]','queuecallerjoin','[%s][index][queuecallerjoin]','queuecallerleave','[%s][index][queuecallerleave]','musiconholdstart','[%s][index][musiconholdstart]','musiconholdstop','[%s][index][musiconholdstop]','newstate','hangup','[%s][index][hangup]','[%s][index][cdr]','cdr','blindtransfer','[%s][index][blindtransfer]','attendedtransfer','[%s][index][attendedtransfer]','origtransfereruniqueid','varset','[%s][index][varset]','[%s][index][newexten]','newexten','newchannel','[%s][index][newchannel]','dialbegin','[%s][index][dialbegin]','[%s]dialbegin','[%s][index][dialend]','dialend','asterisk-manager','../../config/environment','./utils','util','asterisk','port','username','xdr','disabled','info','XDR\x20DISABLED','./calls.controller','./recordings.controller','./members.controller','./dials.controller','./transfers.controller','connect','shutdown','fullybooted','error','close','managerevent','devicestatechange','debug','format','[%s][index][devicestatechange]','device','agentcalled','[%s][index][agentcalled]','uniqueid','[%s][index][agentringnoanswer]','agentringnoanswer','agentconnect','[%s][index][agentconnect]','agentcomplete','[%s][index][agentcomplete]','queuecallerabandon'];(function(_0x1deab1,_0x3ca2f0){var _0x30822d=function(_0x54b01b){while(--_0x54b01b){_0x1deab1['push'](_0x1deab1['shift']());}};_0x30822d(++_0x3ca2f0);}(_0x5279,0x12a));var _0x9527=function(_0x3635ce,_0x33a6f9){_0x3635ce=_0x3635ce-0x0;var _0x97ecd0=_0x5279[_0x3635ce];return _0x97ecd0;};var AsteriskManager=require(_0x9527('0x0'));var config=require(_0x9527('0x1'));var utils=require(_0x9527('0x2'));var util=require(_0x9527('0x3'));var ami=new AsteriskManager(config[_0x9527('0x4')][_0x9527('0x5')],config['asterisk']['ip'],config[_0x9527('0x4')][_0x9527('0x6')],config[_0x9527('0x4')]['password'],!![]);ami['keepConnected']();if(config[_0x9527('0x7')]&&config['xdr'][_0x9527('0x8')]){utils[_0x9527('0x9')](_0x9527('0xa'));}else{var agents=require('./agents.controller');var calls=require(_0x9527('0xb'));var queues=require('./queues.controller');var recordings=require(_0x9527('0xc'));var members=require(_0x9527('0xd'));var dials=require(_0x9527('0xe'));var transfers=require(_0x9527('0xf'));var core=require('./core.controller');ami['on'](_0x9527('0x10'),core['connect']);ami['on'](_0x9527('0x11'),core[_0x9527('0x11')]);ami['on'](_0x9527('0x12'),core['fullybooted']);ami['on'](_0x9527('0x13'),core['error']);ami['on'](_0x9527('0x14'),core[_0x9527('0x14')]);ami['on'](_0x9527('0x15'),core[_0x9527('0x15')]);ami['on'](_0x9527('0x16'),function(_0x44b03b){try{utils[_0x9527('0x17')](util[_0x9527('0x18')](_0x9527('0x19'),_0x44b03b['device']),_0x44b03b);members[_0x9527('0x16')](_0x44b03b);}catch(_0x4a1049){utils[_0x9527('0x13')](util['format']('[%s][index][devicestatechange]',_0x44b03b[_0x9527('0x1a')]),_0x4a1049);}});ami['on'](_0x9527('0x1b'),function(_0x49240a){try{utils[_0x9527('0x17')](util[_0x9527('0x18')](_0x9527('0x1c'),_0x49240a['uniqueid']),_0x49240a);agents['agentcalled'](_0x49240a);}catch(_0x17e8e1){utils[_0x9527('0x13')](util['format'](_0x9527('0x1c'),_0x49240a[_0x9527('0x1d')]),_0x17e8e1);}});ami['on']('agentringnoanswer',function(_0x59a59){try{utils['debug'](util['format'](_0x9527('0x1e'),_0x59a59['uniqueid']),_0x59a59);agents[_0x9527('0x1f')](_0x59a59);}catch(_0x107e1b){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x1e'),_0x59a59['uniqueid']),_0x107e1b);}});ami['on'](_0x9527('0x20'),function(_0x1a2eed){try{utils[_0x9527('0x17')](util[_0x9527('0x18')]('[%s][index][agentconnect]',_0x1a2eed[_0x9527('0x1d')]),_0x1a2eed);agents[_0x9527('0x20')](_0x1a2eed);queues[_0x9527('0x20')](_0x1a2eed);}catch(_0x3c577a){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x21'),_0x1a2eed['uniqueid']),_0x3c577a);}});ami['on'](_0x9527('0x22'),function(_0x378317){try{utils[_0x9527('0x17')](util['format']('[%s][index][agentcomplete]',_0x378317[_0x9527('0x1d')]),_0x378317);agents[_0x9527('0x22')](_0x378317);queues[_0x9527('0x22')](_0x378317);members[_0x9527('0x22')](_0x378317);}catch(_0x307e0c){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x23'),_0x378317[_0x9527('0x1d')]),_0x307e0c);}});ami['on'](_0x9527('0x24'),function(_0x18a306){try{utils[_0x9527('0x17')](util[_0x9527('0x18')](_0x9527('0x25'),_0x18a306[_0x9527('0x1d')]),_0x18a306);agents['queuecallerabandon'](_0x18a306);queues[_0x9527('0x24')](_0x18a306);}catch(_0x599331){utils[_0x9527('0x13')](util[_0x9527('0x18')]('[%s][index][queuecallerabandon]',_0x18a306[_0x9527('0x1d')]),_0x599331);}});ami['on'](_0x9527('0x26'),function(_0x324f82){try{utils[_0x9527('0x17')](util[_0x9527('0x18')](_0x9527('0x27'),_0x324f82['uniqueid']),_0x324f82);queues[_0x9527('0x26')](_0x324f82);recordings[_0x9527('0x26')](_0x324f82);}catch(_0x2dece7){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x27'),_0x324f82[_0x9527('0x1d')]),_0x2dece7);}});ami['on'](_0x9527('0x28'),function(_0x3573e9){try{utils[_0x9527('0x17')](util[_0x9527('0x18')](_0x9527('0x29'),_0x3573e9[_0x9527('0x1d')]),_0x3573e9);queues[_0x9527('0x28')](_0x3573e9);}catch(_0x4fbdc3){utils['error'](util[_0x9527('0x18')](_0x9527('0x29'),_0x3573e9[_0x9527('0x1d')]),_0x4fbdc3);}});ami['on'](_0x9527('0x2a'),function(_0x59c897){try{utils[_0x9527('0x17')](util[_0x9527('0x18')](_0x9527('0x2b'),_0x59c897[_0x9527('0x1d')]),_0x59c897);queues[_0x9527('0x2a')](_0x59c897);calls[_0x9527('0x2a')](_0x59c897);}catch(_0x5adb07){utils['error'](util[_0x9527('0x18')](_0x9527('0x2b'),_0x59c897[_0x9527('0x1d')]),_0x5adb07);}});ami['on'](_0x9527('0x2c'),function(_0x2c86e5){try{utils['debug'](util[_0x9527('0x18')](_0x9527('0x2d'),_0x2c86e5[_0x9527('0x1d')]),_0x2c86e5);queues['musiconholdstop'](_0x2c86e5);calls[_0x9527('0x2c')](_0x2c86e5);}catch(_0x2f5d8f){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x2d'),_0x2c86e5[_0x9527('0x1d')]),_0x2f5d8f);}});ami['on']('newstate',function(_0x549e92){try{utils[_0x9527('0x17')](util[_0x9527('0x18')]('[%s][index][newstate]',_0x549e92[_0x9527('0x1d')]),_0x549e92);calls['newstate'](_0x549e92);recordings[_0x9527('0x2e')](_0x549e92);}catch(_0x4f3ee2){utils[_0x9527('0x13')](util['format']('[%s][index][newstate]',_0x549e92[_0x9527('0x1d')]),_0x4f3ee2);}});ami['on'](_0x9527('0x2f'),function(_0x480fdf){try{utils[_0x9527('0x17')](util['format'](_0x9527('0x30'),_0x480fdf['uniqueid']),_0x480fdf);calls[_0x9527('0x2f')](_0x480fdf);recordings['hangup'](_0x480fdf);dials[_0x9527('0x2f')](_0x480fdf);agents[_0x9527('0x2f')](_0x480fdf);queues[_0x9527('0x2f')](_0x480fdf);}catch(_0x14d3dc){utils[_0x9527('0x13')](util['format']('[%s][index][hangup]',_0x480fdf['uniqueid']),_0x14d3dc);}});ami['on']('cdr',function(_0x4d52b4){try{utils[_0x9527('0x17')](util['format'](_0x9527('0x31'),_0x4d52b4[_0x9527('0x1d')]),_0x4d52b4);members[_0x9527('0x32')](_0x4d52b4);}catch(_0x534798){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x31'),_0x4d52b4[_0x9527('0x1d')]),_0x534798);}});ami['on'](_0x9527('0x33'),function(_0x2bde18){try{utils[_0x9527('0x17')](util[_0x9527('0x18')]('[%s][index][blindtransfer]',_0x2bde18[_0x9527('0x1d')]),_0x2bde18);queues['blindtransfer'](_0x2bde18);agents['blindtransfer'](_0x2bde18);transfers[_0x9527('0x33')](_0x2bde18);recordings['blindtransfer'](_0x2bde18);}catch(_0x25ebb){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x34'),_0x2bde18[_0x9527('0x1d')]),_0x25ebb);}});ami['on'](_0x9527('0x35'),function(_0x79d572){try{utils[_0x9527('0x17')](util[_0x9527('0x18')](_0x9527('0x36'),_0x79d572[_0x9527('0x37')]),_0x79d572);queues[_0x9527('0x35')](_0x79d572);transfers[_0x9527('0x35')](_0x79d572);agents[_0x9527('0x35')](_0x79d572);calls['attendedtransfer'](_0x79d572);}catch(_0x56aba1){utils['error'](util[_0x9527('0x18')](_0x9527('0x36'),_0x79d572['origtransfereruniqueid']),_0x56aba1);}});ami['on'](_0x9527('0x38'),function(_0x21752e){try{utils[_0x9527('0x17')](util['format'](_0x9527('0x39'),_0x21752e['uniqueid']),_0x21752e);queues[_0x9527('0x38')](_0x21752e);recordings[_0x9527('0x38')](_0x21752e);calls['varset'](_0x21752e);dials[_0x9527('0x38')](_0x21752e);}catch(_0x48bfde){utils['error'](util[_0x9527('0x18')](_0x9527('0x39'),_0x21752e[_0x9527('0x1d')]),_0x48bfde);}});ami['on']('newexten',function(_0x1a93bb){try{utils['debug'](util[_0x9527('0x18')](_0x9527('0x3a'),_0x1a93bb[_0x9527('0x1d')]),_0x1a93bb);calls['newexten'](_0x1a93bb);recordings[_0x9527('0x3b')](_0x1a93bb);dials[_0x9527('0x3b')](_0x1a93bb);}catch(_0x11f24f){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x3a'),_0x1a93bb['uniqueid']),_0x11f24f);}});ami['on'](_0x9527('0x3c'),function(_0x4a2f86){try{utils[_0x9527('0x17')](util[_0x9527('0x18')](_0x9527('0x3d'),_0x4a2f86[_0x9527('0x1d')]),_0x4a2f86);calls['newchannel'](_0x4a2f86);recordings['newchannel'](_0x4a2f86);}catch(_0xc0cd7f){utils['error'](util['format'](_0x9527('0x3d'),_0x4a2f86[_0x9527('0x1d')]),_0xc0cd7f);}});ami['on'](_0x9527('0x3e'),function(_0xebcfed){try{utils['debug'](util[_0x9527('0x18')](_0x9527('0x3f'),_0xebcfed['uniqueid']),_0xebcfed);dials['dialbegin'](_0xebcfed);}catch(_0x4b8bc7){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x40'),_0xebcfed['uniqueid']),_0x4b8bc7);}});ami['on']('dialend',function(_0x36ec5c){try{utils[_0x9527('0x17')](util[_0x9527('0x18')](_0x9527('0x41'),_0x36ec5c[_0x9527('0x1d')]),_0x36ec5c);dials[_0x9527('0x42')](_0x36ec5c);}catch(_0x361572){utils[_0x9527('0x13')](util[_0x9527('0x18')](_0x9527('0x41'),_0x36ec5c['uniqueid']),_0x361572);}});}