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

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

Модератор: immortal

viktor6
Сообщения: 273
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 142 раза
Поблагодарили: 13 раз

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

Сообщение viktor6 » Пн сен 23, 2019 11:04 pm

Всем привет! Помогите написать скрипт или как проще сделать. Суть такова, я установил подсветку на прошивке https://github.com/FabLab-Luenen/McLighting и хочу сделать так что когда дома нет некого то она бы выключалась. Решил сделать через модуль Online. Завел туда IP мобилки в Онлине прописал такой код

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

getURL('http://'.gg('girlynda2.ipaddr').'/auto', 0);
в Офлине

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

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

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

Сообщение Divan » Пн сен 23, 2019 11:11 pm

Скажите, у вас на Raspberry Pi3 есть модуль Bluetooth? У вас на смартфоне WiFi не уходит в ждущий режим, когда телефон выключен?
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
viktor6
Сообщения: 273
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 142 раза
Поблагодарили: 13 раз

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

Сообщение viktor6 » Пн сен 23, 2019 11:20 pm

Divan писал(а):
Пн сен 23, 2019 11:11 pm
Скажите, у вас на Raspberry Pi3 есть модуль Bluetooth?
Нет модулем Блютуз не пользуюсь
Divan писал(а):
Пн сен 23, 2019 11:11 pm
У вас на смартфоне WiFi не уходит в ждущий режим, когда телефон выключен?
Наверное все зависит от телефона я такое замечал на Xiaomi Redmi 4x правда это было давно может и модуль Online глючил.
Raspberry Pi3, с образа от Сергея 3.34
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

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

Сообщение Divan » Пн сен 23, 2019 11:27 pm

Сначала протестируйте для себя оба варианта, Bluetooth и WiFi, создайте два объекта, Вы и жена в "Устройствах онлайн" и "Устройства Bluetooth", как настраивать никого нет дома, вы можете посмотреть здесь Режим: Никого нет дома. Для себя определите рабочий вариант. У меня WiFi на телефоне уходит в ждущий режим и просыпается, когда я включаю телефон, bluetooth работает всегда. Поэтому, если вы настроите работу по bluetooth, то когда вас и жены дома не будет, то свет выключится.
За это сообщение автора Divan поблагодарил:
Sergey.Chek (Пт апр 24, 2020 1:24 am)
Рейтинг: 1.16%
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
viktor6
Сообщения: 273
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 142 раза
Поблагодарили: 13 раз

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

Сообщение viktor6 » Пн сен 23, 2019 11:57 pm

Divan писал(а):
Пн сен 23, 2019 11:27 pm
Сначала протестируйте для себя оба варианта, Bluetooth и WiFi, создайте два объекта, Вы и жена в "Устройствах онлайн" и "Устройства Bluetooth", как настраивать никого нет дома, вы можете посмотреть здесь Режим: Никого нет дома. Для себя определите рабочий вариант. У меня WiFi на телефоне уходит в ждущий режим и просыпается, когда я включаю телефон, bluetooth работает всегда. Поэтому, если вы настроите работу по bluetooth, то когда вас и жены дома не будет, то свет выключится.
Из комментариев понял что "очень древний вариант"
Raspberry Pi3, с образа от Сергея 3.34
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

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

Сообщение Divan » Вт сен 24, 2019 12:35 am

Всмысле древний вариант? Нет такого понятия древний, есть рабочий или не рабочий. Вы можете либо создать простое устройство и при выключении устройства запустится сценарии, либо создать никого нет дома. Вам нужно получить желаемый результат, а как вы его реализуете это вам решать.
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

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

Сообщение Divan » Вт сен 24, 2019 1:19 am

