голосовое оповещение про открытую дверь

Подключение исполнительных устройств, датчиков, контроллеров.

Модератор: immortal

yurat2008
Сообщения: 147
Зарегистрирован: Сб мар 04, 2017 7:04 pm
Благодарил (а): 15 раз
Поблагодарили: 13 раз

Re: голосовое оповещение про открытую дверь

Сообщение yurat2008 » Пн мар 20, 2017 11:24 am

DimSun75 писал(а):Зачем усложнять? Просто в метод turnOn добавляем запуск таймера и say ("Открываю дверь"), а в метод turnOff убиваем таймер и say закрываем.

Отправлено с моего SM-A520F через Tapatalk
делал так - если просто вывести картинку на экран все ок, но если прописать say(... каждые 5 сек повторяет по кругу
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: голосовое оповещение про открытую дверь

Сообщение nick7zmail » Пн мар 20, 2017 11:24 am

yurat2008 писал(а):Скажите или это работоспособно (нет сейчас возможности проверить)
Что то ты много кода для простой задачи понакатал))) в statusChanged из первого поста добавь что я сказал...так точно должно сработать.

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

if($params['NEW_VALUE']!=$params['OLD_VALUE']) {
if (gg("zzz.status")=="1") {
 ClearTimeOut("reminderGarageTimer");
 say("Входная дверь закрыта.",5);
} else {
 SetTimeOut("reminderGarageTimer","runScript('reminderGarage');", 15*60);
 say("Внимание! Открывается входная дверь.",5);
}
}
Методы turnOn turnOff вообще удалить можешь. Они у тебя по-моему не задействованы.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
DimSun75
Сообщения: 318
Зарегистрирован: Вс янв 01, 2017 8:32 pm
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 44 раза

Re: голосовое оповещение про открытую дверь

Сообщение DimSun75 » Пн мар 20, 2017 11:29 am

Не, turnOn и turnOff как раз нужны. Просто в них нужно убрать $this->setProperty("status", ...

Отправлено с моего SM-A520F через Tapatalk
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: голосовое оповещение про открытую дверь

Сообщение nick7zmail » Пн мар 20, 2017 11:32 am

Как их вызывать то тогда? Если статус прилетает по mqtt в 1 свойство...тогда statuschanged надо допиливать под вызов turnon turnoff...а зачем, если весь код прямо там написать можно?

Отправлено с моего Xperia Z через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
DimSun75
Сообщения: 318
Зарегистрирован: Вс янв 01, 2017 8:32 pm
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 44 раза

Re: голосовое оповещение про открытую дверь

Сообщение DimSun75 » Пн мар 20, 2017 11:34 am

О! А я и не разглядел. Так это датчик открытия?

Отправлено с моего SM-A520F через Tapatalk
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: голосовое оповещение про открытую дверь

Сообщение nick7zmail » Пн мар 20, 2017 11:35 am

Ага :-D... судя по описанию автора по крайней мере...

Отправлено с моего Xperia Z через Tapatalk
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
yurat2008
Сообщения: 147
Зарегистрирован: Сб мар 04, 2017 7:04 pm
Благодарил (а): 15 раз
Поблагодарили: 13 раз

Re: голосовое оповещение про открытую дверь

Сообщение yurat2008 » Пн мар 20, 2017 11:40 am

DimSun75 писал(а):О! А я и не разглядел. Так это датчик открытия?

Отправлено с моего SM-A520F через Tapatalk
Да это банальный смк (геркон)
DimSun75
Сообщения: 318
Зарегистрирован: Вс янв 01, 2017 8:32 pm
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 44 раза

Re: голосовое оповещение про открытую дверь

Сообщение DimSun75 » Пн мар 20, 2017 11:54 am

nick7zmail писал(а):
DimSun75 писал(а):Зачем усложнять? Просто в метод turnOn добавляем запуск таймера и say ("Открываю дверь"), а в метод turnOff убиваем таймер и say закрываем.

Отправлено с моего SM-A520F через Tapatalk
А кто эти методы в таком случае вызывать будет?) метод, на сколько я понял, вызывается statuschanged...2 метода к 1 свойству не привязать...turnon и turnoff вроде вообще в этой схеме не используются.
Не, там похоже к status привязан метод update. А он как раз и вызывает turn-ы. А в них опять установка свойства и все по кругу

Отправлено с моего SM-A520F через Tapatalk
DimSun75
Сообщения: 318
Зарегистрирован: Вс янв 01, 2017 8:32 pm
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 44 раза

Re: голосовое оповещение про открытую дверь

Сообщение DimSun75 » Пн мар 20, 2017 12:02 pm

И да. Весь код нужно в update запихать. На пальцах примерно так

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

if ($params [NEW_VALUE] == "1")
{
Убивает таймер;

 Устанавливаем текст в свойство "закрыто";

Говорим дверь закрыта
} else {
 Запускаем таймер;
 Текстовое свойство открыта;
 Говорим дверь открывается;
}
$this->setProperty("updatedTimestamp",time());

 
Остальные методы ненужных.

Отправлено с моего SM-A520F через Tapatalk
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: голосовое оповещение про открытую дверь

Сообщение nick7zmail » Пн мар 20, 2017 12:21 pm

Вы опять на зацикливание толкаете человека)))
ESP-шка шлет статус каждые 5 сек, соответственно метод будет вызываться каждые 5 сек (вне зависимости от того поменялся статус или нет...значение пришло - метод вызвался)....и опять будет постоянно говорить что закрыта дверь....
Раз он говорит что код рабочий - зачем что то придумывать, достаточно обернуть всё в IF с проверкой изменилось ли состояние по сравнению с предыдущим...тогда единоразово будет отрабатывать код внутри IF, только при изменении состояния.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Ответить