Builder Class

class QKnxNetIpDeviceConfigurationAcknowledgeProxy::Builder

The QKnxNetIpDeviceConfigurationAcknowledgeProxy::Builder class provides the means to create a KNXnet/IP device configuration acknowledgment frame. More...

Public Functions

QKnxNetIpFrame create() const
Builder &setChannelId(quint8 channelId)
Builder &setSequenceNumber(quint8 sequenceNumber)
Builder &setStatus(QKnxNetIp::Error status)

Detailed Description

A KNXnet/IP client connects to a configuration and management data endpoint of a KNXnet/IP server to send device configuration request frames and to receive device configuration acknowledgment frames. A device configuration request is used to read and write KNXnet/IP device configuration data. When a server receives a configuration request, it responds with a device configuration acknowledgment to confirm the reception of the request.

A device configuration acknowledgment frame contains the ID and status of the communication channel between a KNXnet/IP client and server, as well as the sequence number of the device configuration request frame.

The KNXnet/IP server discards device configuration request frames with unexpected sequence numbers and does not send a device configuration acknowledgment upon receiving them.

In most programs, this class will not be used directly. Instead, the QKnxNetIpTunnel or QKnxNetIpDeviceManagement class is used to establish a functional connection to a KNXnet/IP server.

The following code sample illustrates how to read the device configuration request information sent by a KNXnet/IP client:

auto netIpFrame = QKnxNetIpDeviceConfigurationAcknowledgeProxy::builder()
    .setChannelId(200)
    .setSequenceNumber(250)
    .setStatus(QKnx::NetIp::Error::ConnectionId)
    .create();

If the KNXnet/IP client does not receive a device configuration acknowledgment within the specified timeout or the status of a received acknowledgment frame indicates that errors occurred, the client repeats the device configuration request three times and then terminates the connection by sending a disconnection request frame, QKnxNetIpDisconnectRequestProxy, to the server’s control endpoint.

See also Qt KNX Device Management Classes.

Member Function Documentation

QKnxNetIpFrame Builder::create() const

Creates and returns a KNXnet/IP device configuration request frame.

Note: The returned frame may be invalid depending on the values used during setup.

See also isValid().

Builder &Builder::setChannelId(quint8 channelId)

Sets the ID of the communication channel between a KNXnet/IP client and server to channelId and returns a reference to the builder.

Builder &Builder::setSequenceNumber(quint8 sequenceNumber)

Sets the sequence number of a device configuration request frame to sequenceNumber and returns a reference to the builder.

Builder &Builder::setStatus(QKnxNetIp::Error status)

Sets the status of the communication channel between a KNXnet/IP client and server to status and returns a reference to the builder.

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.