Built motion from commit (unavailable).|2.4.18
[motion2.git] / server / services / agi / server.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 _0x87df=['E_AGI_SERVER_ERROR','E_AGI_SERVER_VOICE_DISABLED','destroy','close','nextTick','inherits','exports','util','net','events','EventEmitter','./error','./channel','call','emit','error','E_AGI_ARGUMENT_PORT','createServer','listen','listening','connection','getConnections'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0x87df,0x167));var _0xf87d=function(_0x2ace95,_0x186b37){_0x2ace95=_0x2ace95-0x0;var _0x35ecfa=_0x87df[_0x2ace95];return _0x35ecfa;};'use strict';var util=require(_0xf87d('0x0'));var net=require(_0xf87d('0x1'));var EventEmitter=require(_0xf87d('0x2'))[_0xf87d('0x3')];var AGIError=require(_0xf87d('0x4'));var AGIChannel=require(_0xf87d('0x5'));var AGIServer=function(_0x541a39,_0xb0fb5a,_0x25290a){var _0x1d4ff6=this,_0x541a39=_0x541a39||0x11dd,_0xb0fb5a=_0xb0fb5a||'127.0.0.1',_0x38045e=null,_0x40a15b=0x0;EventEmitter[_0xf87d('0x6')](_0x1d4ff6);function _0x3870f8(){if(!_0x541a39){_0x1d4ff6[_0xf87d('0x7')](_0xf87d('0x8'),new AGIError(_0xf87d('0x9')));return![];}_0x38045e=net[_0xf87d('0xa')]();_0x38045e[_0xf87d('0xb')](_0x541a39,_0xb0fb5a);_0x38045e['on'](_0xf87d('0xc'),function(){_0x1d4ff6[_0xf87d('0x7')](_0xf87d('0xc'));});_0x38045e['on'](_0xf87d('0xd'),function(_0x390e6a){_0x38045e[_0xf87d('0xe')](function(_0x12d013,_0x23a1fe){if(_0x12d013){_0x1d4ff6['emit'](_0xf87d('0x8'),new AGIError(_0xf87d('0xf'),_0x12d013));}else if(_0x25290a&&_0x25290a<0x0){_0x1d4ff6[_0xf87d('0x7')]('error',new AGIError(_0xf87d('0x10')));_0x390e6a[_0xf87d('0x11')]();}else if(_0x25290a&&_0x25290a>0x0&&_0x25290a<_0x23a1fe){_0x40a15b+=0x1;_0x1d4ff6[_0xf87d('0x7')](_0xf87d('0x8'),new AGIError('E_AGI_SERVER_MAXCONNECTION',_0x40a15b));_0x390e6a[_0xf87d('0x11')]();}else{var _0x2487f0=new AGIChannel(_0x390e6a);_0x2487f0['on']('ready',function(){_0x1d4ff6[_0xf87d('0x7')](_0xf87d('0xd'),_0x2487f0);});}});});_0x38045e['on'](_0xf87d('0x8'),function(_0x368872){_0x1d4ff6[_0xf87d('0x7')](_0xf87d('0x8'),new AGIError(_0xf87d('0xf'),_0x368872['code']));});_0x38045e['on'](_0xf87d('0x12'),function(){_0x1d4ff6[_0xf87d('0x7')](_0xf87d('0x12'),new AGIError('E_AGI_SERVER_CLOSE'));});}process[_0xf87d('0x13')](function(){_0x3870f8();});};util[_0xf87d('0x14')](AGIServer,EventEmitter);module[_0xf87d('0x15')]=function(_0x394d44,_0x26cd28,_0x350bee){return new AGIServer(_0x394d44,_0x26cd28,_0x350bee);};