Built motion from commit (unavailable).|2.5.5
[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 _0x8bdf=['E_AGI_SERVER_CLOSE','inherits','exports','util','net','events','EventEmitter','./error','call','emit','error','createServer','listen','listening','getConnections','E_AGI_SERVER_ERROR','destroy','E_AGI_SERVER_MAXCONNECTION','code','close'];(function(_0x3947c9,_0x4d6c97){var _0x2e7871=function(_0x1236cc){while(--_0x1236cc){_0x3947c9['push'](_0x3947c9['shift']());}};_0x2e7871(++_0x4d6c97);}(_0x8bdf,0x1a7));var _0xf8bd=function(_0x110c3d,_0x12ee06){_0x110c3d=_0x110c3d-0x0;var _0x226d67=_0x8bdf[_0x110c3d];return _0x226d67;};'use strict';var util=require(_0xf8bd('0x0'));var net=require(_0xf8bd('0x1'));var EventEmitter=require(_0xf8bd('0x2'))[_0xf8bd('0x3')];var AGIError=require(_0xf8bd('0x4'));var AGIChannel=require('./channel');var AGIServer=function(_0x35ddcf,_0x1f3989,_0x147fea){var _0x3b32a1=this,_0x35ddcf=_0x35ddcf||0x11dd,_0x1f3989=_0x1f3989||'127.0.0.1',_0x59eff9=null,_0x4ed701=0x0;EventEmitter[_0xf8bd('0x5')](_0x3b32a1);function _0x22a277(){if(!_0x35ddcf){_0x3b32a1[_0xf8bd('0x6')](_0xf8bd('0x7'),new AGIError('E_AGI_ARGUMENT_PORT'));return![];}_0x59eff9=net[_0xf8bd('0x8')]();_0x59eff9[_0xf8bd('0x9')](_0x35ddcf,_0x1f3989);_0x59eff9['on']('listening',function(){_0x3b32a1[_0xf8bd('0x6')](_0xf8bd('0xa'));});_0x59eff9['on']('connection',function(_0xeec88b){_0x59eff9[_0xf8bd('0xb')](function(_0x20a3f7,_0x37e0db){if(_0x20a3f7){_0x3b32a1['emit'](_0xf8bd('0x7'),new AGIError(_0xf8bd('0xc'),_0x20a3f7));}else if(_0x147fea&&_0x147fea<0x0){_0x3b32a1['emit'](_0xf8bd('0x7'),new AGIError('E_AGI_SERVER_VOICE_DISABLED'));_0xeec88b[_0xf8bd('0xd')]();}else if(_0x147fea&&_0x147fea>0x0&&_0x147fea<_0x37e0db){_0x4ed701+=0x1;_0x3b32a1[_0xf8bd('0x6')](_0xf8bd('0x7'),new AGIError(_0xf8bd('0xe'),_0x4ed701));_0xeec88b[_0xf8bd('0xd')]();}else{var _0xa0ee74=new AGIChannel(_0xeec88b);_0xa0ee74['on']('ready',function(){_0x3b32a1['emit']('connection',_0xa0ee74);});}});});_0x59eff9['on'](_0xf8bd('0x7'),function(_0x33facf){_0x3b32a1['emit'](_0xf8bd('0x7'),new AGIError(_0xf8bd('0xc'),_0x33facf[_0xf8bd('0xf')]));});_0x59eff9['on'](_0xf8bd('0x10'),function(){_0x3b32a1['emit'](_0xf8bd('0x10'),new AGIError(_0xf8bd('0x11')));});}process['nextTick'](function(){_0x22a277();});};util[_0xf8bd('0x12')](AGIServer,EventEmitter);module[_0xf8bd('0x13')]=function(_0x2d48fd,_0x207053,_0xf06524){return new AGIServer(_0x2d48fd,_0x207053,_0xf06524);};