From 3eb9298cb104d1fc09e385fadbc8f3171c447f4a Mon Sep 17 00:00:00 2001 From: Mathieu Maret Date: Thu, 14 Apr 2016 01:37:28 +0200 Subject: [PATCH] Correct mqtt simplification --- WifiControlSensor/MQTT.h | 12 ++++++++++++ WifiControlSensor/MQTT.ino | 6 ++++-- 2 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 WifiControlSensor/MQTT.h diff --git a/WifiControlSensor/MQTT.h b/WifiControlSensor/MQTT.h new file mode 100644 index 0000000..4eca9ad --- /dev/null +++ b/WifiControlSensor/MQTT.h @@ -0,0 +1,12 @@ +#pragma once +#include "Adafruit_MQTT.h" + +Adafruit_MQTT_Publish *MqttCreatePublisher(const char *fmt, ...); +int MqttConnect(); +int MqttIsConnected(); +int MqttSetup(char *server, char *user, char *passwd, int port, char * hostname); +int MqttPublish(double temp, double pressure); +int MqttDhtPublish(float temp, float humidity); +void MqttCheckSubscription(); +void MqttChangeGpioValue(int gpio, int value); +bool MqttIsConfigured(); diff --git a/WifiControlSensor/MQTT.ino b/WifiControlSensor/MQTT.ino index e22f34c..a8d5717 100644 --- a/WifiControlSensor/MQTT.ino +++ b/WifiControlSensor/MQTT.ino @@ -41,8 +41,10 @@ int MqttSetup(char *server, char *user, char *passwd, int port, char * hostname) return 0; mqtt = new Adafruit_MQTT_Client(&client, server, port, user, passwd); - mqtt_dht_temp = MqttCreatePublisher("/feeds/%s/dht/temperature", mqttId); - mqtt_dht_humidity = MqttCreatePublisher("/feeds/%s/dht/humidity", mqttId); + mqtt_dht_temp = MqttCreatePublisher(TEMPERATURE_DHT_FEED_FORMAT, mqttId); + mqtt_dht_humidity = MqttCreatePublisher(HUMIDITY_DHT_FEED_FORMAT, mqttId); + mqtt_temp = MqttCreatePublisher(TEMPERATURE_FEED_FORMAT, mqttId); + mqtt_pressure = MqttCreatePublisher(PRESSURE_FEED_FORMAT, mqttId); for (uint i = 0 ; i < NB_ELEMENTS(gpioWatched) && i < MAXSUBSCRIPTIONS; i++) { snprintf(GPIO_FEED[i], FEED_MAX_SIZE, GPIO_FEED_FORMAT, mqttId, gpioWatched[i]);