Built motion from commit 9e1399f3.|2.5.37
[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 _0xc1ef=['ready','close','E_AGI_SERVER_CLOSE','nextTick','inherits','exports','util','net','./error','./channel','127.0.0.1','emit','listen','listening','connection','error','E_AGI_SERVER_ERROR','E_AGI_SERVER_VOICE_DISABLED','E_AGI_SERVER_MAXCONNECTION'];(function(_0x344a65,_0x1b89c4){var _0x1fc9ce=function(_0x14996e){while(--_0x14996e){_0x344a65['push'](_0x344a65['shift']());}};_0x1fc9ce(++_0x1b89c4);}(_0xc1ef,0x182));var _0xfc1e=function(_0xdade7e,_0x3e99e0){_0xdade7e=_0xdade7e-0x0;var _0x29f5ff=_0xc1ef[_0xdade7e];return _0x29f5ff;};'use strict';var util=require(_0xfc1e('0x0'));var net=require(_0xfc1e('0x1'));var EventEmitter=require('events')['EventEmitter'];var AGIError=require(_0xfc1e('0x2'));var AGIChannel=require(_0xfc1e('0x3'));var AGIServer=function(_0x5406da,_0x325aae,_0x26483f){var _0x5a9650=this,_0x5406da=_0x5406da||0x11dd,_0x325aae=_0x325aae||_0xfc1e('0x4'),_0x16dd65=null,_0xd020ba=0x0;EventEmitter['call'](_0x5a9650);function _0x3095e4(){if(!_0x5406da){_0x5a9650[_0xfc1e('0x5')]('error',new AGIError('E_AGI_ARGUMENT_PORT'));return![];}_0x16dd65=net['createServer']();_0x16dd65[_0xfc1e('0x6')](_0x5406da,_0x325aae);_0x16dd65['on'](_0xfc1e('0x7'),function(){_0x5a9650['emit'](_0xfc1e('0x7'));});_0x16dd65['on'](_0xfc1e('0x8'),function(_0x3f17a1){_0x16dd65['getConnections'](function(_0x3f1054,_0x2e6f39){if(_0x3f1054){_0x5a9650[_0xfc1e('0x5')](_0xfc1e('0x9'),new AGIError(_0xfc1e('0xa'),_0x3f1054));}else if(_0x26483f&&_0x26483f<0x0){_0x5a9650[_0xfc1e('0x5')](_0xfc1e('0x9'),new AGIError(_0xfc1e('0xb')));_0x3f17a1['destroy']();}else if(_0x26483f&&_0x26483f>0x0&&_0x26483f<_0x2e6f39){_0xd020ba+=0x1;_0x5a9650[_0xfc1e('0x5')](_0xfc1e('0x9'),new AGIError(_0xfc1e('0xc'),_0xd020ba));_0x3f17a1['destroy']();}else{var _0x398aef=new AGIChannel(_0x3f17a1);_0x398aef['on'](_0xfc1e('0xd'),function(){_0x5a9650['emit'](_0xfc1e('0x8'),_0x398aef);});}});});_0x16dd65['on'](_0xfc1e('0x9'),function(_0x2533f2){_0x5a9650['emit'](_0xfc1e('0x9'),new AGIError('E_AGI_SERVER_ERROR',_0x2533f2['code']));});_0x16dd65['on'](_0xfc1e('0xe'),function(){_0x5a9650[_0xfc1e('0x5')](_0xfc1e('0xe'),new AGIError(_0xfc1e('0xf')));});}process[_0xfc1e('0x10')](function(){_0x3095e4();});};util[_0xfc1e('0x11')](AGIServer,EventEmitter);module[_0xfc1e('0x12')]=function(_0x50f97f,_0x5978a1,_0x5b168a){return new AGIServer(_0x50f97f,_0x5978a1,_0x5b168a);};