Loading ttcn/V2G/LibItsV2G_Functions.ttcn +26 −1 Original line number Original line Diff line number Diff line Loading @@ -215,6 +215,17 @@ f_sdpRequestReceived(p_sdpResponse); f_sdpRequestReceived(p_sdpResponse); } } /** * @desc Performs preamble sending a SDP Message * @param p_sdpMessage SDP message to be sent * @see f_prInitialState() * @see f_sendv2gMessage() */ function f_prSendSdpMessage(in template Sdp_Message p_sdpMessage) runs on ItsV2G { f_prInitialState(); f_sendv2gMessage(m_generateSdpMessage(p_sdpMessage)); } } // end of group preambles } // end of group preambles group sdpFunctions { group sdpFunctions { Loading Loading @@ -257,8 +268,22 @@ v2gPort.send(v_sdpResponseMessage); v2gPort.send(v_sdpResponseMessage); } } } // end of sdp functions group v2gFunctions { /** * @desc Send a V2G message * @param p_v2gMessage V2G message to be sent */ function f_sendv2gMessage(in template V2Greq p_v2gMessage) runs on ItsV2G { v2gPort.send(p_v2gMessage); } } } // end of v2g functions group postambles { group postambles { /** /** Loading ttcn/V2G/LibItsV2G_Templates.ttcn +80 −11 Original line number Original line Diff line number Diff line Loading @@ -7,6 +7,10 @@ */ */ module LibItsV2G_Templates { module LibItsV2G_Templates { // LibCommon import from LibCommon_BasicTypesAndValues all; import from LibCommon_DataStrings all; // LibIts // LibIts import from LibItsV2G_TestSystem all; import from LibItsV2G_TestSystem all; import from LibItsV2G_TypesAndValues all; import from LibItsV2G_TypesAndValues all; Loading Loading @@ -66,6 +70,12 @@ module LibItsV2G_Templates { sdpIn := p_sdpMsg sdpIn := p_sdpMsg }; }; template V2Greq m_generateSdpMessage ( in template (present) Sdp_Message p_sdpMsg ) := { sdpOut := p_sdpMsg }; /** /** * @desc Send template for V2G Message (V2Gport Primitive) * @desc Send template for V2G Message (V2Gport Primitive) * @param p_v2gMsg V2G Message to be sent * @param p_v2gMsg V2G Message to be sent Loading Loading @@ -105,6 +115,28 @@ module LibItsV2G_Templates { payloadLength := ? payloadLength := ? } } /** * @desc Receive template for Header SDP Request Message * @see mw_sdpGenericHeader */ template Sdp_Header mw_sdpHeaderRequest modifies mw_sdpGenericHeader := { protocolVersion := c_protocolVersion1, inverseProtocolVersion := c_inverseProtocolVersion1, payloadType := c_sdpRequestMessagePayloadType, payloadLength := c_sdpRequestPayloadLength } /** * @desc Receive template for Header SDP Response Message * @see mw_sdpGenericHeader */ template Sdp_Header mw_sdpHeaderReponse modifies mw_sdpGenericHeader := { protocolVersion := c_protocolVersion1, inverseProtocolVersion := c_inverseProtocolVersion1, payloadType := c_sdpResponseMessagePayloadType, payloadLength := c_sdpResponsePayloadLength } /** /** * @desc Receive template for Generic Payload of a SDP Request Message * @desc Receive template for Generic Payload of a SDP Request Message */ */ Loading @@ -114,20 +146,31 @@ module LibItsV2G_Templates { } } /** /** * @desc Receive template for Header SDP Request Message * @desc Receive template for Generic Payload of a SDP Response Message * @see mw_sdpGenericHeader */ */ template Sdp_Header mw_sdpHeaderRequest modifies mw_sdpGenericHeader := { template Sdp_Response mw_sdpGenericPayloadResponse := { protocolVersion := c_protocolVersion1, seccIPAddress := ?, inverseProtocolVersion := c_inverseProtocolVersion1, seccPort := ?, payloadType := c_sdpRequestMessagePayloadType, security := ?, payloadLength := 2 transportProtocol := ? } } /** /** * @desc Receive template for SDP Message * @desc Receive template for Specific Payload of a SDP Request Message * @param p_sec Security Encoding field * @param p_transProto Transport Protocol field * @see mw_sdpGenericPayloadRequest */ template Sdp_Request mw_sdpSpecificPayloadRequest(in Oct1 p_sec, in Oct1 p_transProto) modifies mw_sdpGenericPayloadRequest := { security := p_sec, transportProtocol := p_transProto } /** * @desc Receive template for SDP Request Message * @param p_sdpH Header of the message * @param p_sdpH Header of the message * @param p_sdpP Payload of the message * @param p_sdpP Payload of a Request message */ */ template Sdp_Message mw_sdpRequestMessage (in template Sdp_Header p_sdpH, template Sdp_Message mw_sdpRequestMessage (in template Sdp_Header p_sdpH, in template Sdp_Request p_sdpP) := { in template Sdp_Request p_sdpP) := { Loading @@ -137,6 +180,32 @@ module LibItsV2G_Templates { } } } } /** * @desc Receive template for SDP Response Message * @param p_sdpH Header of the message * @param p_sdpP Payload of a Response message */ template Sdp_Message mw_sdpResponseMessage (in template Sdp_Header p_sdpH, in template Sdp_Response p_sdpP) := { sdpHeader := p_sdpH, sdpPayload := { sdpResponse := p_sdpP } } /** * @desc Send template for SDP Request Message * @param p_sdpH Header of the message * @param p_sdpP Payload of a Request message */ template Sdp_Message m_generateSdpRequestMessage (in template Sdp_Header p_sdpH, in template Sdp_Request p_sdpP) := { sdpHeader := p_sdpH, sdpPayload := { sdpRequest := p_sdpP } } } // end sdpMessageTemplates } // end sdpMessageTemplates Loading ttcn/V2G/LibItsV2G_TestSystem.ttcn +1 −0 Original line number Original line Diff line number Diff line Loading @@ -81,6 +81,7 @@ module LibItsV2G_TestSystem { // timers // timers timer tc_v2g_secc_sequenceTimeout := c_v2g_seccSequenceTimeout * 0.95; timer tc_v2g_secc_sequenceTimeout := c_v2g_seccSequenceTimeout * 0.95; timer tc_v2g_evcc_sequenceTimeout := c_v2g_evccSequenceTimeout * 0.95; // Global variables E X A M P L E // Global variables E X A M P L E var sessionIDType_TYPE vc_sId; var sessionIDType_TYPE vc_sId; Loading ttcn/V2G/LibItsV2G_TypesAndValues.ttcn +8 −0 Original line number Original line Diff line number Diff line Loading @@ -158,6 +158,9 @@ module LibItsV2G_TypesAndValues { const Oct2 c_sdpRequestMessagePayloadType := '9000'O; const Oct2 c_sdpRequestMessagePayloadType := '9000'O; const Oct2 c_sdpResponseMessagePayloadType := '9001'O; const Oct2 c_sdpResponseMessagePayloadType := '9001'O; const UInt16 c_sdpRequestPayloadLength := 2; const UInt16 c_sdpResponsePayloadLength := 18; const Oct1 c_securedwithTLS := '00'O; const Oct1 c_securedwithTLS := '00'O; const Oct1 c_noTransportLayerSecurity := '10'O; const Oct1 c_noTransportLayerSecurity := '10'O; Loading @@ -166,11 +169,16 @@ module LibItsV2G_TypesAndValues { const UInt16 c_V2G_UDP_SDP_SERVER := 15118; const UInt16 c_V2G_UDP_SDP_SERVER := 15118; const integer c_maxNbrSdpRequestRetrans := 4; const integer c_maxNbrConsecutiveSdpRequest := 5; } // end sdpValues } // end sdpValues group timerTimeouts group timerTimeouts { { const float c_v2g_seccSequenceTimeout := 60.0; const float c_v2g_seccSequenceTimeout := 60.0; const float c_v2g_evccSequenceTimeout := 40.0; const float c_v2g_sdpRetransmissionTimeout := 0.25; const float c_v2g_sdpRetransmissionTimeout := 0.25; } } } } Loading Loading
ttcn/V2G/LibItsV2G_Functions.ttcn +26 −1 Original line number Original line Diff line number Diff line Loading @@ -215,6 +215,17 @@ f_sdpRequestReceived(p_sdpResponse); f_sdpRequestReceived(p_sdpResponse); } } /** * @desc Performs preamble sending a SDP Message * @param p_sdpMessage SDP message to be sent * @see f_prInitialState() * @see f_sendv2gMessage() */ function f_prSendSdpMessage(in template Sdp_Message p_sdpMessage) runs on ItsV2G { f_prInitialState(); f_sendv2gMessage(m_generateSdpMessage(p_sdpMessage)); } } // end of group preambles } // end of group preambles group sdpFunctions { group sdpFunctions { Loading Loading @@ -257,8 +268,22 @@ v2gPort.send(v_sdpResponseMessage); v2gPort.send(v_sdpResponseMessage); } } } // end of sdp functions group v2gFunctions { /** * @desc Send a V2G message * @param p_v2gMessage V2G message to be sent */ function f_sendv2gMessage(in template V2Greq p_v2gMessage) runs on ItsV2G { v2gPort.send(p_v2gMessage); } } } // end of v2g functions group postambles { group postambles { /** /** Loading
ttcn/V2G/LibItsV2G_Templates.ttcn +80 −11 Original line number Original line Diff line number Diff line Loading @@ -7,6 +7,10 @@ */ */ module LibItsV2G_Templates { module LibItsV2G_Templates { // LibCommon import from LibCommon_BasicTypesAndValues all; import from LibCommon_DataStrings all; // LibIts // LibIts import from LibItsV2G_TestSystem all; import from LibItsV2G_TestSystem all; import from LibItsV2G_TypesAndValues all; import from LibItsV2G_TypesAndValues all; Loading Loading @@ -66,6 +70,12 @@ module LibItsV2G_Templates { sdpIn := p_sdpMsg sdpIn := p_sdpMsg }; }; template V2Greq m_generateSdpMessage ( in template (present) Sdp_Message p_sdpMsg ) := { sdpOut := p_sdpMsg }; /** /** * @desc Send template for V2G Message (V2Gport Primitive) * @desc Send template for V2G Message (V2Gport Primitive) * @param p_v2gMsg V2G Message to be sent * @param p_v2gMsg V2G Message to be sent Loading Loading @@ -105,6 +115,28 @@ module LibItsV2G_Templates { payloadLength := ? payloadLength := ? } } /** * @desc Receive template for Header SDP Request Message * @see mw_sdpGenericHeader */ template Sdp_Header mw_sdpHeaderRequest modifies mw_sdpGenericHeader := { protocolVersion := c_protocolVersion1, inverseProtocolVersion := c_inverseProtocolVersion1, payloadType := c_sdpRequestMessagePayloadType, payloadLength := c_sdpRequestPayloadLength } /** * @desc Receive template for Header SDP Response Message * @see mw_sdpGenericHeader */ template Sdp_Header mw_sdpHeaderReponse modifies mw_sdpGenericHeader := { protocolVersion := c_protocolVersion1, inverseProtocolVersion := c_inverseProtocolVersion1, payloadType := c_sdpResponseMessagePayloadType, payloadLength := c_sdpResponsePayloadLength } /** /** * @desc Receive template for Generic Payload of a SDP Request Message * @desc Receive template for Generic Payload of a SDP Request Message */ */ Loading @@ -114,20 +146,31 @@ module LibItsV2G_Templates { } } /** /** * @desc Receive template for Header SDP Request Message * @desc Receive template for Generic Payload of a SDP Response Message * @see mw_sdpGenericHeader */ */ template Sdp_Header mw_sdpHeaderRequest modifies mw_sdpGenericHeader := { template Sdp_Response mw_sdpGenericPayloadResponse := { protocolVersion := c_protocolVersion1, seccIPAddress := ?, inverseProtocolVersion := c_inverseProtocolVersion1, seccPort := ?, payloadType := c_sdpRequestMessagePayloadType, security := ?, payloadLength := 2 transportProtocol := ? } } /** /** * @desc Receive template for SDP Message * @desc Receive template for Specific Payload of a SDP Request Message * @param p_sec Security Encoding field * @param p_transProto Transport Protocol field * @see mw_sdpGenericPayloadRequest */ template Sdp_Request mw_sdpSpecificPayloadRequest(in Oct1 p_sec, in Oct1 p_transProto) modifies mw_sdpGenericPayloadRequest := { security := p_sec, transportProtocol := p_transProto } /** * @desc Receive template for SDP Request Message * @param p_sdpH Header of the message * @param p_sdpH Header of the message * @param p_sdpP Payload of the message * @param p_sdpP Payload of a Request message */ */ template Sdp_Message mw_sdpRequestMessage (in template Sdp_Header p_sdpH, template Sdp_Message mw_sdpRequestMessage (in template Sdp_Header p_sdpH, in template Sdp_Request p_sdpP) := { in template Sdp_Request p_sdpP) := { Loading @@ -137,6 +180,32 @@ module LibItsV2G_Templates { } } } } /** * @desc Receive template for SDP Response Message * @param p_sdpH Header of the message * @param p_sdpP Payload of a Response message */ template Sdp_Message mw_sdpResponseMessage (in template Sdp_Header p_sdpH, in template Sdp_Response p_sdpP) := { sdpHeader := p_sdpH, sdpPayload := { sdpResponse := p_sdpP } } /** * @desc Send template for SDP Request Message * @param p_sdpH Header of the message * @param p_sdpP Payload of a Request message */ template Sdp_Message m_generateSdpRequestMessage (in template Sdp_Header p_sdpH, in template Sdp_Request p_sdpP) := { sdpHeader := p_sdpH, sdpPayload := { sdpRequest := p_sdpP } } } // end sdpMessageTemplates } // end sdpMessageTemplates Loading
ttcn/V2G/LibItsV2G_TestSystem.ttcn +1 −0 Original line number Original line Diff line number Diff line Loading @@ -81,6 +81,7 @@ module LibItsV2G_TestSystem { // timers // timers timer tc_v2g_secc_sequenceTimeout := c_v2g_seccSequenceTimeout * 0.95; timer tc_v2g_secc_sequenceTimeout := c_v2g_seccSequenceTimeout * 0.95; timer tc_v2g_evcc_sequenceTimeout := c_v2g_evccSequenceTimeout * 0.95; // Global variables E X A M P L E // Global variables E X A M P L E var sessionIDType_TYPE vc_sId; var sessionIDType_TYPE vc_sId; Loading
ttcn/V2G/LibItsV2G_TypesAndValues.ttcn +8 −0 Original line number Original line Diff line number Diff line Loading @@ -158,6 +158,9 @@ module LibItsV2G_TypesAndValues { const Oct2 c_sdpRequestMessagePayloadType := '9000'O; const Oct2 c_sdpRequestMessagePayloadType := '9000'O; const Oct2 c_sdpResponseMessagePayloadType := '9001'O; const Oct2 c_sdpResponseMessagePayloadType := '9001'O; const UInt16 c_sdpRequestPayloadLength := 2; const UInt16 c_sdpResponsePayloadLength := 18; const Oct1 c_securedwithTLS := '00'O; const Oct1 c_securedwithTLS := '00'O; const Oct1 c_noTransportLayerSecurity := '10'O; const Oct1 c_noTransportLayerSecurity := '10'O; Loading @@ -166,11 +169,16 @@ module LibItsV2G_TypesAndValues { const UInt16 c_V2G_UDP_SDP_SERVER := 15118; const UInt16 c_V2G_UDP_SDP_SERVER := 15118; const integer c_maxNbrSdpRequestRetrans := 4; const integer c_maxNbrConsecutiveSdpRequest := 5; } // end sdpValues } // end sdpValues group timerTimeouts group timerTimeouts { { const float c_v2g_seccSequenceTimeout := 60.0; const float c_v2g_seccSequenceTimeout := 60.0; const float c_v2g_evccSequenceTimeout := 40.0; const float c_v2g_sdpRetransmissionTimeout := 0.25; const float c_v2g_sdpRetransmissionTimeout := 0.25; } } } } Loading