Built motion from commit (unavailable).|2.5.14
[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 _0xda65=['nextTick','exports','util','net','events','./error','./channel','call','error','createServer','listen','listening','emit','connection','getConnections','E_AGI_SERVER_ERROR','E_AGI_SERVER_VOICE_DISABLED','destroy','E_AGI_SERVER_MAXCONNECTION','ready','close'];(function(_0x4c8a8f,_0x997ef){var _0x404500=function(_0x1c6072){while(--_0x1c6072){_0x4c8a8f['push'](_0x4c8a8f['shift']());}};_0x404500(++_0x997ef);}(_0xda65,0x1d0));var _0x5da6=function(_0x329e27,_0x3c6a84){_0x329e27=_0x329e27-0x0;var _0x1c8f3f=_0xda65[_0x329e27];return _0x1c8f3f;};'use strict';var util=require(_0x5da6('0x0'));var net=require(_0x5da6('0x1'));var EventEmitter=require(_0x5da6('0x2'))['EventEmitter'];var AGIError=require(_0x5da6('0x3'));var AGIChannel=require(_0x5da6('0x4'));var AGIServer=function(_0xd35866,_0x487700,_0x5c80b4){var _0x73d407=this,_0xd35866=_0xd35866||0x11dd,_0x487700=_0x487700||'127.0.0.1',_0x32ff03=null,_0x75126f=0x0;EventEmitter[_0x5da6('0x5')](_0x73d407);function _0x4a7040(){if(!_0xd35866){_0x73d407['emit'](_0x5da6('0x6'),new AGIError('E_AGI_ARGUMENT_PORT'));return![];}_0x32ff03=net[_0x5da6('0x7')]();_0x32ff03[_0x5da6('0x8')](_0xd35866,_0x487700);_0x32ff03['on'](_0x5da6('0x9'),function(){_0x73d407[_0x5da6('0xa')](_0x5da6('0x9'));});_0x32ff03['on'](_0x5da6('0xb'),function(_0x3c7cbc){_0x32ff03[_0x5da6('0xc')](function(_0x4bd1cc,_0x3dc340){if(_0x4bd1cc){_0x73d407[_0x5da6('0xa')](_0x5da6('0x6'),new AGIError(_0x5da6('0xd'),_0x4bd1cc));}else if(_0x5c80b4&&_0x5c80b4<0x0){_0x73d407[_0x5da6('0xa')](_0x5da6('0x6'),new AGIError(_0x5da6('0xe')));_0x3c7cbc[_0x5da6('0xf')]();}else if(_0x5c80b4&&_0x5c80b4>0x0&&_0x5c80b4<_0x3dc340){_0x75126f+=0x1;_0x73d407[_0x5da6('0xa')]('error',new AGIError(_0x5da6('0x10'),_0x75126f));_0x3c7cbc[_0x5da6('0xf')]();}else{var _0xdb1066=new AGIChannel(_0x3c7cbc);_0xdb1066['on'](_0x5da6('0x11'),function(){_0x73d407[_0x5da6('0xa')](_0x5da6('0xb'),_0xdb1066);});}});});_0x32ff03['on'](_0x5da6('0x6'),function(_0x1c28b7){_0x73d407[_0x5da6('0xa')](_0x5da6('0x6'),new AGIError('E_AGI_SERVER_ERROR',_0x1c28b7['code']));});_0x32ff03['on'](_0x5da6('0x12'),function(){_0x73d407[_0x5da6('0xa')](_0x5da6('0x12'),new AGIError('E_AGI_SERVER_CLOSE'));});}process[_0x5da6('0x13')](function(){_0x4a7040();});};util['inherits'](AGIServer,EventEmitter);module[_0x5da6('0x14')]=function(_0x3dc7c4,_0x1cae6,_0x3c93e2){return new AGIServer(_0x3dc7c4,_0x1cae6,_0x3c93e2);};