mgcpProvider.addJainMgcpListener(this); } catch (Exception e) { throw new MsControlException(e.getMessage());
mgcpProvider.addJainMgcpListener(this); } catch (Exception e) { throw new MsControlException(e.getMessage());
@Override public synchronized void start() throws RuntimeException { assertState(SHUTDOWN); // Initialize the call agent. callAgent = new NotifiedEntity("restcomm", localIp.getHostAddress(), localPort); // Initialize the media gateway domain name. domainName = new StringBuilder().append(remoteIp.getHostAddress()).append(":") .append(remotePort).toString(); // Start the MGCP stack. try { mgcpStack = new JainMgcpStackImpl(localIp, localPort); mgcpProvider = mgcpStack.createProvider(); mgcpProvider.addJainMgcpListener(this); } catch(final Exception exception) { throw new RuntimeException(exception); } requestListeners = new ArrayList<JainMgcpListener>(); requestListenersLock = new Object(); responseListeners = new HashMap<Integer, JainMgcpListener>(); requestId = new RangeCounter(1, Integer.MAX_VALUE); transactionId = new RangeCounter(1, Integer.MAX_VALUE); mediaSessionId = new RangeCounter(1, Integer.MAX_VALUE); mediaSessions = new HashMap<Integer, MgcpSession>(); setState(RUNNING); }
private void powerOn(final Object message) { final PowerOnMediaGateway request = (PowerOnMediaGateway) message; name = request.getName(); localIp = request.getLocalIp(); localPort = request.getLocalPort(); remoteIp = request.getRemoteIp(); remotePort = request.getRemotePort(); useNat = request.useNat(); externalIp = request.getExternalIp(); timeout = request.getTimeout(); stack = request.getStack(); provider = request.getProvider(); //stack = new JainMgcpStackImpl(localIp, localPort); try { //provider = stack.createProvider(); provider.addJainMgcpListener(this); } catch (final TooManyListenersException exception) { //} catch (final CreateProviderException exception) { logger.error(exception, "Could not create a JAIN MGCP provider."); } agent = new NotifiedEntity("restcomm", localIp.getHostAddress(), localPort); domain = new StringBuilder().append(remoteIp.getHostAddress()).append(":").append(remotePort).toString(); notificationListeners.clear(); responseListeners.clear(); requestIdPool = new RevolvingCounter(1, Long.MAX_VALUE); sessionIdPool = new RevolvingCounter(1, Long.MAX_VALUE); transactionIdPool = new RevolvingCounter(1, Long.MAX_VALUE); }