Built motion from commit (unavailable).|2.5.23
[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 _0x1de4=['E_AGI_SERVER_CLOSE','nextTick','inherits','exports','util','net','events','EventEmitter','./channel','127.0.0.1','call','error','E_AGI_ARGUMENT_PORT','createServer','listen','listening','emit','connection','getConnections','E_AGI_SERVER_ERROR','destroy','E_AGI_SERVER_MAXCONNECTION','ready','close'];(function(_0x2df724,_0x411382){var _0x1b2504=function(_0x1d3cd1){while(--_0x1d3cd1){_0x2df724['push'](_0x2df724['shift']());}};_0x1b2504(++_0x411382);}(_0x1de4,0x94));var _0x41de=function(_0x31a31f,_0x54bdc4){_0x31a31f=_0x31a31f-0x0;var _0x23dd9a=_0x1de4[_0x31a31f];return _0x23dd9a;};'use strict';var util=require(_0x41de('0x0'));var net=require(_0x41de('0x1'));var EventEmitter=require(_0x41de('0x2'))[_0x41de('0x3')];var AGIError=require('./error');var AGIChannel=require(_0x41de('0x4'));var AGIServer=function(_0x43c48c,_0xcc46f7,_0x5dd1cb){var _0x378cbe=this,_0x43c48c=_0x43c48c||0x11dd,_0xcc46f7=_0xcc46f7||_0x41de('0x5'),_0x2e7196=null,_0x122565=0x0;EventEmitter[_0x41de('0x6')](_0x378cbe);function _0x50f716(){if(!_0x43c48c){_0x378cbe['emit'](_0x41de('0x7'),new AGIError(_0x41de('0x8')));return![];}_0x2e7196=net[_0x41de('0x9')]();_0x2e7196[_0x41de('0xa')](_0x43c48c,_0xcc46f7);_0x2e7196['on'](_0x41de('0xb'),function(){_0x378cbe[_0x41de('0xc')]('listening');});_0x2e7196['on'](_0x41de('0xd'),function(_0x415af3){_0x2e7196[_0x41de('0xe')](function(_0x46bd4c,_0x41e515){if(_0x46bd4c){_0x378cbe[_0x41de('0xc')]('error',new AGIError(_0x41de('0xf'),_0x46bd4c));}else if(_0x5dd1cb&&_0x5dd1cb<0x0){_0x378cbe[_0x41de('0xc')](_0x41de('0x7'),new AGIError('E_AGI_SERVER_VOICE_DISABLED'));_0x415af3[_0x41de('0x10')]();}else if(_0x5dd1cb&&_0x5dd1cb>0x0&&_0x5dd1cb<_0x41e515){_0x122565+=0x1;_0x378cbe[_0x41de('0xc')]('error',new AGIError(_0x41de('0x11'),_0x122565));_0x415af3[_0x41de('0x10')]();}else{var _0x2743f1=new AGIChannel(_0x415af3);_0x2743f1['on'](_0x41de('0x12'),function(){_0x378cbe[_0x41de('0xc')](_0x41de('0xd'),_0x2743f1);});}});});_0x2e7196['on'](_0x41de('0x7'),function(_0x2820ae){_0x378cbe[_0x41de('0xc')](_0x41de('0x7'),new AGIError(_0x41de('0xf'),_0x2820ae['code']));});_0x2e7196['on'](_0x41de('0x13'),function(){_0x378cbe[_0x41de('0xc')]('close',new AGIError(_0x41de('0x14')));});}process[_0x41de('0x15')](function(){_0x50f716();});};util[_0x41de('0x16')](AGIServer,EventEmitter);module[_0x41de('0x17')]=function(_0x1a7b6f,_0x578e29,_0x5da622){return new AGIServer(_0x1a7b6f,_0x578e29,_0x5da622);};