mirror of
https://github.com/HASwitchPlate/openHASP.git
synced 2025-07-28 13:46:36 +00:00
Add uri to discovery message
This commit is contained in:
parent
28bf5b55e5
commit
884a466ca9
@ -107,7 +107,7 @@ void dispatch_state_brightness(const char* topic, hasp_event_t eventid, int32_t
|
|||||||
dispatch_state_subtopic(topic, payload);
|
dispatch_state_subtopic(topic, payload);
|
||||||
}
|
}
|
||||||
|
|
||||||
void dispatch_state_antiburn( hasp_event_t eventid)
|
void dispatch_state_antiburn(hasp_event_t eventid)
|
||||||
{
|
{
|
||||||
char topic[9];
|
char topic[9];
|
||||||
char payload[64];
|
char payload[64];
|
||||||
@ -1059,6 +1059,8 @@ void dispatch_send_discovery(const char*, const char*, uint8_t source)
|
|||||||
#if HASP_USE_MQTT > 0
|
#if HASP_USE_MQTT > 0
|
||||||
|
|
||||||
StaticJsonDocument<1024> doc;
|
StaticJsonDocument<1024> doc;
|
||||||
|
char data[1024];
|
||||||
|
char buffer[64];
|
||||||
|
|
||||||
doc[F("node")] = haspDevice.get_hostname();
|
doc[F("node")] = haspDevice.get_hostname();
|
||||||
doc[F("mdl")] = haspDevice.get_model();
|
doc[F("mdl")] = haspDevice.get_model();
|
||||||
@ -1067,6 +1069,13 @@ void dispatch_send_discovery(const char*, const char*, uint8_t source)
|
|||||||
doc[F("pages")] = haspPages.count();
|
doc[F("pages")] = haspPages.count();
|
||||||
doc[F("sw")] = haspDevice.get_version();
|
doc[F("sw")] = haspDevice.get_version();
|
||||||
|
|
||||||
|
#if HASP_USE_HTTP > 0
|
||||||
|
network_get_ipaddress(buffer, sizeof(buffer));
|
||||||
|
doc[F("uri")] = String(F("http://")) + String(buffer);
|
||||||
|
#elif defined(WINDOWS) || defined(POSIX)
|
||||||
|
doc[F("uri")] = "http://google.pt";
|
||||||
|
#endif
|
||||||
|
|
||||||
JsonObject input = doc.createNestedObject(F("input"));
|
JsonObject input = doc.createNestedObject(F("input"));
|
||||||
JsonArray relay = doc.createNestedArray(F("power"));
|
JsonArray relay = doc.createNestedArray(F("power"));
|
||||||
JsonArray led = doc.createNestedArray(F("light"));
|
JsonArray led = doc.createNestedArray(F("light"));
|
||||||
@ -1076,7 +1085,6 @@ void dispatch_send_discovery(const char*, const char*, uint8_t source)
|
|||||||
gpio_discovery(input, relay, led, dimmer);
|
gpio_discovery(input, relay, led, dimmer);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
char data[1024];
|
|
||||||
size_t len = serializeJson(doc, data);
|
size_t len = serializeJson(doc, data);
|
||||||
|
|
||||||
switch(mqtt_send_discovery(data, len)) {
|
switch(mqtt_send_discovery(data, len)) {
|
||||||
|
@ -140,6 +140,30 @@ void network_get_statusupdate(char* buffer, size_t len)
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void network_get_ipaddress(char* buffer, size_t len)
|
||||||
|
{
|
||||||
|
#if HASP_USE_ETHERNET > 0
|
||||||
|
IPAddress ip = Ethernet.localIP();
|
||||||
|
snprintf_P(buffer, len, PSTR("%d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
|
||||||
|
return;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if HASP_USE_WIFI > 0
|
||||||
|
|
||||||
|
#if defined(STM32F4xx)
|
||||||
|
IPAddress ip;
|
||||||
|
ip = WiFi.localIP();
|
||||||
|
snprintf_P(buffer, len, PSTR("%d.%d.%d.%d"), ip[0], ip[1], ip[2], ip[3]);
|
||||||
|
#else
|
||||||
|
strncpy(buffer, WiFi.localIP().toString().c_str(), len);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
return;
|
||||||
|
#endif // HASP_USE_WIFI
|
||||||
|
|
||||||
|
snprintf(buffer, len, "");
|
||||||
|
}
|
||||||
|
|
||||||
void network_get_info(JsonDocument& doc)
|
void network_get_info(JsonDocument& doc)
|
||||||
{
|
{
|
||||||
#if HASP_USE_ETHERNET > 0
|
#if HASP_USE_ETHERNET > 0
|
||||||
|
@ -16,6 +16,7 @@ void networkStop(void);
|
|||||||
|
|
||||||
/* ===== Getter and Setter Functions ===== */
|
/* ===== Getter and Setter Functions ===== */
|
||||||
void network_get_statusupdate(char* buffer, size_t len);
|
void network_get_statusupdate(char* buffer, size_t len);
|
||||||
|
void network_get_ipaddress(char* buffer, size_t len);
|
||||||
void network_get_info(JsonDocument& doc);
|
void network_get_info(JsonDocument& doc);
|
||||||
|
|
||||||
/* ===== Read/Write Configuration ===== */
|
/* ===== Read/Write Configuration ===== */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user