Commit 6edaa115 authored by rennoch's avatar rennoch
Browse files

updates due to LibSipV2 types modifications

parent d86480c1
Loading
Loading
Loading
Loading
+6 −2
Original line number Original line Diff line number Diff line
@@ -225,10 +225,14 @@ group EMERGENCY{
	/** @desc	charstring for identity of the emergency service
	/** @desc	charstring for identity of the emergency service
	*/
	*/
	  modulepar charstring  PX_IMS_SUT_EMERGENCY_SERVICE := "service:sos";
	  modulepar charstring  PX_IMS_SUT_EMERGENCY_SERVICE := "service:sos";
      modulepar charstring  PX_IMS_SUT_EMERGENCY_SERVICE_namespaceId := "service";	
      modulepar charstring  PX_IMS_SUT_EMERGENCY_SERVICE_namespaceSpecificString := "sos";  
        
        
   	/** @desc	charstring for identity of the invalid emergency service
   	/** @desc	charstring for identity of the invalid emergency service
	*/
	*/
	  modulepar charstring  PX_IMS_SUT_EMERGENCY_SERVICE_INVALID := "service:sos.invalid";
	  modulepar charstring  PX_IMS_SUT_EMERGENCY_SERVICE_INVALID := "service:sos.invalid";
      modulepar charstring  PX_IMS_SUT_EMERGENCY_SERVICE_INVALID_namespaceId := "service";	
      modulepar charstring  PX_IMS_SUT_EMERGENCY_SERVICE_INVALID_namespaceSpecificString := "sos.invalid";  
}// end group EMERGENCY service
}// end group EMERGENCY service


