From: Sipwise Development Team <support@sipwise.com>
Date: Thu, 26 Mar 2020 10:06:46 +0100
Subject: sca-fallback-if-no-contact

---
 src/modules/sca/sca_call_info.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/modules/sca/sca_call_info.c b/src/modules/sca/sca_call_info.c
index 0617cea..d83fe48 100644
--- a/src/modules/sca/sca_call_info.c
+++ b/src/modules/sca/sca_call_info.c
@@ -1978,9 +1978,6 @@ int sca_call_info_update(
 			rc = -1;
 			goto done;
 		}
-	} else if(rc < 0) {
-		LM_ERR("Bad Contact\n");
-		goto done;
 	}
 	// reset rc to -1 so we don't end up returning 0 to the script
 	rc = -1;
@@ -2027,6 +2024,13 @@ int sca_call_info_update(
 	LM_DBG("to_aor[%.*s] from_aor[%.*s]\n", STR_FMT(&to_aor),
 			STR_FMT(&from_aor));
 
+	if(contact_uri.s == NULL) {
+		contact_uri.s = "sip:127.0.0.1:5085;transport=udp";
+		contact_uri.len = strlen(contact_uri.s);
+		LM_DBG("No Contact header, using default owner[%.*s]\n",
+				STR_FMT(&contact_uri));
+	}
+
 	// early check to see if we're dealing with any SCA endpoints
 	if(sca_uri_is_shared_appearance(sca, &from_aor)) {
 		if((update_mask & SCA_CALL_INFO_SHARED_CALLER)) {
