Инструменты пользователя

Инструменты сайта


работа_с_mqtt

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
работа_с_mqtt [2023/10/20 00:22]
Admin [Команды и инструкции, которые могут быть переданы в Payload]
работа_с_mqtt [2023/10/24 18:43] (текущий)
admin [Команды и инструкции, которые могут быть переданы в Payload]
Строка 47: Строка 47:
 Настройка mqtt задает (в порядке следования): Настройка mqtt задает (в порядке следования):
  
-* Имя контроллера (к одному брокеру может быть подключен только один контроллер с конкретным именем. Если подключается второй с тем же именем - первый отключается). В данном примере, используется имя **LHexample03** +  * Имя контроллера (к одному брокеру может быть подключен только один контроллер с конкретным именем. Если подключается второй с тем же именем - первый отключается). В данном примере, используется имя **LHexample03** 
  
-* IP или доменное имя брокера +  * IP или доменное имя брокера 
-* Порт (по умолчанию, 1883) +  * Порт (по умолчанию, 1883) 
-* Имя пользователя и пароль (по умолчанию, отсутствуют)+  * Имя пользователя и пароль (по умолчанию, отсутствуют)
  
 ===== MQTT топики ===== ===== MQTT топики =====
Строка 62: Строка 62:
  
  
-* myhome/in/<имя item>+  * myhome/in/<имя item>
  
-* myhome/in/<имя item>/set+  * myhome/in/<имя item>/set
  
-* myhome/in/<имя item>/cmd+  * myhome/in/<имя item>/cmd
  
-* myhome/LHexample03/<имя item>/<иной специфичный для устройства суффикс> 
  
  
Строка 74: Строка 73:
  
  
-* myhome/LHexample03/<имя item>+  * myhome/LHexample03/<имя item>
  
-* myhome/LHexample03/<имя item>/set+  * myhome/LHexample03/<имя item>/set
  
-* myhome/LHexample03/<имя item>/cmd+  * myhome/LHexample03/<имя item>/cmd
  
-* myhome/LHexample03/<имя item>/<иной специфичный для устройства суффикс>+  * myhome/LHexample03/<имя item>/<иной специфичный для устройства суффикс>
  
  
Строка 86: Строка 85:
  
  
-* myhome/s_out/<имя item>+  * myhome/s_out/<имя item>
  
-* myhome/s_out/<имя item>/set+  * myhome/s_out/<имя item>/set
  
-* myhome/s_out/<имя item>/cmd+  * myhome/s_out/<имя item>/cmd
  
  
Строка 123: Строка 122:
 Кондиционер:  Кондиционер: 
  
-* /fan (значения HIGH, MEDIUM, LOW)+  * /fan (значения HIGH, MEDIUM, LOW)
  
-* /mode +  * /mode 
  
-* /lock (ON,OFF)+  * /lock (ON,OFF)
  
-* /swing (ON,OFF)+  * /swing (ON,OFF)
  
-/quiet  (ON,OFF)+  * /quiet  (ON,OFF)
  
 Цветное освещение: Цветное освещение:
  
-* /hue - цвет. Шкала 0-365+  * /hue - цвет. Шкала 0-365
  
-* /sat - насыщенность цвета. 0 - белый, 100 - максимально насыщенный+  * /sat - насыщенность цвета. 0 - белый, 100 - максимально насыщенный
  
-* /hsv - цвет в нотации hue,saturation,volume (три параметра через запятую). Также, этот формат принимается по-умолчанию при записи в иные топики+  * /hsv - цвет в нотации hue,saturation,volume (три параметра через запятую). Также, этот формат принимается по-умолчанию при записи в иные топики
  
-* /rgb - Цвет в нотации RGB или RGBW. (3  или 4 цифры, разделенные запятыми). В отличии от HSV нотации, формат не позволяет менять яркость канала путем передачи значения 0.255 в топик с окончанием /set. Но, как и в случае HSV, цвет сохраняется в MQTT брокере на случай перезапуска, работают команды ON, OFF, XON, XOFF, HALT, REST   +  * /rgb - Цвет в нотации RGB или RGBW. (3  или 4 цифры, разделенные запятыми). В отличии от HSV нотации, формат не позволяет менять яркость канала путем передачи значения 0.255 в топик с окончанием /set. Но, как и в случае HSV, цвет сохраняется в MQTT брокере на случай перезапуска, работают команды ON, OFF, XON, XOFF, HALT, REST   
  
 ===== Служебные топики ===== ===== Служебные топики =====
