25#include "grmcdorman/device/Device.h"
29namespace grmcdorman::device
59 void setup()
override;
61 bool publish(DynamicJsonDocument &json)
const override;
62 DynamicJsonDocument
as_json()
const override;
72 return hostname.get();
88 StringSetting hostname;
90 PasswordSetting password;
91 ToggleSetting use_dhcp;
92 StringSetting ip_address;
93 StringSetting subnet_mask;
94 StringSetting default_gateway;
95 ToggleSetting auto_dns;
98 UnsignedIntegerSetting connection_timeout;
99 ToggleSetting publish_rssi;
101 bool tried_connect_on_setup =
false;
103 std::unique_ptr<DNSServer> dns_server;
The generic device interface.
Definition: Device.h:46
This "device" supports WiFi configuration.
Definition: WifiSetup.h:49
void loop() override
Main loop.
Definition: WifiSetup.cpp:206
bool publish(DynamicJsonDocument &json) const override
Publish the value and attributes.
Definition: WifiSetup.cpp:226
bool get_is_published() const override
Get whether the device readings have been published.
Definition: WifiSetup.h:82
const String & get_configured_local_hostname() const
Get the local host name.
Definition: WifiSetup.h:70
void set_defaults() override
Set defaults.
Definition: WifiSetup.cpp:94
DynamicJsonDocument as_json() const override
Get the values, as a JSON document.
Definition: WifiSetup.cpp:239
void setup() override
Setup the device.
Definition: WifiSetup.cpp:99