Нужна помощь из скриптом

Если вы только начинаете осваивать систему MajorDoMo и чего-то не знаете или не можете понять, то задавайте свои вопросы в этой ветке.

Модератор: immortal

Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Нужна помощь из скриптом

Сообщение Divan » Вт сен 24, 2019 4:40 pm

Пожалуйста, главное, что вы поняли и сможете уже сделать то, что вам нужно :)
За это сообщение автора Divan поблагодарил:
viktor6 (Вт сен 24, 2019 4:59 pm)
Рейтинг: 1.16%
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
viktor6
Сообщения: 273
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 142 раза
Поблагодарили: 13 раз

Re: Нужна помощь из скриптом

Сообщение viktor6 » Вт сен 24, 2019 4:58 pm

Какая-то фигня творится в МЖД статус реле при выключенном состоянии через модуль онлай выставляется 2
СпойлерПоказать
547.jpg
547.jpg (11.31 КБ) 3537 просмотров
Raspberry Pi3, с образа от Сергея 3.34
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Нужна помощь из скриптом

Сообщение Divan » Вт сен 24, 2019 5:09 pm

Да, есть такое. Решается таким образом, в методе объекта для жены и мужа вставляете код, который возвращает статус с 2 на 0. Если будет статус больше 2, то он установит статус 0. Почему именно метод statusUpdated? - Потому что, при изменении статуса срабатывает именно этот метод и будет выполняться код, в методе switch, там код на включение\выключение объекта, но не для изменение статуса.

Код для метода объекта "Телефон жены", аналогично делаете и для объекта "Телефон мужа"

Код: Выделить всё

if (getGlobal("Relay15.status") >= 2) {
  setGlobal('Relay15.status', '0');
}
СпойлерПоказать
10-снимок.jpg
10-снимок.jpg (93.54 КБ) 3530 просмотров
11-снимок.jpg
11-снимок.jpg (86.96 КБ) 3530 просмотров
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
Logrus
Сообщения: 2084
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Нужна помощь из скриптом

Сообщение Logrus » Вт сен 24, 2019 5:46 pm

viktor6 писал(а):
Вт сен 24, 2019 4:58 pm
Какая-то фигня творится в МЖД статус реле при выключенном состоянии через модуль онлай выставляется 2
СпойлерПоказать
547.jpg
посмотри у меня в коннекте класс Devices
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Logrus
Сообщения: 2084
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 313 раз
Поблагодарили: 457 раз

Re: Нужна помощь из скриптом

Сообщение Logrus » Вт сен 24, 2019 5:49 pm

viktor6 писал(а):
Вт сен 24, 2019 1:47 pm
А гдето есть полное описание как полностью сам режим реализовать?
сам сформулируй себе задачу и делай потихоньку, на форуме даже блок-схемой выкладывал
а описывать, ну его нафиг, там такая портянка будет и все-равно не поймут и ...
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
viktor6
Сообщения: 273
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 142 раза
Поблагодарили: 13 раз

Re: Нужна помощь из скриптом

Сообщение viktor6 » Пн окт 21, 2019 1:37 pm

Ребята подскажите как сделать в меню выключатель из своими значениями?
Нужно чтобы при включении он передавал

Код: Выделить всё

getURL('http://'.gg('girlynda2.ipaddr').'/on', 0);
А при выключении

Код: Выделить всё

getURL('http://'.gg('girlynda2.ipaddr').'/off', 0);
Raspberry Pi3, с образа от Сергея 3.34
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Нужна помощь из скриптом

Сообщение Divan » Пн окт 21, 2019 1:49 pm

Делаете по этой инструкции

Этот код вставляете в метод turnOn

Код: Выделить всё

getURL('http://'.gg('girlynda2.ipaddr').'/on', 0);
Этот код вставляете в метод turnOff

Код: Выделить всё

getURL('http://'.gg('girlynda2.ipaddr').'/off', 0);
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
viktor6
Сообщения: 273
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 142 раза
Поблагодарили: 13 раз

Re: Нужна помощь из скриптом

Сообщение viktor6 » Пн окт 21, 2019 1:55 pm

Divan писал(а):
Пн окт 21, 2019 1:49 pm
Делаете по этой инструкции

Этот код вставляете в метод turnOn

Код: Выделить всё

getURL('http://'.gg('girlynda2.ipaddr').'/on', 0);
Этот код вставляете в метод turnOff

Код: Выделить всё

getURL('http://'.gg('girlynda2.ipaddr').'/off', 0);
А без простого устройства не как?
Это не поможет?

Код: Выделить всё

if ($this->getProperty('status')) {
getURL('http://'.gg('girlynda2.ipaddr').'/on', 0);
} else {
getURL('http://'.gg('girlynda2.ipaddr').'/off', 0);
}
Raspberry Pi3, с образа от Сергея 3.34
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

Re: Нужна помощь из скриптом

Сообщение Divan » Пн окт 21, 2019 2:16 pm

Простое устройство можно не создавать, вы все равно же создаете объект в классе SRelays, а там есть методы turnOn\Off и switch. Код писать не нужно, вместо этого, роль выполняет метод switch (нужно выбрать запускать родительский метод перед запуском кода), а свойство status вам будет показывать значения 1 или 0. Если вы этот код впишите в метод statusUpdated, то будет кросс-вызов метода, а это уже неправильно.
За это сообщение автора Divan поблагодарил:
viktor6 (Пн окт 21, 2019 3:45 pm)
Рейтинг: 1.16%
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
viktor6
Сообщения: 273
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 142 раза
Поблагодарили: 13 раз

Re: Нужна помощь из скриптом

Сообщение viktor6 » Вт окт 22, 2019 11:35 am

Блин не пойму не фига если запустить два раза скрипт то подсветка включается и выключается хотя в скрипте прописано только выключение

Код: Выделить всё

 if (getGlobal("admin.WiFi") == 0 && getGlobal("luda.WiFi") == 0) {
  callMethod("Relay04.turnOff");
  say('Дома нет не кого, подсветка выключена', 2);
}
Как и советовали создав выключатель через простые устройства и добавил в
turnOf

Код: Выделить всё

getURL('http://'.gg('girlynda2.ipaddr').'/off', 0);
turnOn

Код: Выделить всё

getURL('http://'.gg('girlynda2.ipaddr').'/on', 0);
Raspberry Pi3, с образа от Сергея 3.34
Ответить