Built motion from commit 9d7072cc.|2.5.39
[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 _0x4d2f=['E_AGI_SERVER_ERROR','E_AGI_SERVER_VOICE_DISABLED','E_AGI_SERVER_MAXCONNECTION','ready','close','E_AGI_SERVER_CLOSE','nextTick','inherits','exports','util','net','./error','./channel','call','E_AGI_ARGUMENT_PORT','createServer','listening','emit','connection','error'];(function(_0x167cc1,_0x56ef5a){var _0x10bc4b=function(_0xd6a255){while(--_0xd6a255){_0x167cc1['push'](_0x167cc1['shift']());}};_0x10bc4b(++_0x56ef5a);}(_0x4d2f,0x15d));var _0xf4d2=function(_0x167cc1,_0x56ef5a){_0x167cc1=_0x167cc1-0x0;var _0x10bc4b=_0x4d2f[_0x167cc1];return _0x10bc4b;};'use strict';var util=require(_0xf4d2('0x0'));var net=require(_0xf4d2('0x1'));var EventEmitter=require('events')['EventEmitter'];var AGIError=require(_0xf4d2('0x2'));var AGIChannel=require(_0xf4d2('0x3'));var AGIServer=function(_0x1cb57b,_0x3742b9,_0x16b00c){var _0x1e6825=this,_0x1cb57b=_0x1cb57b||0x11dd,_0x3742b9=_0x3742b9||'127.0.0.1',_0x5e2624=null,_0x7008e8=0x0;EventEmitter[_0xf4d2('0x4')](_0x1e6825);function _0x5145c9(){if(!_0x1cb57b){_0x1e6825['emit']('error',new AGIError(_0xf4d2('0x5')));return![];}_0x5e2624=net[_0xf4d2('0x6')]();_0x5e2624['listen'](_0x1cb57b,_0x3742b9);_0x5e2624['on'](_0xf4d2('0x7'),function(){_0x1e6825[_0xf4d2('0x8')](_0xf4d2('0x7'));});_0x5e2624['on'](_0xf4d2('0x9'),function(_0x5aeb3a){_0x5e2624['getConnections'](function(_0x2779b5,_0x4fbfdd){if(_0x2779b5){_0x1e6825[_0xf4d2('0x8')](_0xf4d2('0xa'),new AGIError(_0xf4d2('0xb'),_0x2779b5));}else if(_0x16b00c&&_0x16b00c<0x0){_0x1e6825['emit'](_0xf4d2('0xa'),new AGIError(_0xf4d2('0xc')));_0x5aeb3a['destroy']();}else if(_0x16b00c&&_0x16b00c>0x0&&_0x16b00c<_0x4fbfdd){_0x7008e8+=0x1;_0x1e6825[_0xf4d2('0x8')]('error',new AGIError(_0xf4d2('0xd'),_0x7008e8));_0x5aeb3a['destroy']();}else{var _0x46fb22=new AGIChannel(_0x5aeb3a);_0x46fb22['on'](_0xf4d2('0xe'),function(){_0x1e6825[_0xf4d2('0x8')](_0xf4d2('0x9'),_0x46fb22);});}});});_0x5e2624['on'](_0xf4d2('0xa'),function(_0x2224f6){_0x1e6825[_0xf4d2('0x8')](_0xf4d2('0xa'),new AGIError(_0xf4d2('0xb'),_0x2224f6['code']));});_0x5e2624['on'](_0xf4d2('0xf'),function(){_0x1e6825[_0xf4d2('0x8')](_0xf4d2('0xf'),new AGIError(_0xf4d2('0x10')));});}process[_0xf4d2('0x11')](function(){_0x5145c9();});};util[_0xf4d2('0x12')](AGIServer,EventEmitter);module[_0xf4d2('0x13')]=function(_0xdf67da,_0x37b95f,_0x1e2e54){return new AGIServer(_0xdf67da,_0x37b95f,_0x1e2e54);};