Commit 0254844e authored by Tien-Thinh Nguyen's avatar Tien-Thinh Nguyen

Add AmfEventState

parent e102d11f
...@@ -83,10 +83,8 @@ class amf_event { ...@@ -83,10 +83,8 @@ class amf_event {
private: private:
ue_reachability_status_sig_t ue_reachability_status_sig_t
ue_reachability_status; // Signal for UE Reachability Report ue_reachability_status; // Signal for UE Reachability Report
ue_registration_state_sig_t ue_registration_state_sig_t
ue_registration_state; // Signal for UE Registration State Report ue_registration_state; // Signal for UE Registration State Report
ue_connectivity_state_sig_t ue_connectivity_state_sig_t
ue_connectivity_state; // Signal for UE Connectivity State Report ue_connectivity_state; // Signal for UE Connectivity State Report
}; };
......
...@@ -36,6 +36,10 @@ ...@@ -36,6 +36,10 @@
namespace bs2 = boost::signals2; namespace bs2 = boost::signals2;
namespace amf_application { namespace amf_application {
// TODO: Location-Report
// TODO: Presence-In-AOI-Report
// TODO: Time-Zone-Report
// TODO: Access-Type-Report
// Signal for UE Reachability Report // Signal for UE Reachability Report
// SUPI, status, HTTP version // SUPI, status, HTTP version
...@@ -58,5 +62,9 @@ typedef bs2::signal_type< ...@@ -58,5 +62,9 @@ typedef bs2::signal_type<
bs2::keywords::mutex_type<bs2::dummy_mutex>>::type bs2::keywords::mutex_type<bs2::dummy_mutex>>::type
ue_connectivity_state_sig_t; ue_connectivity_state_sig_t;
// TODO: Communication-Failure-Report
// TODO: UEs-In-Area-Report
// TODO: Loss-of-Connectivity
} // namespace amf_application } // namespace amf_application
#endif #endif
...@@ -3130,8 +3130,12 @@ void amf_n1::handle_ue_reachability_status_change( ...@@ -3130,8 +3130,12 @@ void amf_n1::handle_ue_reachability_status_change(
oai::amf::model::AmfEventReport event_report = {}; oai::amf::model::AmfEventReport event_report = {};
oai::amf::model::AmfEventType amf_event_type = {}; oai::amf::model::AmfEventType amf_event_type = {};
amf_event_type.set_value("REACHABILITY_REPORT"); amf_event_type.set_value("REACHABILITY_REPORT");
event_report.setType(amf_event_type); event_report.setType(amf_event_type);
AmfEventState amf_event_state = {};
amf_event_state.setActive(true);
event_report.setState(amf_event_state);
oai::amf::model::UeReachability ue_reachability = {}; oai::amf::model::UeReachability ue_reachability = {};
if (status == CM_CONNECTED) if (status == CM_CONNECTED)
ue_reachability.set_value("REACHABLE"); ue_reachability.set_value("REACHABLE");
...@@ -3190,6 +3194,10 @@ void amf_n1::handle_ue_registration_state_change( ...@@ -3190,6 +3194,10 @@ void amf_n1::handle_ue_registration_state_change(
amf_event_type.set_value("REGISTRATION_STATE_REPORT"); amf_event_type.set_value("REGISTRATION_STATE_REPORT");
event_report.setType(amf_event_type); event_report.setType(amf_event_type);
AmfEventState amf_event_state = {};
amf_event_state.setActive(true);
event_report.setState(amf_event_state);
std::vector<oai::amf::model::RmInfo> rm_infos; std::vector<oai::amf::model::RmInfo> rm_infos;
oai::amf::model::RmInfo rm_info = {}; oai::amf::model::RmInfo rm_info = {};
oai::amf::model::RmState rm_state = {}; oai::amf::model::RmState rm_state = {};
...@@ -3254,6 +3262,10 @@ void amf_n1::handle_ue_connectivity_state_change( ...@@ -3254,6 +3262,10 @@ void amf_n1::handle_ue_connectivity_state_change(
amf_event_type.set_value("CONNECTIVITY_STATE_REPORT"); amf_event_type.set_value("CONNECTIVITY_STATE_REPORT");
event_report.setType(amf_event_type); event_report.setType(amf_event_type);
AmfEventState amf_event_state = {};
amf_event_state.setActive(true);
event_report.setState(amf_event_state);
std::vector<oai::amf::model::CmInfo> cm_infos; std::vector<oai::amf::model::CmInfo> cm_infos;
oai::amf::model::CmInfo cm_info = {}; oai::amf::model::CmInfo cm_info = {};
oai::amf::model::CmState cm_state = {}; oai::amf::model::CmState cm_state = {};
......
...@@ -75,22 +75,6 @@ typedef struct amf_event_s { ...@@ -75,22 +75,6 @@ typedef struct amf_event_s {
} amf_event_t; } amf_event_t;
/*
typedef struct amf_event_state_s {
bool m_active;
int32_t m_remain_reports;
bool m_remain_reports_is_set;
int32_t m_remain_duration;
bool m_remain_duration_is_set;
} amf_event_state_t;
typedef enum ue_reachability_e {
UNREACHABLE = 1,
REACHABLE = 2,
REGULATORY_ONLY = 3
} ue_reachability_t;
*/
enum n1_n2_message_transfer_cause_e { enum n1_n2_message_transfer_cause_e {
ATTEMPTING_TO_REACH_UE = 1, ATTEMPTING_TO_REACH_UE = 1,
N1_N2_TRANSFER_INITIATED = 2, N1_N2_TRANSFER_INITIATED = 2,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment