Browse Source

we should send only buttons events that have actions assigned to them or set BUTTON_MQTT_SEND_ALL_EVENTS to 1 to send everything

ota
ValCob 6 years ago
parent
commit
30285b3a72
2 changed files with 7 additions and 3 deletions
  1. +5
    -3
      code/espurna/button.ino
  2. +2
    -0
      code/espurna/config/general.h

+ 5
- 3
code/espurna/button.ino View File

@ -97,12 +97,14 @@ void buttonEvent(unsigned int id, unsigned char event) {
DEBUG_MSG_P(PSTR("[BUTTON] Button #%u event %u\n"), id, event);
if (event == 0) return;
unsigned char action = buttonAction(id, event);
#if MQTT_SUPPORT
buttonMQTT(id, event);
if (action != BUTTON_MODE_NONE || BUTTON_MQTT_SEND_ALL_EVENTS) {
buttonMQTT(id, event);
}
#endif
unsigned char action = buttonAction(id, event);
if (action == BUTTON_MODE_TOGGLE) {
if (_buttons[id].relayID > 0) {
relayToggle(_buttons[id].relayID - 1);


+ 2
- 0
code/espurna/config/general.h View File

@ -236,6 +236,8 @@
#ifndef BUTTON_LNGLNGCLICK_DELAY
#define BUTTON_LNGLNGCLICK_DELAY 10000 // Time in ms holding the button down to get a long-long click
#define BUTTON_MQTT_SEND_ALL_EVENTS 0 // 0 - to send only events the are bound to actions
// 1 - to send all button events to MQTT
#endif
//------------------------------------------------------------------------------


Loading…
Cancel
Save