Sparkplug B C++ Library 1.0.0
Modern C++-23 implementation of Eclipse Sparkplug B 2.2 specification
Loading...
Searching...
No Matches
sparkplug::EdgeNode::Config Struct Reference

Configuration parameters for the Sparkplug B Edge Node. More...

#include <edge_node.hpp>

Public Attributes

std::string broker_url
 MQTT broker URL (e.g., "tcp://localhost:1883" or "ssl://localhost:8883")
 
std::string client_id
 Unique MQTT client identifier.
 
std::string group_id
 Sparkplug group ID (topic namespace)
 
std::string edge_node_id
 Edge node identifier within the group.
 
int data_qos = 0
 MQTT QoS for data messages (NBIRTH/NDATA/DBIRTH/DDATA).
 
int death_qos = 1
 MQTT QoS for NDEATH Will Message. Sparkplug requires 1.
 
bool clean_session = true
 MQTT clean session flag.
 
int keep_alive_interval
 MQTT keep-alive interval in seconds (Sparkplug recommends 60)
 
std::optional< TlsOptionstls {}
 TLS/SSL options (required if broker_url uses ssl://)
 
std::optional< std::string > username {}
 MQTT username for authentication (optional)
 
std::optional< std::string > password {}
 MQTT password for authentication (optional)
 
std::optional< CommandCallback > command_callback {}
 
std::optional< std::string > primary_host_id {}
 
std::optional< LogCallback > log_callback {}
 

Detailed Description

Configuration parameters for the Sparkplug B Edge Node.

Definition at line 114 of file edge_node.hpp.

Member Data Documentation

◆ broker_url

std::string sparkplug::EdgeNode::Config::broker_url

MQTT broker URL (e.g., "tcp://localhost:1883" or "ssl://localhost:8883")

Definition at line 115 of file edge_node.hpp.

◆ clean_session

bool sparkplug::EdgeNode::Config::clean_session = true

MQTT clean session flag.

Definition at line 123 of file edge_node.hpp.

◆ client_id

std::string sparkplug::EdgeNode::Config::client_id

Unique MQTT client identifier.

Definition at line 117 of file edge_node.hpp.

◆ command_callback

std::optional<CommandCallback> sparkplug::EdgeNode::Config::command_callback {}

Definition at line 132 of file edge_node.hpp.

◆ data_qos

int sparkplug::EdgeNode::Config::data_qos = 0

MQTT QoS for data messages (NBIRTH/NDATA/DBIRTH/DDATA).

Sparkplug requires 0.

Definition at line 120 of file edge_node.hpp.

◆ death_qos

int sparkplug::EdgeNode::Config::death_qos = 1

MQTT QoS for NDEATH Will Message. Sparkplug requires 1.

Definition at line 122 of file edge_node.hpp.

◆ edge_node_id

std::string sparkplug::EdgeNode::Config::edge_node_id

Edge node identifier within the group.

Definition at line 119 of file edge_node.hpp.

◆ group_id

std::string sparkplug::EdgeNode::Config::group_id

Sparkplug group ID (topic namespace)

Definition at line 118 of file edge_node.hpp.

◆ keep_alive_interval

int sparkplug::EdgeNode::Config::keep_alive_interval
Initial value:
=
60

MQTT keep-alive interval in seconds (Sparkplug recommends 60)

Definition at line 124 of file edge_node.hpp.

◆ log_callback

std::optional<LogCallback> sparkplug::EdgeNode::Config::log_callback {}

Definition at line 134 of file edge_node.hpp.

◆ password

std::optional<std::string> sparkplug::EdgeNode::Config::password {}

MQTT password for authentication (optional)

Definition at line 131 of file edge_node.hpp.

◆ primary_host_id

std::optional<std::string> sparkplug::EdgeNode::Config::primary_host_id {}

Definition at line 133 of file edge_node.hpp.

◆ tls

std::optional<TlsOptions> sparkplug::EdgeNode::Config::tls {}

TLS/SSL options (required if broker_url uses ssl://)

Definition at line 127 of file edge_node.hpp.

◆ username

std::optional<std::string> sparkplug::EdgeNode::Config::username {}

MQTT username for authentication (optional)

Definition at line 129 of file edge_node.hpp.


The documentation for this struct was generated from the following file: