code: @Override
  	protected void doInvite(SipServletRequest request) throws ServletException,
  			IOException {
  
  		logger.info("MediaPlaybackServlet: Got request:\n"
  				+ request.getMethod());
  
  		isBye = false;
  
  		SipServletResponse sipServletResponse = request
  				.createResponse(SipServletResponse.SC_RINGING);
  		sipServletResponse.send();
  
  		SipSession sipSession = request.getSession();
  
  		try {
  			MsControlFactory msControlFactory = (MsControlFactory) getServletContext().getAttribute(MS_CONTROL_FACTORY);
  			// Create new media session and store in SipSession
  			MediaSession mediaSession = (MediaSession) msControlFactory
  					.createMediaSession();
  
  			sipSession.setAttribute("MEDIA_SESSION", mediaSession);
  			mediaSession.setAttribute("SIP_SESSION", sipSession);
  
  			// Store INVITE so it can be responded to later
  			sipSession.setAttribute("UNANSWERED_INVITE", request);
  
  			// Create a new NetworkConnection and store in SipSession
  			NetworkConnection conn = mediaSession
  					.createNetworkConnection(NetworkConnection.BASIC);
  
  			SdpPortManager sdpManag = conn.getSdpPortManager();
  
  			NetworkConnectionListener ncListener = new NetworkConnectionListener();
  
  			sdpManag.addListener(ncListener);
  
  			byte[] sdpOffer = request.getRawContent();
  
  			sdpManag.processSdpOffer(sdpOffer);
  
  		} catch (MsControlException e) {
  			logger.error(e);
  			request.createResponse(SipServletResponse.SC_SERVER_INTERNAL_ERROR)
  					.send();
  		}
  
  	}
docs: {@inheritDoc}