Страница 18 из 18

Re: вопросы от новичка

Добавлено: Сб мар 28, 2020 10:48 pm
Sergey.Chek
Chainik писал(а): Сб мар 28, 2020 10:28 pm Тогда надо вернуть восклицательный знак и попробовать действовать "в лоб". Инвертируем значение переменной на входе.
После строчки

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

$status = $this->getProperty('status');
вставляем фрагмент

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

If ($status <> 0) {
$status = 0;
} else {
$status = 1;}
По идее должно помочь.
Огромное спасибо! Заработало как положено!

Re: вопросы от новичка

Добавлено: Вс мар 29, 2020 9:35 pm
Logrus
Sergey.Chek писал(а): Сб мар 28, 2020 9:22 pm
Logrus писал(а): Вт фев 06, 2018 9:34 pm
ypiter2006 писал(а):в телеграмме был вопрос
возможно это то что нужно
в SDevices/SOpenClose в метод logicAction у объекта "входная дверь"

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

$ot = $this->object_title;
$status = $this->getProperty('status');
$updatedTime = $this->getProperty('updated');
$passed = time() - $updatedTime;
$newTimeout = 0;

if (!$status) {
    ClearTimeOut($ot.'_passed');
    say("Входная дверь закрыта",2);
}

if ($passed < 60 && $status) {
    $newTimeout = 60;
    say("Входная дверь открыта",2);
} elseif ($passed < 90 && $status) {
    $newTimeout = 120;
    say("Входная дверь открыта ".round($passed/60)." минуту",2);
} elseif ($passed < 240 && $status) {
    $newTimeout = 120;
    say("Входная дверь открыта ".round($passed/60)." минуты",2);
} elseif ($passed < 1900 && $status) {
    $newTimeout = 300;
    say("Входная дверь открыта ".round($passed/60)." минут",2);
}

if ($newTimeout > 0) {
    setTimeOut($ot.'_passed','callMethod("'.$ot.'.logicAction");',$newTimeout);
}
это на входную дверь:
при открытой - Входная дверь открыта, Входная дверь открыта 1 минуту, Входная дверь открыта 3 минуты, Входная дверь открыта 5 минут и далее с 5-ти минутным интервалом до 30 минут включительно
при закрытой - Входная дверь закрыта

п.с. у датчика от броадлинк в свойства 0 при закрытой, 1 при открытой, у сяоми наоборот
У меня 0 при открытой, 1 при закрытой. Что нужно в коде изменить? Спасибо.
там откуда вы это цитировали долистать до следующей страницы

Re: вопросы от новичка

Добавлено: Вс мар 29, 2020 11:39 pm
Sergey.Chek
При закрытой двери напоминания каждые 10 минут.
Так и должно быть?

Re: вопросы от новичка

Добавлено: Пн мар 30, 2020 12:28 am
Logrus
Снимок.PNG
Снимок.PNG (32.17 КБ) 4699 просмотров
если б была открыта долго, то сказала б на 1,3, каждой 5-й до достижения 30 минут и далее можно действия
как впрочем и в любом месте изменить

Re: вопросы от новичка

Добавлено: Чт апр 02, 2020 3:25 pm
Sergey.Chek
Sergey.Chek писал(а): Вс мар 29, 2020 11:39 pm При закрытой двери напоминания каждые 10 минут.
Так и должно быть?
Понял, почему так происходит, у меня отправка данных стоит 10 минут.
В остальных методах кроме logicaction ни чего не прописано.
Что же нужно сделать, чтобы Алиса проговаривала один раз, при изменении статуса, а не тарабанила каждые 10 минут.
Спасибо.

Re: вопросы от новичка

Добавлено: Пт апр 03, 2020 5:54 pm
xor
Sergey.Chek писал(а):
Sergey.Chek писал(а): Вс мар 29, 2020 11:39 pm При закрытой двери напоминания каждые 10 минут.
Так и должно быть?
Понял, почему так происходит, у меня отправка данных стоит 10 минут.
В остальных методах кроме logicaction ни чего не прописано.
Что же нужно сделать, чтобы Алиса проговаривала один раз, при изменении статуса, а не тарабанила каждые 10 минут.
Спасибо.
Вы где статус проверяете? в привязанном к свойству методе доступны параметры олд_валуе и нью_валюе. Вот их и проверяйте.

Отправлено с моего Redmi 4X через Tapatalk