Строка 180: Строка 179:
   * REST - включить канал(группу), канал будет включен только если он был успешно выключен перед этим командой HALT (крайне удобно для Master выключателей. Контроллер умеет включать только то, что было выключено при уходе)   * REST - включить канал(группу), канал будет включен только если он был успешно выключен перед этим командой HALT (крайне удобно для Master выключателей. Контроллер умеет включать только то, что было выключено при уходе)
  
-  * XON - включить канал (группу)+  * XON - включить канал (группу) (если это не запрещено командой DISABLE). Также см. [[работа_с_mqtt#команды_включаемые_на_время]]
  
-  * XOFF - выключить (но только при условии что канал был включен командой XON) - идеально для использования совместно с детекторами движения+  * XOFF - выключить (но только при условии что канал был включен командой XON) - идеально для временного включения освещения по детектору движения
  
   * TOGGLE: Переключать из состояния ON в OFF. Если применяется для группы - то принимается что если хоть один канал, входящий в группу включен - она активна и при получении TOGGLE произойдет выключение того, что включено. Последующая команда TOGGLE включит все каналы, входящие в группу.   * TOGGLE: Переключать из состояния ON в OFF. Если применяется для группы - то принимается что если хоть один канал, входящий в группу включен - она активна и при получении TOGGLE произойдет выключение того, что включено. Последующая команда TOGGLE включит все каналы, входящие в группу.
Строка 194: Строка 193:
 ==== Команды, применимые для кондиционера и термостата:==== ==== Команды, применимые для кондиционера и термостата:====
  
-* AUTO+  * AUTO
  
-* HEAT+  * HEAT
  
-* COOL+  * COOL
  
-* FAN_ONLY+  * FAN_ONLY
  
-* DRY+  * DRY
  
-* HIGH+  * HIGH
  
-* MED+  * MED
  
-* LOW+  * LOW
  
 Соответственно, данное значение может быть записано в командный топик термостата или кондиционера hbath1. Например: в "myhome/in/h_bath1/cmd" Соответственно, данное значение может быть записано в командный топик термостата или кондиционера hbath1. Например: в "myhome/in/h_bath1/cmd"
Строка 216: Строка 215:
 Соответственно, термостат или кондиционер hbath1 свое состояние будет отражать в следующих статусных топиках: Соответственно, термостат или кондиционер hbath1 свое состояние будет отражать в следующих статусных топиках:
  
-* Режим работы: "myhome/s_out/hbath1/cmd"+  * Режим работы: "myhome/s_out/hbath1/cmd"
  
-* Установленная температура: "myhome/s_out/hbath1/set"+  * Установленная температура: "myhome/s_out/hbath1/set"
  
-* Текущая температура: "myhome/s_out/tbath1"+  * Текущая температура: "myhome/s_out/tbath1"
  
  
Строка 226: Строка 225:
 ==== Прочие команды: ==== ==== Прочие команды: ====
  
-  * ENABLE для PID регулятора - разрешить авторегулирование+  * ENABLE для PID регулятора - разрешить авторегулирование, для всех каналов - разрешить команду XON
  
-  * DISABLE для PID регулятора - запретить авторегулирование+  * DISABLE для PID регулятора - запретить авторегулирование, для всех каналов - запретить команду XON. Использование данной пары команд очень удобно для разрешения - запрещения сценариев временного включения канала. Например временного включения света по датчику движения.
  
   * FREEZE - заблокировать канал, после этого он игнорирует поступающие команды   * FREEZE - заблокировать канал, после этого он игнорирует поступающие команды
Строка 259: Строка 258:
   * "UNFREEZE","FREEZE"   * "UNFREEZE","FREEZE"
  
 +
 +==== Команды, с криптографической подписью  ====
 +
 +В том случае, если надо гарантировать, что, даже получив доступ к локальной сети, MQTT брокеру или HTTP API, потенциальный злоумышленник не сможет выполнить критичную команду (например, открытие ворот), можно использовать механизм цифровой подписи команды. 
 +
 +подробное описание тут [[криптоподпись_команды]]
  
работа_с_mqtt.1697750551.txt.gz · Последнее изменение: 2023/10/20 00:22 — Admin