Built motion from commit (unavailable).|2.5.31
[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 _0xb2b3=['call','emit','error','E_AGI_ARGUMENT_PORT','listen','listening','connection','E_AGI_SERVER_ERROR','E_AGI_SERVER_VOICE_DISABLED','destroy','E_AGI_SERVER_MAXCONNECTION','ready','code','close','E_AGI_SERVER_CLOSE','inherits','exports','util','net','events','EventEmitter','./error','./channel','127.0.0.1'];(function(_0x309c88,_0x3201fa){var _0x18b55b=function(_0x265d42){while(--_0x265d42){_0x309c88['push'](_0x309c88['shift']());}};_0x18b55b(++_0x3201fa);}(_0xb2b3,0x71));var _0x3b2b=function(_0x52c0a3,_0x321ccf){_0x52c0a3=_0x52c0a3-0x0;var _0x4d5033=_0xb2b3[_0x52c0a3];return _0x4d5033;};'use strict';var util=require(_0x3b2b('0x0'));var net=require(_0x3b2b('0x1'));var EventEmitter=require(_0x3b2b('0x2'))[_0x3b2b('0x3')];var AGIError=require(_0x3b2b('0x4'));var AGIChannel=require(_0x3b2b('0x5'));var AGIServer=function(_0x2059f0,_0x4dad94,_0x3eff63){var _0x222c10=this,_0x2059f0=_0x2059f0||0x11dd,_0x4dad94=_0x4dad94||_0x3b2b('0x6'),_0x2581eb=null,_0xc53a84=0x0;EventEmitter[_0x3b2b('0x7')](_0x222c10);function _0x1a9054(){if(!_0x2059f0){_0x222c10[_0x3b2b('0x8')](_0x3b2b('0x9'),new AGIError(_0x3b2b('0xa')));return![];}_0x2581eb=net['createServer']();_0x2581eb[_0x3b2b('0xb')](_0x2059f0,_0x4dad94);_0x2581eb['on'](_0x3b2b('0xc'),function(){_0x222c10[_0x3b2b('0x8')](_0x3b2b('0xc'));});_0x2581eb['on'](_0x3b2b('0xd'),function(_0x1a3a61){_0x2581eb['getConnections'](function(_0x492f5f,_0x2801ec){if(_0x492f5f){_0x222c10[_0x3b2b('0x8')](_0x3b2b('0x9'),new AGIError(_0x3b2b('0xe'),_0x492f5f));}else if(_0x3eff63&&_0x3eff63<0x0){_0x222c10['emit'](_0x3b2b('0x9'),new AGIError(_0x3b2b('0xf')));_0x1a3a61[_0x3b2b('0x10')]();}else if(_0x3eff63&&_0x3eff63>0x0&&_0x3eff63<_0x2801ec){_0xc53a84+=0x1;_0x222c10[_0x3b2b('0x8')](_0x3b2b('0x9'),new AGIError(_0x3b2b('0x11'),_0xc53a84));_0x1a3a61['destroy']();}else{var _0x1dad6d=new AGIChannel(_0x1a3a61);_0x1dad6d['on'](_0x3b2b('0x12'),function(){_0x222c10['emit'](_0x3b2b('0xd'),_0x1dad6d);});}});});_0x2581eb['on'](_0x3b2b('0x9'),function(_0x9f0aa){_0x222c10['emit'](_0x3b2b('0x9'),new AGIError('E_AGI_SERVER_ERROR',_0x9f0aa[_0x3b2b('0x13')]));});_0x2581eb['on'](_0x3b2b('0x14'),function(){_0x222c10['emit']('close',new AGIError(_0x3b2b('0x15')));});}process['nextTick'](function(){_0x1a9054();});};util[_0x3b2b('0x16')](AGIServer,EventEmitter);module[_0x3b2b('0x17')]=function(_0x584d07,_0x45570e,_0x4ff5e3){return new AGIServer(_0x584d07,_0x45570e,_0x4ff5e3);};