Hi Experts,

I would like to ask you if some of you have already come across this problem.
We are integrating Kamailio all in one Solution (P/I/S-CSCF having all same IP only communicating between each other on different ports) taken from Carsten Bock example against an external HSS.

The flow is as follows:

UE                                 HSS                                 P-CSCF                                 I-CSCF                                 S-CSCF

--------------------------Sip Register-------------------------->
                                                                                     ----------Sip Register--------->
                                         <---------------------------------UAR--------------------------------
                                         ---------------------------------UAA-------------------------------->
                                                                                                                                 --------------SIP Register------->

The last step "SIP Register" from I-CSCF to S-CSCF is not happenning for some reason.
The Received AVP in UAA is "First Time Registration 2001 code".

Now we do not know whether this UAA answer is OK, or some other URI is badly defined which could explain why I-CSCF has trouble contacting S-CSCF.

If someone have some logs, traces which could be used as a reference for this scenario would be greatly appreciated.

Find theses messages we get in the shown logs below:

Thank you
Jan



This file /rtc/kamailio_icscf/kamailio.cfg is a function which sends message to SCSCF, see below:


route[REG_UAR_REPLY]
{
    #xlog("$$avp(s:uaa_return_code) = $avp(s:uaa_return_code)\n");
    #this is async so to know status we have to check the reply avp
    switch ($avp(s:uaa_return_code)){
            case 1: #success
                    if (I_scscf_select("0")){
                            t_on_failure("register_failure");
                            t_on_reply("register_reply");
                            #now relay to appropriate SCSCF
                            if (!t_relay()) {
                                    t_reply("500", "Error forwarding to SCSCF");
                            }
                    } else {#select failed
                            I_scscf_drop();
                            t_reply("500", "Server error on SCSCF Select (UAR)");
                    }
                    break;
            case -1: #failure
                    xlog("L_ERR", "UAR failure - error response sent from module\n");
                    break;
            case -2: #error
                    xlog("L_ERR", "UAR error - sending error response now\n");
                    t_reply("500", "UAR failed");
                    break;
            default:
                    xlog("L_ERR", "Unknown return code from UAR, value is [$avp(s:uaa_return_code)]\n");
                    t_reply("500", "Unknown response code from UAR");
                    break;
    }
}


Kamailio is getting an answer: "t_reply("500", "Error forwarding to SCSCF");"
which means that th function I_scscf_select("0") is fine but the other function called "t_relay", is the one generating the error "Error forwarding to SCSCF".

I-CSCF is not able to send the SIP message to S-CSCF, see this log below:
 
Jul 16 14:59:22 cw-aio /usr/sbin/kamailio[31604]: ERROR: tm [t_fwd.c:1711]: t_forward_nonack(): ERROR: t_forward_nonack: failure to add branches
Jul 16 14:59:23 cw-aio /usr/sbin/kamailio[31599]: INFO: ims_icscf [cxdx_uar.c:71]: create_uaa_return_code(): created AVP successfully : [uaa_return_code]
Jul 16 14:59:23 cw-aio /usr/sbin/kamailio[31605]: INFO: ims_icscf [cxdx_avp.c:137]: cxdx_get_avp(): cxdx_get_server_name: Failed finding avp
Jul 16 14:59:23 cw-aio /usr/sbin/kamailio[31605]: INFO: ims_icscf [cxdx_avp.c:137]: cxdx_get_avp(): cxdx_get_result_code: Failed finding avp
Jul 16 14:59:23 cw-aio /usr/sbin/kamailio[31605]: INFO: ims_icscf [cxdx_uar.c:71]: create_uaa_return_code(): created AVP successfully : [uaa_return_code]
Jul 16 14:59:23 cw-aio /usr/sbin/kamailio[31605]: ERROR: tm [ut.h:254]: uri2dst2(): ERROR: uri2dst: bad_uri: scscf.epc.mnc004.mcc324.3gppnetwork.org
Jul 16 14:59:23 cw-aio /usr/sbin/kamailio[31605]: ERROR: tm [t_fwd.c:1711]: t_forward_nonack(): ERROR: t_forward_nonack: failure to add branches