Built motion from commit (unavailable).|2.5.17
[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 _0xd816=['nextTick','inherits','exports','util','net','EventEmitter','127.0.0.1','emit','E_AGI_ARGUMENT_PORT','createServer','listen','listening','getConnections','error','E_AGI_SERVER_VOICE_DISABLED','destroy','E_AGI_SERVER_MAXCONNECTION','E_AGI_SERVER_ERROR','code','close','E_AGI_SERVER_CLOSE'];(function(_0x321df4,_0x3efec5){var _0x50d06c=function(_0x3ac0f4){while(--_0x3ac0f4){_0x321df4['push'](_0x321df4['shift']());}};_0x50d06c(++_0x3efec5);}(_0xd816,0xd5));var _0x6d81=function(_0x2d5d80,_0x1593c5){_0x2d5d80=_0x2d5d80-0x0;var _0x2af118=_0xd816[_0x2d5d80];return _0x2af118;};'use strict';var util=require(_0x6d81('0x0'));var net=require(_0x6d81('0x1'));var EventEmitter=require('events')[_0x6d81('0x2')];var AGIError=require('./error');var AGIChannel=require('./channel');var AGIServer=function(_0x5d99e4,_0x2a4988,_0x39a52f){var _0x3511a2=this,_0x5d99e4=_0x5d99e4||0x11dd,_0x2a4988=_0x2a4988||_0x6d81('0x3'),_0x6c01ef=null,_0x4ba95f=0x0;EventEmitter['call'](_0x3511a2);function _0x96d1ac(){if(!_0x5d99e4){_0x3511a2[_0x6d81('0x4')]('error',new AGIError(_0x6d81('0x5')));return![];}_0x6c01ef=net[_0x6d81('0x6')]();_0x6c01ef[_0x6d81('0x7')](_0x5d99e4,_0x2a4988);_0x6c01ef['on'](_0x6d81('0x8'),function(){_0x3511a2['emit'](_0x6d81('0x8'));});_0x6c01ef['on']('connection',function(_0xa21fa1){_0x6c01ef[_0x6d81('0x9')](function(_0x18c48a,_0x4f68c7){if(_0x18c48a){_0x3511a2['emit']('error',new AGIError('E_AGI_SERVER_ERROR',_0x18c48a));}else if(_0x39a52f&&_0x39a52f<0x0){_0x3511a2[_0x6d81('0x4')](_0x6d81('0xa'),new AGIError(_0x6d81('0xb')));_0xa21fa1[_0x6d81('0xc')]();}else if(_0x39a52f&&_0x39a52f>0x0&&_0x39a52f<_0x4f68c7){_0x4ba95f+=0x1;_0x3511a2['emit'](_0x6d81('0xa'),new AGIError(_0x6d81('0xd'),_0x4ba95f));_0xa21fa1[_0x6d81('0xc')]();}else{var _0x55fcb7=new AGIChannel(_0xa21fa1);_0x55fcb7['on']('ready',function(){_0x3511a2[_0x6d81('0x4')]('connection',_0x55fcb7);});}});});_0x6c01ef['on']('error',function(_0x3867f9){_0x3511a2[_0x6d81('0x4')](_0x6d81('0xa'),new AGIError(_0x6d81('0xe'),_0x3867f9[_0x6d81('0xf')]));});_0x6c01ef['on'](_0x6d81('0x10'),function(){_0x3511a2[_0x6d81('0x4')]('close',new AGIError(_0x6d81('0x11')));});}process[_0x6d81('0x12')](function(){_0x96d1ac();});};util[_0x6d81('0x13')](AGIServer,EventEmitter);module[_0x6d81('0x14')]=function(_0x5d17d4,_0x29af21,_0x5f2ade){return new AGIServer(_0x5d17d4,_0x29af21,_0x5f2ade);};