pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/42142?usp=email )
Change subject: ngap: Add multiple templates related to RRC_INACTIVE ......................................................................
ngap: Add multiple templates related to RRC_INACTIVE
Change-Id: Ie0e6f5054c45e681373c6db59d2b298c71ad4836 --- M library/ngap/NGAP_Templates.ttcn 1 file changed, 197 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/42/42142/1
diff --git a/library/ngap/NGAP_Templates.ttcn b/library/ngap/NGAP_Templates.ttcn index b86dfcc..0931687 100644 --- a/library/ngap/NGAP_Templates.ttcn +++ b/library/ngap/NGAP_Templates.ttcn @@ -3674,6 +3674,127 @@
} // End of group UE_CONTEXT_RESUME_FAILURE
+ group MT_COMMUNICATION_HANDLING { + + group Send { + + template (value) PDUSessionListMTCommHReq_Item m_PDUSessionListMTCommHReq_Item( + template (value) PDUSessionID p_pDUSessionID, + template (omit) PDUSessionListMTCommHReq_Item.iE_Extensions p_iE_Extensions := omit + ) := { + pDUSessionID := p_pDUSessionID, + iE_Extensions := p_iE_Extensions + } // End of template m_PDUSessionListMTCommHReq_Item + + /** + * @see ETSI TS 138 413 V19.1.0 Clause 9.2.2.22 MT COMMUNICATION HANDLING REQUEST + */ + template (value) InitiatingMessage m_n2_MTCommunicationHandlingRequest( + in template (value) AMF_UE_NGAP_ID p_amfUeNgapID := PX_AMF_UE_NGAP_ID, + in template (value) RAN_UE_NGAP_ID p_ranUeNgapID := PX_RAN_UE_NGAP_ID, + in template (value) FiveGCAction p_fiveGcAction ,//:= m_fiveGcAction(PX_CAUSE_UE_CONTEXT_RESUME_FAILURE) + in template (value) PDUSessionListMTCommHReq p_pDUSessionListMTCommHReq + ) := { + procedureCode := id_MTCommunicationHandling, + criticality := reject, + value_ := { + MTCommunicationHandlingRequest := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_FiveGCAction, + criticality := reject, + value_ := { FiveGCAction := p_fiveGcAction } + }, + { + id := id_PDUSessionListMTCommHReq, + criticality := reject, + value_ := { PDUSessionListMTCommHReq := p_pDUSessionListMTCommHReq } + } + } + } + } + } // End of template m_n2_MTCommunicationHandlingRequest + + } // End of group Send + + group Receive { + + /** + * @see ETSI TS 138 413 V19.1.0 Clause 9.2.2.24 MT COMMUNICATION HANDLING FAILURE + */ + template (present) SuccessfulOutcome mw_n2_MTCommunicationHandlingResponse( + in template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + in template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ? + /* TODO: template CriticalityDiagnostics p_criticalityDiagnostics := omit */ + ) := { + procedureCode := id_MTCommunicationHandling, + criticality := reject, + value_ := { + MTCommunicationHandlingResponse := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + } + } + } + } + } // End of template mw_n2_MTCommunicationHandlingFailure + + /** + * @see ETSI TS 138 413 V19.1.0 Clause 9.2.2.24 MT COMMUNICATION HANDLING FAILURE + */ + template (present) UnsuccessfulOutcome mw_n2_MTCommunicationHandlingFailure( + in template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?, + in template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?, + in template (present) Cause p_cause := ? + /* TODO: template CriticalityDiagnostics p_criticalityDiagnostics := omit */ + ) := { + procedureCode := id_MTCommunicationHandling, + criticality := reject, + value_ := { + MTCommunicationHandlingFailure := { + protocolIEs := { + { + id := id_AMF_UE_NGAP_ID, + criticality := reject, + value_ := { AMF_UE_NGAP_ID := p_amfUeNgapID } + }, + { + id := id_RAN_UE_NGAP_ID, + criticality := reject, + value_ := { RAN_UE_NGAP_ID := p_ranUeNgapID } + }, + { + id := id_Cause, + criticality := ignore, + value_ := { Cause := p_cause } + } + } + } + } + } // End of template mw_n2_MTCommunicationHandlingFailure + + } // End of group Receive + + } // End of group MT_COMMUNICATION_HANDLING + } // End of group UE_Context_Management_Messages
/** @@ -16719,6 +16840,41 @@ } } // End of template m_traceActivation_full
+ template (present) CoreNetworkAssistanceInformationForInactive mw_CoreNetworkAssistanceInformationForInactive( + template (present) UEIdentityIndexValue p_uEIdentityIndexValue := ?, + template (present) PagingDRX p_uESpecificDRX := ?, + template (present) PeriodicRegistrationUpdateTimer p_periodicRegistrationUpdateTimer := ?, + template (present) MICOModeIndication p_mICOModeIndication := ?, + template (present) TAIListForInactive p_tAIListForInactive := ?, + template (present) ExpectedUEBehaviour p_expectedUEBehaviour := ?, + template CoreNetworkAssistanceInformationForInactive.iE_Extensions p_iE_Extensions := * + ) := { + uEIdentityIndexValue := p_uEIdentityIndexValue, + uESpecificDRX := p_uESpecificDRX, + periodicRegistrationUpdateTimer := p_periodicRegistrationUpdateTimer, + mICOModeIndication := p_mICOModeIndication, + tAIListForInactive := p_tAIListForInactive, + expectedUEBehaviour := p_expectedUEBehaviour, + iE_Extensions := p_iE_Extensions + } // End of template mw_CoreNetworkAssistanceInformationForInactive + + function f_mw_CoreNetworkAssistanceInformationForInactive_ExtIEs(template CN_MT_CommunicationHandling p_cN_MT_CommunicationHandling := omit) + return template (present) CoreNetworkAssistanceInformationForInactive.iE_Extensions { + var template (present) CoreNetworkAssistanceInformationForInactive.iE_Extensions ies ; + var integer idx := 0; + + if (not istemplatekind(p_cN_MT_CommunicationHandling, "omit")) { + ies[idx] := { + id := id_CN_MT_CommunicationHandling, + criticality := ignore, + extensionValue := { CN_MT_CommunicationHandling := p_cN_MT_CommunicationHandling } + }; + idx := idx + 1; + } + + return ies; + } // End of f_mw_CoreNetworkAssistanceInformationForInactive_ExtIEs + template (value) TraceDepth m_traceDepth(in TraceDepth p_value := minimum) := p_value;
template (value) TypeOfError m_typeOfError(in TypeOfError p_value := not_understood) := p_value; @@ -21285,6 +21441,47 @@ iE_Extension := p_iE_Extension } // End of template mw_nRFrequencyBandItem
+ template (value) FiveGCAction m_FiveGCAction_HLComActivate(template (value) HLComActivate p_hLComActivate) := { + hLComActivate := p_hLComActivate + } // End of template m_FiveGCAction_HLComActivate + + template (present) FiveGCAction mw_FiveGCAction_HLComActivate(template (present) HLComActivate p_hLComActivate := ?) := { + hLComActivate := p_hLComActivate + } // End of template mw_FiveGCAction_HLComActivate + + template (value) FiveGCAction m_FiveGCAction_HLComDeactivate(template (value) HLComDeactivate p_hLComDeactivate) := { + hLComDeactivate := p_hLComDeactivate + } // End of template m_FiveGCAction_HLComDeactivate + + template (present) FiveGCAction mw_FiveGCAction_HLComDeactivate(template (present) HLComDeactivate p_hLComDeactivate := ?) := { + hLComDeactivate := p_hLComDeactivate + } // End of template mw_FiveGCAction_HLComDeactivate + + template (value) FiveGCAction m_FiveGCAction_choice_Extensions(template (value) FiveGCAction.choice_Extensions p_choice_Extensions) := { + choice_Extensions := p_choice_Extensions + } // End of template m_FiveGCAction_choice_Extensions + + template (present) FiveGCAction mw_FiveGCAction_choice_Extensions(template (present) FiveGCAction.choice_Extensions p_choice_Extensions := ?) := { + choice_Extensions := p_choice_Extensions + } // End of template mw_FiveGCAction_choice_Extensions + + + template (value) HLComActivate m_hLComActivate(template (value) NR_Paging_Long_eDRX_Information_for_RRC_INACTIVE p, + template (omit) HLComActivate.iE_Extensions p_iE_Extensions := omit) := { + nR_Paging_Long_eDRX_Information_for_RRC_INACTIVE := p, + iE_Extensions := p_iE_Extensions + } // End of template m_hLComActivate + + template (value) NR_Paging_Long_eDRX_Information_for_RRC_INACTIVE m_nR_Paging_Long_eDRX_Information_for_RRC_INACTIVE( + template (value) NR_Paging_Long_eDRX_Cycle_for_RRC_INACTIVE p_nR_paging_Long_eDRX_Cycle_for_RRC_INACTIVE, + template (value) NR_Paging_Time_Window_for_RRC_INACTIVE p_nR_paging_Time_Window_for_RRC_INACTIVE, + template (omit) NR_Paging_Long_eDRX_Information_for_RRC_INACTIVE.iE_Extensions p_iE_Extensions := omit + ) := { + nR_paging_Long_eDRX_Cycle_for_RRC_INACTIVE := p_nR_paging_Long_eDRX_Cycle_for_RRC_INACTIVE, + nR_paging_Time_Window_for_RRC_INACTIVE := p_nR_paging_Time_Window_for_RRC_INACTIVE, + iE_Extensions := p_iE_Extensions + } // End of template m_nR_Paging_Long_eDRX_Information_for_RRC_INACTIVE + template (present) NRFrequencyInfo mw_nRFrequencyInfo( template (present) NRARFCN p_nrARFCN := ?, template (present) NRFrequencyBand_List p_frequencyBand_List,