code: public static SipApplicationSessionKey parseSipApplicationSessionKey(
  			String sipApplicationKey) throws ParseException {
  				
  		int indexOfComma = sipApplicationKey.indexOf(SESSION_KEY_SEPARATOR);
  		if(indexOfComma == -1) {
  			throw new ParseException("The comma could not be found in the following key " + sipApplicationKey, 0);
  		}
  		
  		String appGeneratedKey = null;
  		String uuid = sipApplicationKey.substring(0, indexOfComma);
  		String leftover = sipApplicationKey.substring(indexOfComma + 1, sipApplicationKey.length());
  		indexOfComma = leftover.indexOf(SESSION_KEY_SEPARATOR);
  		SipApplicationSessionKey sipApplicationSessionKey = null;
  		if(indexOfComma != -1) {
  			appGeneratedKey = uuid;
  			uuid = leftover.substring(0, indexOfComma);
  			String applicationName = leftover.substring(indexOfComma + 1, leftover.length());
  			sipApplicationSessionKey = getSipApplicationSessionKey(applicationName, uuid, appGeneratedKey);
  		} else {
  			String applicationName = leftover;
  			sipApplicationSessionKey = getSipApplicationSessionKey(applicationName, uuid, null);
  		}	
  		return sipApplicationSessionKey;
  	}
docs: Parse a sip application key that was previously generated and put as an http request param
  through the encodeURL method of SipApplicationSession
  @param sipApplicationKey the stringified version of the sip application key
  @return the corresponding sip application session key
  @throws ParseException if the stringfied key cannot be parse to a valid key