diff --git a/channels/pjsip/dialplan_functions.c b/channels/pjsip/dialplan_functions.c index 70507bba8105bf2b6fdc4baa2830e603a2d73748..2081bad9c8fc1e317865ce11fce178a6506b024b 100644 --- a/channels/pjsip/dialplan_functions.c +++ b/channels/pjsip/dialplan_functions.c @@ -1124,7 +1124,7 @@ static int parse_uri_cb(void *data) pj_strdup2_with_null(pool, &tmp, args->uri); uri = (pjsip_name_addr *)pjsip_parse_uri(pool, tmp.ptr, tmp.slen, PJSIP_PARSE_URI_AS_NAMEADDR); - if (!uri) { + if (!uri || (!PJSIP_URI_SCHEME_IS_SIP(uri) && !PJSIP_URI_SCHEME_IS_SIPS(uri))) { ast_log(LOG_WARNING, "Failed to parse URI '%s'\n", args->uri); pjsip_endpt_release_pool(ast_sip_get_pjsip_endpoint(), pool); args->ret = -1;