SipCallManager implements CallManager, SpeechletService, SessionListener { @Override public void start() throws NoresourceError, IOException { LOGGER.info("startup MRCPv2 SIP CallManager"); sessions = new java.util.HashMap<String, SipCallManagerSession>(); ids = new java.util.HashMap<String, String>(); sipServer.startup(); started = true; }  void setSipServer(final SipServer server); void setApplications(final Map<String, String> apps); @Override void StopDialog(final SipSession pbxSession); @Override void startNewMrcpDialog(final SipSession pbxSession,
            final SipSession mrcpSession); @Override void startNewCloudDialog(final SipSession pbxSession,
            final RTPStreamReplicator rtpReplicator,
            final RtpTransmitter rtpTransmitter); JVoiceXml getJVoiceXml(); @Override void setJVoiceXml(final JVoiceXmlCore jvoicexml); @Override void startup(); @Override void shutdown(); @Override void dtmf(final SipSession session, final char dtmf); @Override void start(); @Override boolean isStarted(); @Override void stop(); @Override void sessionStarted(final Session session); @Override void sessionEnded(final Session session);  }
@Test public void testStart() throws NoresourceError, IOException, Exception { final SipCallManager manager = new SipCallManager(); final SipServer server = new SipServer(); manager.setSipServer(server); server.setDialogService(manager); server.setMySipAddress("sip:127.0.0.1:4245"); server.setPort(4245); server.setCairoSipAddress("sip:cairo@speechforge.org"); server.setCairoSipHostName("127.0.0.1"); server.setCairoSipPort(5050); server.setStackName("Mrcpv2SessionManager"); server.setTransport("UDP"); Assert.assertFalse(manager.isStarted()); manager.start(); Assert.assertTrue(manager.isStarted()); manager.stop(); Assert.assertFalse(manager.isStarted()); }