I have an issue with DISA on VitalPBX 4, Calls from DISA will not have a caller ID
VitalPBX 3
same => n,Set(EXTENSION_EXTERNAL_CID=${DB(${TENANT}/extensions/${CALL_SOURCE}/external_cid)})
same => n,ExecIf(${DB_EXISTS(${TENANT}/extensions/${CALL_SOURCE}/external_cid)}?Set(CALLERID(all)=${EXTENSION_EXTERNAL_CID}))
VitalPBX 4
same => n,Set(EXTENSION_EXTERNAL_CID=${ODBC_EXTENSION-SETTING(external_cid,${CALL_SOURCE},${TENANT})})
same => n,Set(CALLERID(all)=${EXTENSION_EXTERNAL_CID})
same => n,GotoIf($["${LEN(${EXTENSION_EXTERNAL_CID})}"!="0"]?:check-emergency)
same => n,Set(TENANT_DEFAULT_EXTERNAL_CID=${DB(${TENANT}/default_external_cid)})
same => n,ExecIf($[$["${LEN(${EXTENSION_EXTERNAL_CID})}"="0"]&$["${LEN(${TENANT_DEFAULT_EXTERNAL_CID})}"!="0"]]?Set(CALLERID(all)=${TENANT_DEFAULT_EXTERNAL_CID}))
Looks like it’s overriding the caller ID to the default tenant caller ID if the EXTENSION_EXTERNAL_CID is empty
The validation says, if the extension External CID is empty and the Default Tenant External CID is not empty. So, I don’t think the highlighted code is related to your issue.
Could you share a full call log for further analysis?