public static SIPURI ParseSIPURIRelaxed(string partialURI)
{
if (partialURI == null || partialURI.Trim().Length == 0)
{
return null;
}
else
{
string regexSchemePattern = "^(" + SIPSchemesEnum.sip + "|" + SIPSchemesEnum.sips + "):";
if (Regex.Match(partialURI, regexSchemePattern + @"\S+").Success)
{
// The partial uri is already valid.
return SIPURI.ParseSIPURI(partialURI);
}
else
{
// The partial URI is missing the scheme.
return SIPURI.ParseSIPURI(m_defaultSIPScheme.ToString() + SCHEME_ADDR_SEPARATOR.ToString() + partialURI);
}
}
}