group SUT_IBCF {
group SUT_IBCF {
+1 −1
Original line number Original line Diff line number Diff line
@@ -18,7 +18,7 @@ const integer c_ISUP_HOP_COUNT:=31; //TODO replace this value with appropriate P


// URN scheme (RFC 5031)
// URN scheme (RFC 5031)
// TODO NOTE: this definition is for temporary use
// TODO NOTE: this definition is for temporary use
const charstring c_urnScheme := "urn";
// const charstring c_urnScheme := "urn"; // defined in LibSIPTyypesAndValues


group UserProfileConstants
group UserProfileConstants
	{
	{
+46 −44
Original line number Original line Diff line number Diff line
@@ -15,6 +15,7 @@ module LibIms_Steps
	import from LibSip_PIXITS all;
	import from LibSip_PIXITS all;
	import from LibSip_Interface all;
	import from LibSip_Interface all;
	import from LibSip_XMLTypes all;
	import from LibSip_XMLTypes all;
    import from LibSip_MessageBodyTypes all;
	//LibIms
	//LibIms
	import from LibIms_Templates all;
	import from LibIms_Templates all;
	import from LibIms_Interface all;
	import from LibIms_Interface all;
@@ -268,7 +269,7 @@ module LibIms_Steps
		{
		{
		  f_setHeadersGeneral(p_cSeq_s, "INVITE"); // cseq, contact, branch, via	
		  f_setHeadersGeneral(p_cSeq_s, "INVITE"); // cseq, contact, branch, via	
		
		
		  vc_reqHostPort := vc_requestUri.hostPort;
		  vc_reqHostPort := vc_requestUri.components.sip.hostPort;
		  
		  
		  if(p_orginatingSide) {
		  if(p_orginatingSide) {
    		  vc_to := vc_caller_To;
    		  vc_to := vc_caller_To;
@@ -328,13 +329,14 @@ module LibIms_Steps
	  vc_requestUri:=
	  vc_requestUri:=
	  {
	  {
		scheme := c_sipScheme,
		scheme := c_sipScheme,
        components := { sip:= {
    		userInfo := omit,
    		userInfo := omit,
		hostPort := {host:=vc_userprofile.registrarDomain, portField:=omit},
    		hostPort := {host:=vc_userprofile.registrarDomain, portField:=omit}}},
		urlParameters := omit,
		urlParameters := omit,
		headers := omit
		headers := omit
	  };
	  };
      
      
	  vc_reqHostPort := vc_requestUri.hostPort;
	  vc_reqHostPort := vc_requestUri.components.sip.hostPort;
      
      
	  vc_callId := { fieldName:=CALL_ID_E, callid:=f_getRndCallId(p_cSeq_s) & c_AT & vc_userprofile.currIpaddr };
	  vc_callId := { fieldName:=CALL_ID_E, callid:=f_getRndCallId(p_cSeq_s) & c_AT & vc_userprofile.currIpaddr };
	  vc_callIdReg := vc_callId;
	  vc_callIdReg := vc_callId;
@@ -752,91 +754,91 @@ module LibIms_Steps
		{
		{
			var SipUrl p_sipUrl := {	  
			var SipUrl p_sipUrl := {	  
				scheme := c_sipScheme,  			// contains "sip"
				scheme := c_sipScheme,  			// contains "sip"
                components := { sip:= {
				userInfo := omit,
				userInfo := omit,
				hostPort := omit,
				hostPort := {omit,omit}}},
				urlParameters := omit,
				urlParameters := omit,
				headers := omit};
				headers := omit};
				
				
			select(p_user){
			select(p_user){
				case (c_userProfile_UE1atSUThome) {
				case (c_userProfile_UE1atSUThome) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE1_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE1_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_SUT_UE1_HOME_DOMAIN, portField :=omit}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_SUT_UE1_HOME_DOMAIN, portField :=omit}
						}
						}
				case (c_userProfile_UE2atSUThome) {
				case (c_userProfile_UE2atSUThome) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE2_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE2_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_SUT_UE2_HOME_DOMAIN, portField :=omit}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_SUT_UE2_HOME_DOMAIN, portField :=omit}
						}
						}
				case (c_userProfile_UE3atSUThome) {
				case (c_userProfile_UE3atSUThome) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE3_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE3_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_SUT_UE3_HOME_DOMAIN, portField :=omit}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_SUT_UE3_HOME_DOMAIN, portField :=omit}
						}
						}
				case (c_userProfile_UE4atSUThome) {
				case (c_userProfile_UE4atSUThome) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE4_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE4_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_SUT_UE4_HOME_DOMAIN, portField :=omit}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_SUT_UE4_HOME_DOMAIN, portField :=omit}
						}
						}
				case (c_userProfile_IBCFwithHomeUE) {
				case (c_userProfile_IBCFwithHomeUE) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_TS_IMS1UE_HOME_DOMAIN, portField :=omit}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_TS_IMS1UE_HOME_DOMAIN, portField :=omit}
						}
						}
				case (c_userProfile_ICSCFwithHomeUE) {
				case (c_userProfile_ICSCFwithHomeUE) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_TS_IMS1UE_HOME_DOMAIN, portField :=omit}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_TS_IMS1UE_HOME_DOMAIN, portField :=omit}
				}
				}
				case (c_userProfile_PCSCFwithHomeUE) {
				case (c_userProfile_PCSCFwithHomeUE) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_TS_PCSCF_IPADDR, portField :=omit}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_TS_PCSCF_IPADDR, portField :=omit}
				}
				}
				case (c_userProfile_SCSCFwithHomeUE) {
				case (c_userProfile_SCSCFwithHomeUE) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE4_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE4_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_TS_SCSCF_HOME_DOMAIN, portField :=PX_IMS_TS_SCSCF_PORT}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_TS_SCSCF_HOME_DOMAIN, portField :=PX_IMS_TS_SCSCF_PORT}
				}
				}
				case (c_userProfile_SCSCFwithHomeUE_domain) {
				case (c_userProfile_SCSCFwithHomeUE_domain) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE4_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_UE4_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_TS_SCSCF_HOME_DOMAIN, portField :=omit}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_TS_SCSCF_HOME_DOMAIN, portField :=omit}
				}
				}
                case (c_userProfile_AS1) {
                case (c_userProfile_AS1) {
                        p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
                        p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
                        p_sipUrl.hostPort := {host := PX_IMS_TS_AS1_IPADDR, portField :=omit}
                        p_sipUrl.components.sip.hostPort := {host := PX_IMS_TS_AS1_IPADDR, portField :=omit}
                }                
                }                
				case (c_userProfile_ECSCFwithHomeUE) {
				case (c_userProfile_ECSCFwithHomeUE) {
					p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
					p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_IMS1UE_PUBLIC_USER, password:=omit};
					p_sipUrl.hostPort := {host := PX_IMS_TS_ECSCF_IPADDR, portField :=omit}
					p_sipUrl.components.sip.hostPort := {host := PX_IMS_TS_ECSCF_IPADDR, portField :=omit}
				}
				}
				case (c_userProfile_ISUP) {
				case (c_userProfile_ISUP) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_ISUP_PUBLIC_USER, password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_TS_ISUP_PUBLIC_USER, password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_TS_ISUP_HOME_DOMAIN, portField :=omit}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_TS_ISUP_HOME_DOMAIN, portField :=omit}
				}
				}
				case (c_serviceProfile_EMERGENCY) {
				case (c_serviceProfile_EMERGENCY) {
						// TODO NOTE: this definition is for temporary use
				        p_sipUrl.scheme := c_urnScheme;
				        p_sipUrl.scheme := c_urnScheme;
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_EMERGENCY_SERVICE, password:=omit};
						p_sipUrl.components.urn.namespaceId := PX_IMS_SUT_EMERGENCY_SERVICE_namespaceId;
						p_sipUrl.hostPort := {host := PX_IMS_SUT_EMERGENCY_HOME_DOMAIN, portField :=omit}
                    	p_sipUrl.components.urn.namespaceId := PX_IMS_SUT_EMERGENCY_SERVICE_namespaceSpecificString;
						//p_sipUrl.hostPort := {host := PX_IMS_SUT_EMERGENCY_HOME_DOMAIN, portField :=omit}
						}
						}
				case (c_serviceProfile_EMERGENCY_INVALID) {
				case (c_serviceProfile_EMERGENCY_INVALID) {
						// TODO NOTE: this definition is for temporary use
				        p_sipUrl.scheme := c_urnScheme;
				        p_sipUrl.scheme := c_urnScheme;
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_EMERGENCY_SERVICE_INVALID, password:=omit};
						p_sipUrl.components.urn.namespaceId := PX_IMS_SUT_EMERGENCY_SERVICE_INVALID_namespaceId;
						p_sipUrl.hostPort := {host := PX_IMS_SUT_EMERGENCY_HOME_DOMAIN, portField :=omit}
                    	p_sipUrl.components.urn.namespaceId := PX_IMS_SUT_EMERGENCY_SERVICE_INVALID_namespaceSpecificString;
						}
						}
						
						
				// following setting is used for the assignment of the Path header field
				// following setting is used for the assignment of the Path header field
				case (c_interfaceProfile_IMS_SUT_PCSCF1) {
				case (c_interfaceProfile_IMS_SUT_PCSCF1) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:="", password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:="", password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_SUT_PCSCF1_HOME_DOMAIN, portField :=PX_IMS_SUT_PCSCF1_PORT}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_SUT_PCSCF1_HOME_DOMAIN, portField :=PX_IMS_SUT_PCSCF1_PORT}
						}						
						}						
						
						
				// following setting is used in relation to the route headers list elements
				// following setting is used in relation to the route headers list elements
				case (c_interfaceSIPURL_IMS_SUT_PCSCF1_domain) {
				case (c_interfaceSIPURL_IMS_SUT_PCSCF1_domain) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:="", password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:="", password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_SUT_PCSCF1_HOME_DOMAIN, portField :=PX_IMS_SUT_PCSCF1_PORT}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_SUT_PCSCF1_HOME_DOMAIN, portField :=PX_IMS_SUT_PCSCF1_PORT}
						}						
						}						
				case (c_interfaceSIPURL_IMS_SUT_PCSCF1_ip) {
				case (c_interfaceSIPURL_IMS_SUT_PCSCF1_ip) {
						p_sipUrl.userInfo := {userOrTelephoneSubscriber:="", password:=omit};
						p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:="", password:=omit};
						p_sipUrl.hostPort := {host := PX_IMS_SUT_PCSCF1_IPADDR, portField :=PX_IMS_SUT_PCSCF1_PORT}
						p_sipUrl.components.sip.hostPort := {host := PX_IMS_SUT_PCSCF1_IPADDR, portField :=PX_IMS_SUT_PCSCF1_PORT}
						}
						}
				case (c_conferenceProfile_factoryURI) {
				case (c_conferenceProfile_factoryURI) {
    				p_sipUrl.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_CONF_FACTORY_NAME, password:=omit};
    				p_sipUrl.components.sip.userInfo := {userOrTelephoneSubscriber:=PX_IMS_SUT_CONF_FACTORY_NAME, password:=omit};
    				p_sipUrl.hostPort := {host := PX_IMS_SUT_CONF_HOME_DOMAIN, portField := omit}
    				p_sipUrl.components.sip.hostPort := {host := PX_IMS_SUT_CONF_HOME_DOMAIN, portField := omit}
				}						
				}						
				};
				};
			return(p_sipUrl)
			return(p_sipUrl)
