Подскажите как написать скрипт
Модератор: immortal
Подскажите как написать скрипт
Чтобы каждый час проговаривал температуру от 1-wire устройства. Спасибо!
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Подскажите как написать скрипт
Во-первых, надо что б в модуле 1-wire было видно это устройство и работало обновление температуры. Затем нужно связать параметр температуры с каким-нибудь свойством объекта. Например, ThisComputer.tempWire1davinci писал(а):Чтобы каждый час проговаривал температуру от 1-wire устройства. Спасибо!
Потом в разделе Объекты найти метод OnNewHour и там в код добавить
say("Температура ".gg('ThisComputer.tempWire1')." градусов");
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Re: Подскажите как написать скрипт
Спасибо за ответ, вот что получается:
Так сделал в настройках датчика:

и вот что получилось (при нажатии тест выдает ошибку и говорит - "температура в комнате градусов", не беря значение из датчика):

Извиняюсь за глупые вопросы, учусь только php, не работал раньше...
Так сделал в настройках датчика:

и вот что получилось (при нажатии тест выдает ошибку и говорит - "температура в комнате градусов", не беря значение из датчика):

Извиняюсь за глупые вопросы, учусь только php, не работал раньше...
Re: Подскажите как написать скрипт
В общем фразу проговаривает, вот только значения температуры как будто закэшились, а во вкладке 1-Wire все нормально обновляется..
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Подскажите как написать скрипт
По идее, если в 1wire температура обновляется, то и в связанной переменной так же должна обновляться. На всякий случай, можно посмотреть через модуль XRay значения свойств -- будет очень странно, если оно отличается от того, что в 1wire, но лучше перепроверить, что б найти где возникает ошибка.davinci писал(а):В общем фразу проговаривает, вот только значения температуры как будто закэшились, а во вкладке 1-Wire все нормально обновляется..
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Re: Подскажите как написать скрипт
В модуле X-Ray не обновляется, в устройствах One-Wire обновляется. Где рыть? Или попробовать переустановить все?
И вот еще - когда нажимаю тест в методе она проговаривает, но выскакивает такое окно:
Это нормально?
И вот еще - когда нажимаю тест в методе она проговаривает, но выскакивает такое окно:
Код: Выделить всё
Request: &object=ClockChime&op=m&m=onNewHour
Warning: Cannot modify header information - headers already sent by (output started at C:\_majordomo\htdocs\objects\index.php:86) in C:\_majordomo\htdocs\objects\index.php on line 96
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Подскажите как написать скрипт
да, этот warning нормально. т.е. не очень красиво, но не критично ))
переустанавливать не спеши ) проверь на всякий случай ещё раз привязку 1wire к переменной -- может где пробел затесался или название не совпадает. там сделано так, что если 1wire обновляется, то связанная переменная должна так же сегда обновляться.
переустанавливать не спеши ) проверь на всякий случай ещё раз привязку 1wire к переменной -- может где пробел затесался или название не совпадает. там сделано так, что если 1wire обновляется, то связанная переменная должна так же сегда обновляться.
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Re: Подскажите как написать скрипт
В общем все снес, почистил реестр, поставил заново, обновил через меню "Резервная копия" и все заработало ))) И, кстати, ошибки этой больше нет - при нажатии тест отрабатывает скрипт без ошибок!
-
- Сообщения: 13
- Зарегистрирован: Вт фев 12, 2013 12:53 am
- Благодарил (а): 0
- Поблагодарили: 1 раз
Re: Подскажите как написать скрипт
Подскажите пожалуйста:
Как забрать последнюю новость из RSS для будильника?
Как забрать последнюю новость из RSS для будильника?
- sergejey
- Site Admin
- Сообщения: 4286
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 76 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Подскажите как написать скрипт
Код: Выделить всё
$data=SQLSelectOne("SELECT * FROM rss_items ORDER BY ADDED DESC LIMIT 1");
//вариант с фильтром по каналу: $data=SQLSelectOne("SELECT * FROM rss_items WHERE CHANNEL_ID=5 ORDER BY ADDED DESC LIMIT 1"); //вместо 5 нужный ID канала
$news_text=$data['BODY']; // текст новости
$news_header=$data['TITLE']; // заголовок
say($news_text); //проговариваем последнюю новость
Код: Выделить всё
$data=SQLSelect("SELECT * FROM rss_items WHERE TO_DAYS(ADDED)=TO_DAYS(NOW()) ORDER BY ADDED"); //выбираем все новости с сегодняшней датой и сортируем по времени добавления
$result='';
if ($data[0]['ID']) {
$total=count($data);
for ($i=0;$i<$total;$i++) {
$result.=$data[$i]['TITLE']; // добавляем все заголовки новостей в одну фразу
}
say($result);
}
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги