Built motion from commit (unavailable).|2.5.21
[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 _0x89e8=['exports','util','net','events','EventEmitter','./error','./channel','call','emit','error','E_AGI_ARGUMENT_PORT','listen','listening','getConnections','E_AGI_SERVER_ERROR','E_AGI_SERVER_VOICE_DISABLED','destroy','E_AGI_SERVER_MAXCONNECTION','ready','code','close','nextTick','inherits'];(function(_0x51a44f,_0x5720d9){var _0x3ec00a=function(_0x3a10e5){while(--_0x3a10e5){_0x51a44f['push'](_0x51a44f['shift']());}};_0x3ec00a(++_0x5720d9);}(_0x89e8,0x74));var _0x889e=function(_0x397e5f,_0x454c8f){_0x397e5f=_0x397e5f-0x0;var _0x5302b8=_0x89e8[_0x397e5f];return _0x5302b8;};'use strict';var util=require(_0x889e('0x0'));var net=require(_0x889e('0x1'));var EventEmitter=require(_0x889e('0x2'))[_0x889e('0x3')];var AGIError=require(_0x889e('0x4'));var AGIChannel=require(_0x889e('0x5'));var AGIServer=function(_0xfe71bf,_0x935fd,_0x4a8a0a){var _0x58ac1e=this,_0xfe71bf=_0xfe71bf||0x11dd,_0x935fd=_0x935fd||'127.0.0.1',_0x293daf=null,_0x25f9e2=0x0;EventEmitter[_0x889e('0x6')](_0x58ac1e);function _0x54f734(){if(!_0xfe71bf){_0x58ac1e[_0x889e('0x7')](_0x889e('0x8'),new AGIError(_0x889e('0x9')));return![];}_0x293daf=net['createServer']();_0x293daf[_0x889e('0xa')](_0xfe71bf,_0x935fd);_0x293daf['on'](_0x889e('0xb'),function(){_0x58ac1e[_0x889e('0x7')](_0x889e('0xb'));});_0x293daf['on']('connection',function(_0x470089){_0x293daf[_0x889e('0xc')](function(_0x5eca9c,_0x35e2fc){if(_0x5eca9c){_0x58ac1e[_0x889e('0x7')](_0x889e('0x8'),new AGIError(_0x889e('0xd'),_0x5eca9c));}else if(_0x4a8a0a&&_0x4a8a0a<0x0){_0x58ac1e['emit'](_0x889e('0x8'),new AGIError(_0x889e('0xe')));_0x470089[_0x889e('0xf')]();}else if(_0x4a8a0a&&_0x4a8a0a>0x0&&_0x4a8a0a<_0x35e2fc){_0x25f9e2+=0x1;_0x58ac1e['emit'](_0x889e('0x8'),new AGIError(_0x889e('0x10'),_0x25f9e2));_0x470089[_0x889e('0xf')]();}else{var _0xe9a1b9=new AGIChannel(_0x470089);_0xe9a1b9['on'](_0x889e('0x11'),function(){_0x58ac1e['emit']('connection',_0xe9a1b9);});}});});_0x293daf['on'](_0x889e('0x8'),function(_0x15cf93){_0x58ac1e[_0x889e('0x7')](_0x889e('0x8'),new AGIError('E_AGI_SERVER_ERROR',_0x15cf93[_0x889e('0x12')]));});_0x293daf['on'](_0x889e('0x13'),function(){_0x58ac1e['emit'](_0x889e('0x13'),new AGIError('E_AGI_SERVER_CLOSE'));});}process[_0x889e('0x14')](function(){_0x54f734();});};util[_0x889e('0x15')](AGIServer,EventEmitter);module[_0x889e('0x16')]=function(_0x1bd9ef,_0x24c245,_0x4e34ff){return new AGIServer(_0x1bd9ef,_0x24c245,_0x4e34ff);};