diff --git a/include/gsup_protocol.hrl b/include/gsup_protocol.hrl index e304654..3c867d6 100644 --- a/include/gsup_protocol.hrl +++ b/include/gsup_protocol.hrl @@ -198,9 +198,9 @@ 16#28 => #{message_type => mt_forward_sm_req, mandatory => [sm_rp_mr, sm_rp_da, sm_rp_oa, sm_rp_ui], optional => [sm_rp_mms]}, 16#29 => #{message_type => mt_forward_sm_err, mandatory => [sm_rp_mr, sm_rp_cause], optional => [sm_rp_ui]}, 16#2a => #{message_type => mt_forward_sm_res, mandatory => [sm_rp_mr], optional => [sm_rp_ui]}, - 16#2c => #{message_type => ready_for_sm_req, mandatory => [sm_alert_reason]}, - 16#2d => #{message_type => ready_for_sm_err, mandatory => [sm_rp_cause], optional => [sm_rp_ui]}, - 16#2e => #{message_type => ready_for_sm_res, mandatory => []}, + 16#2c => #{message_type => ready_for_sm_req, mandatory => [sm_rp_mr, sm_alert_reason]}, + 16#2d => #{message_type => ready_for_sm_err, mandatory => [sm_rp_mr, sm_rp_cause], optional => [sm_rp_ui]}, + 16#2e => #{message_type => ready_for_sm_res, mandatory => [sm_rp_mr]}, 16#30 => #{message_type => check_imei_req, mandatory => [imei]}, 16#31 => #{message_type => check_imei_err, mandatory => [cause]}, 16#32 => #{message_type => check_imei_res, mandatory => [imei_check_result]}, diff --git a/test/gsup_encode_decode_test.erl b/test/gsup_encode_decode_test.erl index c0d3a21..65863c7 100644 --- a/test/gsup_encode_decode_test.erl +++ b/test/gsup_encode_decode_test.erl @@ -375,9 +375,16 @@ mt_forward_sm_res_test() -> ?assertEqual(Bin, gsup_protocol:encode(Map)). ready_for_sm_req_test() -> - Bin = <<16#2c, ?TEST_IMSI_IE, 16#46, 16#01, 16#02>>, + Bin = <<16#2c, ?TEST_IMSI_IE, + 16#40, 16#01, %% SM-RP-MR + 16#41, + 16#46, 16#01, %% Alert reason + 16#02 + >>, Map = #{imsi => <<"123456789012345">>, - message_type => ready_for_sm_req,sm_alert_reason => 2}, + message_type => ready_for_sm_req, + sm_rp_mr => 65, + sm_alert_reason => 2}, ?assertEqual(Map, gsup_protocol:decode(Bin)), ?assertEqual(Bin, gsup_protocol:encode(Map)).