--- chan_sip.c 2012/03/10 12:01:36 1.1 +++ chan_sip.c 2012/03/10 12:14:08 @@ -15489,7 +15489,7 @@ ast_copy_string(tmpf, sip_get_header(req, "From"), sizeof(tmpf)); if (!ast_strlen_zero(tmpf)) { from = get_in_brackets(tmpf); - if (parse_uri_legacy_check(from, "sip:,sips:", &from, NULL, &domain, NULL)) { + if (parse_uri_legacy_check(from, "sip:,sips:,tel:", &from, NULL, &domain, NULL)) { ast_log(LOG_WARNING, "Not a SIP header (%s)?\n", from); return SIP_GET_DEST_INVALID_URI; } @@ -16274,6 +16274,8 @@ t+= 4; else if (!strncasecmp(t, "sips:", 5)) t += 5; + else if (!strncasecmp(t, "tel:", 4)) + t += 4; ast_string_field_set(p, exten, t); t = strchr(p->exten, '@'); if (t) @@ -16288,7 +16290,7 @@ /* save the URI part of the From header */ ast_string_field_set(p, from, of); - if (parse_uri_legacy_check(of, "sip:,sips:", &name, &unused_password, &domain, NULL)) { + if (parse_uri_legacy_check(of, "sip:,sips:,tel:", &name, &unused_password, &domain, NULL)) { ast_log(LOG_NOTICE, "From address missing 'sip:', using it anyway\n"); }