Создаете сценарии на выключение подсветки на два устройства, одно устройство жены, второе устройство мужа. Примерный вариант логики, если ушел муж, жена дома, то подсветку не выключать, если жена ушла, муж дома, подсветку не выключать, если оба ушли, то подсветку выключить, значит нам нужно последнее, когда оба уйдете, то подсветку выключить. Остается вам вычислить, через который промежуток времени ваш смартфон уснет и WiFi перестанет реагировать на запросы, после чего установите в "Устройствах онлайн" интервал проверки когда оффлайн, допустим у вашего телефона WiFi засыпает через 20 минут и просыпается через 20 минут, то ставите тайминг на 21 минуту. Чтобы вам понять когда модуль wifi оффлайн\онлайн, установите модуль телеграмм и пусть на ваш телефон приходит уведомление, что устройство оффлайн\онлайн, так вы примерно вычислите как работает ваш модуль WiFi.

Пример логики в блоках
СпойлерПоказать
Снимок.JPG
Снимок.JPG (31.34 КБ) 3860 просмотров
Пример логики в PHP

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

if (getGlobal("Relay01.status") == 0 && getGlobal("Relay02.status") == 0) {
  getURL('http://'.gg('girlynda2.ipaddr').'/off', 0);
  say('Подсветка выключена', 2);
}
За это сообщение автора Divan поблагодарил:
viktor6 (Вт сен 24, 2019 9:10 am)
Рейтинг: 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 9:14 am

Divan писал(а):
Вт сен 24, 2019 1:19 am
Создаете сценарии на выключение подсветки на два устройства, одно устройство жены, второе устройство мужа. Примерный вариант логики, если ушел муж, жена дома, то подсветку не выключать, если жена ушла, муж дома, подсветку не выключать, если оба ушли, то подсветку выключить, значит нам нужно последнее, когда оба уйдете, то подсветку выключить. Остается вам вычислить, через который промежуток времени ваш смартфон уснет и WiFi перестанет реагировать на запросы, после чего установите в "Устройствах онлайн" интервал проверки когда оффлайн, допустим у вашего телефона WiFi засыпает через 20 минут и просыпается через 20 минут, то ставите тайминг на 21 минуту. Чтобы вам понять когда модуль wifi оффлайн\онлайн, установите модуль телеграмм и пусть на ваш телефон приходит уведомление, что устройство оффлайн\онлайн, так вы примерно вычислите как работает ваш модуль WiFi.

Пример логики в блоках
СпойлерПоказать
Снимок.JPG
Пример логики в PHP

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

if (getGlobal("Relay01.status") == 0 && getGlobal("Relay02.status") == 0) {
  getURL('http://'.gg('girlynda2.ipaddr').'/off', 0);
  say('Подсветка выключена', 2);
}
Спасибо.
Устройствах онлайн работают отлично не каких сбоев не дает тобиш WiFi не засыпает. Вроде как :oops:
СпойлерПоказать
2019-09-24 09:10:05 tries counter reset (status: 1)
2019-09-24 09:09:38 tries counter reset (status: 2)
2019-09-24 09:04:46 tries counter reset (status: 1)
2019-09-24 09:04:16 tries counter reset (status: 2)
2019-09-24 08:33:00 Host is online
2019-09-24 08:33:00 tries counter increased to 2 (status: 1)
2019-09-24 08:32:30 tries counter increased to 1 (status: 1)
2019-09-24 08:32:05 tries counter reset (status: 1)
2019-09-24 07:15:17 Host is offline
2019-09-24 07:15:17 tries counter increased to 2 (status: 2)
2019-09-24 07:14:45 tries counter increased to 1 (status: 2)
2019-09-24 07:14:12 tries counter reset (status: 2)
2019-09-24 07:09:46 tries counter reset (status: 1)
2019-09-24 07:09:15 tries counter reset (status: 2)
2019-09-24 07:08:05 tries counter reset (status: 1)
2019-09-24 07:07:36 tries counter reset (status: 2)
2019-09-24 07:04:35 tries counter reset (status: 1)
2019-09-24 07:04:07 tries counter reset (status: 2)
2019-09-24 07:03:18 tries counter reset (status: 1)
2019-09-24 07:02:50 tries counter reset (status: 2)
2019-09-24 07:01:29 tries counter reset (status: 1)
2019-09-24 07:01:00 tries counter reset (status: 2)
2019-09-24 06:59:29 tries counter reset (status: 1)
2019-09-24 06:58:59 tries counter reset (status: 2)
2019-09-24 06:49:13 tries counter reset (status: 1)
2019-09-24 06:48:43 tries counter reset (status: 2)
2019-09-24 06:48:17 tries counter reset (status: 1)
2019-09-24 06:47:48 tries counter reset (status: 2)
2019-09-24 06:14:15 Host is online
2019-09-24 06:14:15 tries counter increased to 2 (status: 1)
А вод с кодом я не много не понял куда его прописывать :cry:
Raspberry Pi3, с образа от Сергея 3.34
Аватара пользователя
Divan
Сообщения: 859
Зарегистрирован: Пн июл 08, 2019 5:04 pm
Благодарил (а): 117 раз
Поблагодарили: 280 раз

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

