NEWS
Batteriestatus tabellerisch
-
Hallo,
ich möchte gerne in einer Tabelle mir den Status der Batterie anzeigen - siehe Anhang.
Entweder per Widget, html, javascript …. eigentlich egal.
1043_batteriestatus.jpg -
Ist das eine rein informative Mitteilung an den Rest der Community?
Oder eine Frage, Bitte, Suche nach Hilfestellung?
-
Ich mache das aktuell für/mit Telegram. Das Script kann ich nachrreichen, ich bin unterwegs. Sieht dann so aus.
![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201801 ... cee0d9.jpg">https://uploads.tapatalk-cdn.com/20180113/05c99e50f3d36f938181aad354cee0d9.jpg</link_text>" />![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201801 ... c1add0.jpg">https://uploads.tapatalk-cdn.com/20180113/4b88ee848f9b8d71205e0b7c2ec1add0.jpg</link_text>" />~~~~ -
Ist das eine rein informative Mitteilung an den Rest der Community?
Oder eine Frage, Bitte, Suche nach Hilfestellung? `
Eine Frage mit der Bitte um Tips wie eine solche Informationsttabelle anzulegen ist
-
Das Script kann ich nachrreichen, ich bin unterwegs. `
Gerne!
–-----------------------
Send from mobile device
Das schöne ios hat Auto Korrektur zum k****
Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community
-
Das Script kann ich nachrreichen, ich bin unterwegs. `
Gerne!
–-----------------------
Send from mobile device
Das schöne ios hat Auto Korrektur zum k****
Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community `
Hier noch das Script
! ````
on({id: 'telegram.0.communicate.request', change: 'any'}, function (obj) {
var stateval = getState('telegram.0.communicate.request').val; // Statevalue in Variable schreiben
var benutzer = stateval.substring(1,stateval.indexOf("]")); // Benutzer aus Statevalue extrahieren
var befehl = stateval.substring(stateval.indexOf("]")+1,stateval.length); // Befehl/Text aus Statevalue extrahieren
! if (befehl.search(/(?=.*(\bBATTERIE\b|\bVOLL\b|\bLEER\b|\bVOLT\b)).+/ig) != -1) {
sendTo('telegram', {
user: benutzer,
text: 'Für welchen Raum möchtest du die Batterie abfragen?',
reply_markup: {
inline_keyboard: [
// [{ text: 'alle Räume', callback_data: '%Batalle'}],
[{ text: 'Flur', callback_data: '%BatFlur'}],
[{ text: 'Wohnzimmer', callback_data: '%BatWohnzimmer'}],
[{ text: 'Badezimmer', callback_data: '%BatBadezimmer'}],
[{ text: 'Gästezimmer', callback_data: '%BatGaestezimmer'}],
[{ text: 'Schlafzimmer', callback_data: '%BatSchlafzimmer'}],
[{ text: 'Küche', callback_data: '%BatKüche'}],
[{ text: 'Keller Werkstatt', callback_data: '%BatKeller Werkstatt'}],
[{ text: 'Keller Vorratsraum', callback_data: '%BatKeller Vorratsraum'}],
[{ text: 'Keller Sauna', callback_data: '%BatKeller Sauna'}],
[{ text: 'Heizungskeller', callback_data: '%BatHeizungskeller'}],
[{ text: 'Keller Wohnzimmer', callback_data: '%BatKellerwohnzimmer'}],
[{ text: 'Garten', callback_data: '%BatGarten'}],
[{ text: 'Fernbedienung', callback_data: '%BatFernbedienung'}],
]
}
});
}// Auswahl alle Räume oder einzeln.Alle Räume scheint für Telegramm zu lang = Fehler im log
/* else if (befehl === "%Batalle") {
sendTo('telegram', {
user: benutzer,
text: "Batterien alle Räume angefragt",
answerCallbackQuery: {
text: 'Flur\nFlur Haustür ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nFlur Wandthermostat ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nFlur Heizkörper ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
'Wohnzimme\nWohnzimmer Fenster links ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nWohnzimmer Fenster rechts ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nWohnzimmer Wandthermostat ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nWohnzimmer Heizkörper ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt',
showAlert: true
}
});
}*/
else if (befehl === "%BatFlur") {
sendTo('telegram', {
user: benutzer,
text: "Flur Batterie angefragt",
answerCallbackQuery: {
text:
'Flur Haustür ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nFlur Wandthermostat ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nFlur Heizkörper ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nFlur Taster ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatSchlafzimmer") {
sendTo('telegram', {
user: benutzer,
text: "Schlafzimmer Batterie angefragt",
answerCallbackQuery: {
text:
'Schlafzimmer Fenster links ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nSchlafzimmer Fenster rechts ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nSchlafzimmer Wandthermostat ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nSchlafzimmer Heizkörper links ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nSchlafzimmer Heizkörper rechts ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatGaestezimmer") {
sendTo('telegram', {
user: benutzer,
text: "Gästezimmer Batterie angefragt",
answerCallbackQuery: {
text:
'Gästezimmer Fenster links ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nGästezimmer Fenster rechts ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nGästezimmer Wandthermostat ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nGästezimmer Heizkörper ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatWohnzimmer") {
sendTo('telegram', {
user: benutzer,
text: "Wohnzimmer Batterie angefragt",
answerCallbackQuery: {
text:
'Wohnzimmer Fenster links ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nWohnzimmer Fenster rechts ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nWohnzimmer Wandthermostat ' + getState("hm-rpc.0.xx.0.OPERATING_VOLTAGE").val +
' Volt\nWohnzimmer Heizkörper ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatBadezimmer") {
sendTo('telegram', {
user: benutzer,
text: "Badezimmer Batterie angefragt",
answerCallbackQuery: {
text:
'Bad Fenster links ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nBad Fenster rechts ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nBad Wandthermostat ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nBad Heizkörper ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val + ' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatKüche") {
sendTo('telegram', {
user: benutzer,
text: "Küche Batterie angefragt",
answerCallbackQuery: {
text:
'Küche Fenster links ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nKüche Fenster rechts ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nKüche Fenster einzeln ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val + ' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatKeller Werkstatt") {
sendTo('telegram', {
user: benutzer,
text: "Keller Fenster Werkstatt Batterie angefragt",
answerCallbackQuery: {
text:
'Keller Fenster Werkstatt ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val + ' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatKeller Vorratsraum") {
sendTo('telegram', {
user: benutzer,
text: "Keller Fenster Vorratsraum Batterie angefragt",
answerCallbackQuery: {
text:
'Keller Fenster Vorratsraum ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val + ' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatKeller Sauna") {
sendTo('telegram', {
user: benutzer,
text: "Keller Fenster Sauna Batterie angefragt",
answerCallbackQuery: {
text:
'Keller Fenster Sauna links ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nKeller Fenster Sauna rechts ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val + ' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatHeizungskeller") {
sendTo('telegram', {
user: benutzer,
text: "Keller Fenster Heizung Batterie angefragt",
answerCallbackQuery: {
text:
'Fenster Heizungskeller ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val + ' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatKellerwohnzimmer") {
sendTo('telegram', {
user: benutzer,
text: "Keller Wohnzimmer Batterie angefragt",
answerCallbackQuery: {
text:
'Keller WZ einelnes Fenster ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nKeller WZ Fenster links ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nKeller WZ Fenster rechts ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val + ' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatGarten") {
sendTo('telegram', {
user: benutzer,
text: "Garten Batterie angefragt",
answerCallbackQuery: {
text:
'Bewegungsmelder Gartentür ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val + ' Volt',
showAlert: true
}
});
}
else if (befehl === "%BatFernbedienung") {
sendTo('telegram', {
user: benutzer,
text: "Fernbedienungen Batterie angefragt",
answerCallbackQuery: {
text:
'Fernbedienung Heiko ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt\nFernbedienung Kerstin ' + getState("hm-rpc.0.xxx.0.OPERATING_VOLTAGE").val +
' Volt',
showAlert: true
}
});
}
});Die Geräte müssen halt mit den eigenen ersetzt werden. Vielleicht geht es auch einfacher oder eleganter, aber es funktioniert. Vielleicht hat auch Jemand eine Idee wie man alle Werte in eine Liste bekommt ? Wenn ich das versuche, kommt eine Fehlermeldung im Log. (so Sinngemä zu lang/zu groß….für Telegram) Schlüsselwörter stehen oben im Script ( if (befehl.search(/(?=.*(\bBATTERIE\b|\bVOLL\b|\bLEER\b|\bVOLT\b)).+/ig) != -1) {) Ich habe Batterie/voll/leer/volt genommen.....
-
Ganz dumme Frage - wo hast denn du den DP "Operating Voltage" bei HM-Geräten her? hab ich noch nirgends gesehen…
-
ich habe bei al meinen hm geraeten auch nur den wert low_bat, keine bat_voltage
-
Da, (sind alles ip Geräte)
Die "normalen" z.B. Funkgong haben das anscheinend nicht.
![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201801 ... 35246d.jpg">https://uploads.tapatalk-cdn.com/20180113/082541d43860de5ed5022a381d35246d.jpg</link_text>" /> -
Hab nochmal gesucht -bei meinen HM-IP-Rauchmeldern gibt's den DP nicht obwohl er da ja gerade interessant wäre. Beim (netzbetriebenen!) HM-IP-FTD (Funkdimmer) hingegen gibt's den - was hat sich eq3 denn dabei gedacht??? Mehr IP-Geräte hab ich nicht…
-
Hab nochmal gesucht -bei meinen HM-IP-Rauchmeldern gibt's den DP nicht obwohl er da ja gerade interessant wäre. Beim (netzbetriebenen!) HM-IP-FTD (Funkdimmer) hingegen gibt's den - was hat sich eq3 denn dabei gedacht??? Mehr IP-Geräte hab ich nicht… `
ich habe alle meine non-hm-ip geraete (12 verschiedene) durchlaufen da gibt es keinen mit diese batterie wert, wird sich wohl auf hm-ip beschraenken (schade)….
-
stimmt, jetzt wo Du es sagst, bei meinen Rauchmeldern ist der DP auch nicht drinn..(gar nicht drauf geachtet). Das kann ja eigentlich nur ne Firmware Geschichte sein, denn low_bat muss ja auch irgendwo "gemessen" werden…?
-
stimmt, jetzt wo Du es sagst, bei meinen Rauchmeldern ist der DP auch nicht drinn..(gar nicht drauf geachtet). Das kann ja eigentlich nur ne Firmware Geschichte sein, denn low_bat muss ja auch irgendwo "gemessen" werden…? `
das scheint wohl das bloede daran zu sein. Die HM geraete wissen genau wieviel V draif steht sonst koennten sie niemals Low_Bat ausgeben.
Aber scheinbar hat EQ3 diese datenpunkte nicht mitgenommen …
Finde in der CCU auch nur die einstellung per geraet "Low. bat. threshold", also damit definiert man bei welcher voltage die LowBat meldung kommen soll.
Ich habe aber auch in der CCU nirgendwo die jetzige V der geraete finden koennen
~Dutch
-
Hab nochmal gesucht -bei meinen HM-IP-Rauchmeldern gibt's den DP nicht obwohl er da ja gerade interessant wäre. Beim (netzbetriebenen!) HM-IP-FTD (Funkdimmer) hingegen gibt's den - was hat sich eq3 denn dabei gedacht??? Mehr IP-Geräte hab ich nicht… ` bei mir sind es Wandthermostate/Heizungsventile/ optische Tür/Fensterkontakte/ Drehgriffe(Fensterkontakte) und Fernbedienungen…alles IP Geräte die es haben,
Rauchmelder nicht ???
Wäre eigentlich mal eine Anfrage beim Hersteller wert.
-
Ob man den Datenpunkt selbst definieren kann ?
(ich kann nicht testen, habe Besuch…die Regierung guckt schon schief...)
-
Ob man den Datenpunkt selbst definieren kann ?
(ich kann nicht testen, habe Besuch…die Regierung guckt schon schief...) `
:lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol: :lol:
Kan ich mir nicht vorstellen dan muss ja erstmal der wert irgendwo sein und ich finde ihn nirgendwo in de CCU. Dan gibt es 2 moeglichkeiten:
-
die CCU verstekt den wert
-
Man setzt den bat-treshold in der CCU aber diese schikt es dan in den speicher des geraets und die firmware auf dem geraet sendet nur eine Low-Bat konform dem angegebenen wert.
(ich tippe auf das letztere weis aber nicht ob und wie EQ3 das gemacht hat)
-
-
hier ist son Wert….
! ````
{
"from": "system.adapter.hm-rpc.0",
"ts": 1234567,
"common": {
"name": "Fenster Küche einzeln_DEV:0.OPERATING_VOLTAGE",
"type": "number",
"def": 0,
"min": 0,
"max": 25.2,
"read": true,
"write": false
},
"native": {
"ID": "OPERATING_VOLTAGE",
"TYPE": "FLOAT",
"MIN": 0,
"OPERATIONS": 5,
"MAX": 25.2,
"FLAGS": 1,
"DEFAULT": 0
},
"acl": {
"object": 1636,
"owner": "system.user.Heiko",
"ownerGroup": "system.group.administrator",
"state": 1636
},
"_id": "hm-rpc.0.xxx.0.OPERATING_VOLTAGE",
"type": "state"
} -
ja, muss wohl was mit der Firmware zu tun haben. Allerdings, meine IP-Rauchmelder sind genau so jung (1 Monat) wie der IP-Funkdimmer…
-
hier ist son Wert…. `
die werte sind (soweit ich sehen kan) nicht abfragbar, auch mit XML-API auf der CCU habe ich keine batterie werte…
~Dutch
-
Na ja, der Ursprung war ne schnelle Temperaturabfrage mit dem gleichen Script…
![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201801 ... e7625e.jpg">https://uploads.tapatalk-cdn.com/20180113/0b5db58d0b08f2dc0770411c4be7625e.jpg</link_text>" />![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201801 ... 80e3c9.jpg">https://uploads.tapatalk-cdn.com/20180113/e3cb35b5c3ed9320be7dcfce7b80e3c9.jpg</link_text>" />~~~~