pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/36997?usp=email )
Change subject: asterisk: Allow configuring a domain servername instead of IP address ......................................................................
asterisk: Allow configuring a domain servername instead of IP address
Change-Id: I23afdc8b70132dbd947c280f6e5aadbc84849f01 --- M asterisk/Asterisk_Tests.ttcn M asterisk/IMS_ConnectionHandler.ttcn 2 files changed, 24 insertions(+), 11 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/97/36997/1
diff --git a/asterisk/Asterisk_Tests.ttcn b/asterisk/Asterisk_Tests.ttcn index 4ac7eaf..5a51d1d 100644 --- a/asterisk/Asterisk_Tests.ttcn +++ b/asterisk/Asterisk_Tests.ttcn @@ -37,6 +37,7 @@
charstring mp_local_ims_host := "127.0.0.3"; integer mp_local_ims_port := 5060; + charstring mp_ims_domain := "ims.mnc001.mcc238.3gppnetwork.org" charstring mp_ims_imsi := "238010000090828";
/* Asterisk AMI: */ @@ -88,6 +89,7 @@ var template (value) IMS_CallPars cp := t_IMS_CallPars(mp_local_sip_host, 1234 + 2*idx); var template (value) IMS_ConnHdlrPars pars := t_IMS_Pars(mp_local_ims_host, mp_local_ims_port, + mp_ims_domain, mp_ims_imsi, cp := cp); return valueof(pars); @@ -393,7 +395,7 @@ c_auth_res, c_auth_ck, c_auth_ik);
AMI_CLIENT.receive(tr_AMI_Event_Registry(f_sip_SipAddr_to_str(pars.subscr.local_sip_record), - "sip:" & mp_local_ims_host, + "sip:" & mp_ims_domain, "Registered"));
/* TODO: test "Action: PJSIPUnregister" */ @@ -449,9 +451,9 @@ sip_pars.cp.calling := sip_pars.registrar_sip_record; sip_pars.cp.called := valueof(ts_SipAddr(ts_HostPort(sip_pars.remote_sip_host), ts_UserInfo(c_ext_msisdn))); - ims_pars.subscr.cp.calling := valueof(ts_SipAddr(ts_HostPort(ims_pars.local_sip_host), + ims_pars.subscr.cp.calling := valueof(ts_SipAddr(ts_HostPort(ims_pars.realm), ts_UserInfo(ims_pars.subscr.msisdn))); - ims_pars.subscr.cp.called := valueof(ts_SipAddr(ts_HostPort(ims_pars.local_sip_host), + ims_pars.subscr.cp.called := valueof(ts_SipAddr(ts_HostPort(ims_pars.realm), ts_UserInfo(c_ext_msisdn)));
vc_conn_ims := f_start_handler_IMS(refers(f_TC_ims_call_mo), ims_pars); diff --git a/asterisk/IMS_ConnectionHandler.ttcn b/asterisk/IMS_ConnectionHandler.ttcn index 3f0c380..a2f3dba 100644 --- a/asterisk/IMS_ConnectionHandler.ttcn +++ b/asterisk/IMS_ConnectionHandler.ttcn @@ -144,6 +144,7 @@
template (value) IMS_ConnHdlrSubscrPars t_IMS_SubscrPars(charstring local_sip_host, uint16_t local_sip_port, + charstring domain, charstring imsi, charstring msisdn := "90828", charstring display_name := "Anonymous", @@ -166,19 +167,19 @@ ipsec_remote_spi_s := omit, ipsec_remote_port_c := omit, ipsec_remote_port_s := omit, - registrar_sip_record := ts_SipAddr(ts_HostPort(local_sip_host), + registrar_sip_record := ts_SipAddr(ts_HostPort(domain), ts_UserInfo(imsi), f_sip_str_quote(display_name)), - registrar_sip_call_id := hex2str(f_rnd_hexstring(15)) & "@" & local_sip_host, + registrar_sip_call_id := hex2str(f_rnd_hexstring(15)) & "@" & domain, registrar_sip_seq_nr := f_sip_rand_seq_nr(), - local_sip_url_ext := ts_SipUrl(ts_HostPort(local_sip_host, local_sip_port), + local_sip_url_ext := ts_SipUrl(ts_HostPort(domain, local_sip_port), ts_UserInfo(imsi)), - local_sip_record := ts_SipAddr(ts_HostPort(local_sip_host), + local_sip_record := ts_SipAddr(ts_HostPort(domain), ts_UserInfo(imsi)), local_contact := valueof(ts_Contact({ ts_ContactAddress( ts_Addr_Union_SipUrl(ts_SipUrl(ts_HostPort( - local_sip_host, + domain, local_sip_port), ts_UserInfo(imsi))), omit) @@ -188,15 +189,16 @@
template (value) IMS_ConnHdlrPars t_IMS_Pars(charstring local_sip_host, uint16_t local_sip_port, + charstring domain, charstring imsi, template (omit) IMS_CallPars cp := omit) := { t_guard := 30.0, - realm := local_sip_host, + realm := domain, local_sip_host := local_sip_host, local_sip_port := local_sip_port, - registrar_sip_req_uri := valueof(ts_SipUrlHost(local_sip_host)), + registrar_sip_req_uri := valueof(ts_SipUrlHost(domain)), local_via := ts_Via_from(ts_HostPort(local_sip_host, local_sip_port)), - subscr := t_IMS_SubscrPars(local_sip_host, local_sip_port, imsi := imsi, cp := cp) + subscr := t_IMS_SubscrPars(local_sip_host, local_sip_port, domain := domain, imsi := imsi, cp := cp) }
private altstep as_Tguard() runs on IMS_ConnHdlr {