@@ -1389,7 +1391,7 @@ module LibIms_Steps
		}
		}
	group defaults {
	group defaults {
	    
	    
        altstep a_clearRegistration_IMSuser() runs on SipComponent
        altstep a_clearRegistration_IMSuser() runs on ImsComponent
        {
        {
            var Response v_response;
            var Response v_response;
            var Request v_request;
            var Request v_request;
+38 −31
Original line number Original line Diff line number Diff line
@@ -19,6 +19,7 @@ module LibIms_Templates
    import from LibSip_Steps all;
    import from LibSip_Steps all;
    import from LibSip_PIXITS all;
    import from LibSip_PIXITS all;
    import from LibSip_XMLTypes all;
    import from LibSip_XMLTypes all;
    import from LibSip_MessageBodyTypes all;
	
	
    //LibIms
    //LibIms
    import from LibIms_SIPTypesAndValues all;
    import from LibIms_SIPTypesAndValues all;
@@ -83,8 +84,9 @@ module LibIms_Templates
            displayName := *,
            displayName := *,
            addrSpec := {
            addrSpec := {
                scheme := "sip:",
                scheme := "sip:",
                components := { sip:= {
                    userInfo := *,
                    userInfo := *,
                hostPort := {p_host, p_port},
                    hostPort := {p_host, p_port}}},
                urlParameters := *,
                urlParameters := *,
                headers := *
                headers := *
            }
            }
@@ -98,12 +100,13 @@ group Subfields{
    template SipUrl m_SipUrl_currIpaddr_CSCF(in SipUserProfile p_userprofile) :=  	//*  SIP-URL of the test system on SIP side
    template SipUrl m_SipUrl_currIpaddr_CSCF(in SipUserProfile p_userprofile) :=  	//*  SIP-URL of the test system on SIP side
    {
    {
        scheme := c_sipScheme,  		//*  contains "sip"
        scheme := c_sipScheme,  		//*  contains "sip"
        components := { sip:= {
            userInfo := omit,		//*  optional
            userInfo := omit,		//*  optional
            hostPort :=
            hostPort :=
                    {
                    {
                    host := p_userprofile.currIpaddr,	//*  hostname, IPv4 or IPv6 as a charstring
                    host := p_userprofile.currIpaddr,	//*  hostname, IPv4 or IPv6 as a charstring
                    portField := p_userprofile.currPort	//* optional integer
                    portField := p_userprofile.currPort	//* optional integer
            },
                    }}},
            urlParameters := omit,
            urlParameters := omit,
            headers := omit
            headers := omit
    } 
    } 
@@ -158,13 +161,14 @@ group HeaderFieldTemplates{
                    displayName := omit,  //     optional charstring
                    displayName := omit,  //     optional charstring
                    addrSpec := {
                    addrSpec := {
                        scheme := c_sipScheme,
                        scheme := c_sipScheme,
                        components := { sip:= {
                            userInfo := {
                            userInfo := {
                                userOrTelephoneSubscriber := "registrar",
                                userOrTelephoneSubscriber := "registrar",
                                password := omit
                                password := omit
                            },
                            },
                            hostPort := {
                            hostPort := {
                                PX_IMS_TS_PCSCF_HOME_DOMAIN, PX_IMS_TS_PCSCF_PORT
                                PX_IMS_TS_PCSCF_HOME_DOMAIN, PX_IMS_TS_PCSCF_PORT
                        },
                            }}},
                        urlParameters := { { id := "lr", paramValue := omit}},
                        urlParameters := { { id := "lr", paramValue := omit}},
                        headers := omit
                        headers := omit
                    }
                    }
@@ -288,12 +292,13 @@ group HeaderFieldTemplates{
                addrSpec :=
                addrSpec :=
                {
                {
                    scheme := c_sipScheme,  			// contains "sip"
                    scheme := c_sipScheme,  			// contains "sip"
                    components := { sip:= {
                        userInfo := {userOrTelephoneSubscriber := "unknown", password := omit},
                        userInfo := {userOrTelephoneSubscriber := "unknown", password := omit},
                        hostPort :=
                        hostPort :=
                        {
                        {
                            host := "unknown.domain.name",	// hostname, IPv4 or IPv6 as a charstring
                            host := "unknown.domain.name",	// hostname, IPv4 or IPv6 as a charstring
                            portField := omit
                            portField := omit
                    },
                        }}},
                    urlParameters := omit,
                    urlParameters := omit,
                    headers := omit
                    headers := omit
                }
                }
@@ -319,8 +324,9 @@ group HeaderFieldTemplates{
        fieldName := ROUTE_E,
        fieldName := ROUTE_E,
        routeBody := {{nameAddr := {displayName := omit, 
        routeBody := {{nameAddr := {displayName := omit, 
                                   addrSpec := 	{scheme := c_sipScheme,  			// contains "sip"
                                   addrSpec := 	{scheme := c_sipScheme,  			// contains "sip"
                                       components := { sip:= {
                                                userInfo := omit,
                                                userInfo := omit,
                                                hostPort := {host:=p_interfaceprofile.SUTHomeDomain, portField:= omit},
                                                hostPort := {host:=p_interfaceprofile.SUTHomeDomain, portField:= omit}}},
                                        urlParameters := omit,
                                        urlParameters := omit,
                                        headers := omit}
                                        headers := omit}
                                   },
                                   },
@@ -338,12 +344,13 @@ group HeaderFieldTemplates{
                addrSpec :=
                addrSpec :=
                {
                {
                    scheme := c_sipScheme,  			// contains "sip"
                    scheme := c_sipScheme,  			// contains "sip"
                    components := { sip:= {
                        userInfo := {userOrTelephoneSubscriber := "unknown", password := omit},
                        userInfo := {userOrTelephoneSubscriber := "unknown", password := omit},
                        hostPort :=
                        hostPort :=
                        {
                        {
                            host := "unknown.domain.name",	// hostname, IPv4 or IPv6 as a charstring
                            host := "unknown.domain.name",	// hostname, IPv4 or IPv6 as a charstring
                            portField := omit
                            portField := omit
                    },
                        }}},
                    urlParameters := omit,
                    urlParameters := omit,
                    headers := omit
                    headers := omit
                }
                }
@@ -1119,8 +1126,8 @@ group ResourceListsTemplates {
    template EntryType m_EntryUser(SipUrl p_user) := {
    template EntryType m_EntryUser(SipUrl p_user) := {
		
		
        uri :=
        uri :=
            p_user.userInfo.userOrTelephoneSubscriber & "@" &
            p_user.components.sip.userInfo.userOrTelephoneSubscriber & "@" &
            p_user.hostPort.host,
            p_user.components.sip.hostPort.host,
        attr := {},
        attr := {},
        display_name := omit,
        display_name := omit,
        elem_list := {}
        elem_list := {}