Ключевое ?лово

vk

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Железо для умного дома

ТЕМА: ESP8266+MQTT+OpenHab

ESP8266+MQTT+OpenHab 20 Нояб 2016 11:43 #15912

  • Adminhs
  • Adminhs аватар
  • Не в сети
  • Администратор
  • Сообщений: 7195
  • Спасибо получено: 1114
  • Репутация: 194
через гет запрос, через json чтение. Я вообще не вижу смысла мониторить этот параметр , он не точен очень и зависит от погоды
Основной канал проекта в Telegram t.me/wifi_iot
Администратор запретил публиковать записи гостям.

ESP8266+MQTT+OpenHab 20 Нояб 2016 11:50 #15913

  • zloyglide
  • zloyglide аватар
  • Не в сети
  • Новый участник
  • Сообщений: 4
  • Репутация: 0
Я понимаю. Так же как и источник питания от мороза. Высокая точность не важна. +- 30% достаточно. Необходимо понимание когда параметры напряжения на аккумуляторе выходят за определенные рамки. Дальше мониторить буду уже другим инструментом. В общем своя специфика присутствует. Спасибо за ответы.
Администратор запретил публиковать записи гостям.

ESP8266+MQTT+OpenHab 23 Нояб 2016 10:20 #15963

  • tammat
  • tammat аватар
  • Не в сети
  • Давно я тут
  • Сообщений: 93
  • Спасибо получено: 3
  • Репутация: 0
Добрый день,всем!
Подскажите ка перевести секунды в длительность ДД:ЧЧ:ММ:СС c помощью JS
С помощью rule выглядит так: но писать для каждого объекта лишнее.
rule "Seconds to hour ESP "
when
    Item ESP updated 
then
    var UpTime = (ESP.state as DecimalType).intValue()
	var int days= (UpTime/86400)
	var int hours = (UpTime % 86400)/ 3600
	var int minutes = (UpTime % 3600) / 60
	var int seconds =UpTime % 60

	var String HMC =
		String::format("%02d", days) + ":" +
		String::format("%02d", hours) + ":" +
		String::format("%02d", minutes)  + ":" +
		String::format("%02d", seconds) 
    ESP.postUpdate(HMC)
end
Получаю данные по MQ
String ESP_test "Время работы test [%s]" <clock> (Drag1) { mqtt="<[mymosquitto:/ESP/uptime:s2h:state:JS(s2h.js)]" }

Написал скрипт по примеру s2h.js
(function(s)
{
	var days= s/86400
 	var	hours = s % 86400/3600
	var minutes = s % 3600/ 60
	var seconds =s % 60
	String HMC =""+days + ":" +hours+":" +minutes+ ":" + seconds
	return HMC
})
(input)
Постоянные ошибки.
Подскажите, я не знаток JS
Последнее редактирование: 23 Нояб 2016 10:21 от tammat.
Администратор запретил публиковать записи гостям.

ESP8266+MQTT+OpenHab 23 Нояб 2016 12:50 #15973

  • tammat
  • tammat аватар
  • Не в сети
  • Давно я тут
  • Сообщений: 93
  • Спасибо получено: 3
  • Репутация: 0
Ошибка
2016-11-23 12:22:24.982 [WARN ] [o.c.j.i.e.scriptmanager.Script] - Found wrong classloader: To prevent Class loading Problems use this directive in start.sh/-.bat: -Dorg.osgi.framework.bundle.parent=ext
2016-11-23 12:22:24.983 [INFO ] [o.c.j.i.e.scriptmanager.Script] - initializeSciptGlobals for : Oracle Nashorn
2016-11-23 12:22:27.180 [ERROR] [o.o.c.j.i.e.s.ScriptManager   ] - script exception
javax.script.ScriptException: ReferenceError: "input" is not defined in <eval> at line number 1

...
Последнее редактирование: 23 Нояб 2016 12:51 от tammat.
Администратор запретил публиковать записи гостям.

ESP8266+MQTT+OpenHab 23 Нояб 2016 13:34 #15975

  • martiniman
  • martiniman аватар
  • Не в сети
  • Захожу иногда
  • Сообщений: 49
  • Спасибо получено: 6
  • Репутация: 0
tammat пишет:
Добрый день,всем!
Подскажите ка перевести секунды в длительность ДД:ЧЧ:ММ:СС c помощью JS
(function(s)
	{
		var days= s / 86400;
 		var hours = s % 86400 / 3600;
		var minutes = s % 3600 / 60;
		var seconds = s % 60;
		String HMC = "" + days + ":" + hours + ":" + minutes + ":" + seconds;
		return HMC;
	}
)
(input)
Администратор запретил публиковать записи гостям.

ESP8266+MQTT+OpenHab 23 Нояб 2016 16:08 #15979

  • tammat
  • tammat аватар
  • Не в сети
  • Давно я тут
  • Сообщений: 93
  • Спасибо получено: 3
  • Репутация: 0
Опять ошибка в логах.
2016-11-23 16:04:01.674 [WARN ] [o.c.j.i.e.scriptmanager.Script] - Found wrong classloader: To prevent Class loading Problems use this directive in start.sh/-.bat: -Dorg.osgi.framework.bundle.parent=ext
2016-11-23 16:04:01.675 [INFO ] [o.c.j.i.e.scriptmanager.Script] - initializeSciptGlobals for : Oracle Nashorn
2016-11-23 16:04:03.518 [ERROR] [o.o.c.j.i.e.s.ScriptManager   ] - script exception
javax.script.ScriptException: ReferenceError: "input" is not defined in <eval> at line number 1
Насколько я понимаю не хочет понимать input
В items правильно указано?
String ESP_test "Время работы test [%s]" <clock> (Drag1) { mqtt="<[mymosquitto:/ESP/uptime:s2h:state:JS(s2h.js)]" }
Администратор запретил публиковать записи гостям.
Модераторы: FlyRouter
Время создания страницы: 0.123 секунд

Home`s Smart © 2013-2016. г.Киров.
Цитирование материалов возможно только со ссылкой на сайт. Использование фотоматериалов только с разрешения авторов.