DlmsFrameParse_ReadResponse(ByteBuffer, Int32, DlmsDataResult, UInt16) Method

Parses DLMS ReadResponse and returns attribute values. If this method returned false, the response is not complete and it is needed to request further data blocks. It can be done by sending request composed by Create_ReadRequestNext method. Parsing starts at position index in rawData.

Definition

Namespace: OddPrg.Protocols.DLMS
Assembly: OddPrg.Frames.Dlms (in OddPrg.Frames.Dlms.dll) Version: 2.0.0.24 (2.0.0.24)
C#
public static bool Parse_ReadResponse(
	ByteBuffer rawData,
	ref int index,
	out DlmsDataResult[] results,
	out ushort blockNumber
)

Parameters

rawData  ByteBuffer
Response raw data to parse
index  Int32
Index in rawData.
results  DlmsDataResult
Returned results.
blockNumber  UInt16
In the case of returning value False (block transfer) it returns received block number. In the case of returning value True this parameter has no meaning and returns zero.

Return Value

Boolean
False if block transfer is detected and the last block was not returned. Otherwise True.

Remarks

Abstract syntax of ReadResponsein GB page 206. [12] IMPLICIT ReadResponse ReadResponse ::= SEQUENCE OF CHOICE { data [0] Data, data-access-error [1] IMPLICIT Data-Access-Result, data-block-result [2] IMPLICIT Data-Block-Result, block-number [3] IMPLICIT Unsigned16 }

See Also