Built motion from commit (unavailable).|2.5.11
[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 _0xe41f=['nextTick','inherits','exports','util','net','events','EventEmitter','call','emit','error','E_AGI_ARGUMENT_PORT','createServer','connection','getConnections','destroy','E_AGI_SERVER_MAXCONNECTION','ready','E_AGI_SERVER_ERROR','code','close','E_AGI_SERVER_CLOSE'];(function(_0xbb091,_0x3fe7ee){var _0x467a04=function(_0x3a978d){while(--_0x3a978d){_0xbb091['push'](_0xbb091['shift']());}};_0x467a04(++_0x3fe7ee);}(_0xe41f,0x13e));var _0xfe41=function(_0x286c2e,_0x134425){_0x286c2e=_0x286c2e-0x0;var _0x20a3a0=_0xe41f[_0x286c2e];return _0x20a3a0;};'use strict';var util=require(_0xfe41('0x0'));var net=require(_0xfe41('0x1'));var EventEmitter=require(_0xfe41('0x2'))[_0xfe41('0x3')];var AGIError=require('./error');var AGIChannel=require('./channel');var AGIServer=function(_0x4a2627,_0x196b31,_0x67a2d3){var _0x2f849d=this,_0x4a2627=_0x4a2627||0x11dd,_0x196b31=_0x196b31||'127.0.0.1',_0x52d56e=null,_0x2e8e86=0x0;EventEmitter[_0xfe41('0x4')](_0x2f849d);function _0x224ed7(){if(!_0x4a2627){_0x2f849d[_0xfe41('0x5')](_0xfe41('0x6'),new AGIError(_0xfe41('0x7')));return![];}_0x52d56e=net[_0xfe41('0x8')]();_0x52d56e['listen'](_0x4a2627,_0x196b31);_0x52d56e['on']('listening',function(){_0x2f849d['emit']('listening');});_0x52d56e['on'](_0xfe41('0x9'),function(_0x293f2c){_0x52d56e[_0xfe41('0xa')](function(_0x5186da,_0xa56f1a){if(_0x5186da){_0x2f849d[_0xfe41('0x5')](_0xfe41('0x6'),new AGIError('E_AGI_SERVER_ERROR',_0x5186da));}else if(_0x67a2d3&&_0x67a2d3<0x0){_0x2f849d[_0xfe41('0x5')](_0xfe41('0x6'),new AGIError('E_AGI_SERVER_VOICE_DISABLED'));_0x293f2c[_0xfe41('0xb')]();}else if(_0x67a2d3&&_0x67a2d3>0x0&&_0x67a2d3<_0xa56f1a){_0x2e8e86+=0x1;_0x2f849d[_0xfe41('0x5')](_0xfe41('0x6'),new AGIError(_0xfe41('0xc'),_0x2e8e86));_0x293f2c[_0xfe41('0xb')]();}else{var _0x5dabf1=new AGIChannel(_0x293f2c);_0x5dabf1['on'](_0xfe41('0xd'),function(){_0x2f849d[_0xfe41('0x5')](_0xfe41('0x9'),_0x5dabf1);});}});});_0x52d56e['on']('error',function(_0x597522){_0x2f849d[_0xfe41('0x5')](_0xfe41('0x6'),new AGIError(_0xfe41('0xe'),_0x597522[_0xfe41('0xf')]));});_0x52d56e['on']('close',function(){_0x2f849d[_0xfe41('0x5')](_0xfe41('0x10'),new AGIError(_0xfe41('0x11')));});}process[_0xfe41('0x12')](function(){_0x224ed7();});};util[_0xfe41('0x13')](AGIServer,EventEmitter);module[_0xfe41('0x14')]=function(_0x3d3dc3,_0x22a631,_0xdce570){return new AGIServer(_0x3d3dc3,_0x22a631,_0xdce570);};