Про режимы MajorDomo

Average Rating
0 out of 5 stars. 0 votes.

В MajorDomo есть класс “OperationalModes”, который отвечает за логику режимов. В нём по умолчанию есть почти полный набор режимов, который понадобится любому пользователю.

  • DarknessMode – Режим тёмного времени суток
  • EconomMode – Эконом режим
  • GuestsMode – Гостевой режим
  • NightMode – Ночной режим
  • NobodyHomeMode – Режим “никого дома”
  • SecurityArmedMode – Режим безопасности

Если вы используете индикаторы режимов на сценах, то могли заметить что некоторые режимы можно включить\выключить по клику на сцене, а некоторые нет. Я до конца не понял в чём причина, но грешу на инклуды “простых устройств” в методах активации и деактивации режимов. Проблему решил принудительным выставлением свойства active. Например для неработающего выключателя индикатора для режима “никого дома” я дописал в метод deactivate:

/* begin injection of {SDevices} */
require(DIR_MODULES.'devices/nobodyhomemode_deactivate.php');
/* end injection of {SDevices} */
sg("NobodyHomeMode.active","0");

После этого индикатор стал корректно выключаться.

А вот метод активации activate по какой-то причине у меня нормально активировался и дополнительно включать его не требовалось. Но для режима DarknessMode это пришлось сделать вручную. Как для включения так и для выключения.

С чем связана такая выборочная работа я так и не понял. Если у вас есть предположения, то я буду рад выслушать любые соображения. А пока все могут пользоваться моим предложенным решением.

Режимы в Мажордомо

Как режимы могут влиять на статусы можно прочитать в одном из моих предыдущих постов.

Практическое применение режима безопасности я демонстрирую во в этом видео:

Average Rating
0 out of 5 stars. 0 votes.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>