Сообщение Divan » Вт сен 24, 2019 11:05 am

Вам нужно создать два простых устройства Телефон жены и Телефон мужа, при создании после чего у вас

Создаете простое устройство Телефон жены, если у вас нет объекта, то ставите галочку, создать объект автоматически
СпойлерПоказать
Снимок3.JPG
Снимок3.JPG (70.07 КБ) 3804 просмотра
В Устройствах онлайн у вас два варианта
1) Выбрать сценарии "Нас нет дома"
2) Вставить код. Пояснение по коду "Relay01.status", этот объект Relay создается при создании простого устройства.
СпойлерПоказать
Снимок2.JPG
Снимок2.JPG (84.67 КБ) 3804 просмотра
Сценарии можете создать двумя способами, в виде кода PHP или в виде боков

1) Создаете сценарии в виде кода, например: Нас нет дома
СпойлерПоказать
Снимок4.JPG
Снимок4.JPG (66.72 КБ) 3804 просмотра

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

if (getGlobal("Relay01.status") == 0 && getGlobal("Relay02.status") == 0) {
  getURL('http://'.gg('girlynda2.ipaddr').'/off', 0);
  say('Подсветка выключена', 2);
}
2) Создаете сценарии в виде блоков, например: Нас нет дома
СпойлерПоказать
Снимок.JPG
Снимок.JPG (31.34 КБ) 3804 просмотра
За это сообщение автора Divan поблагодарили (всего 2):
viktor6 (Вт сен 24, 2019 11:14 am) • Step40 (Вт сен 24, 2019 2:00 pm)
Рейтинг: 2.33%
Xpenology DSM 6.2.2 + Ubuntu Server 18.10 + Majordomo + MariaDB
viktor6
Сообщения: 273
Зарегистрирован: Вс авг 20, 2017 1:46 am
Благодарил (а): 142 раза
Поблагодарили: 13 раз

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

Сообщение viktor6 » Вт сен 24, 2019 11:50 am

Divan писал(а):
Вт сен 24, 2019 11:05 am
Вам нужно создать два простых устройства Телефон жены и Телефон мужа, при создании после чего у вас

Создаете простое устройство Телефон жены, если у вас нет объекта, то ставите галочку, создать объект автоматически
СпойлерПоказать
Снимок3.JPG
В Устройствах онлайн у вас два варианта
1) Выбрать сценарии "Нас нет дома"
2) Вставить код. Пояснение по коду "Relay01.status", этот объект Relay создается при создании простого устройства.
СпойлерПоказать
Снимок2.JPG
Сценарии можете создать двумя способами, в виде кода PHP или в виде боков

1) Создаете сценарии в виде кода, например: Нас нет дома
СпойлерПоказать
Снимок4.JPG

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

if (getGlobal("Relay01.status") == 0 && getGlobal("Relay02.status") == 0) {
  getURL('http://'.gg('girlynda2.ipaddr').'/off', 0);
  say('Подсветка выключена', 2);
}
2) Создаете сценарии в виде блоков, например: Нас нет дома
СпойлерПоказать
Снимок.JPG
Спасибо что так разжевали, но не пойму причем тут простые устройства смысл в их в данном случае?
Raspberry Pi3, с образа от Сергея 3.34
Ответить