Hallo,
hab mir eben auch ein Skrip für Batteriecheckup gebastelt und möchte das sharen.
Prüfung einmal in der Woche nach Schedule.
Ausgabe in Telegram ist:
Low Battery @ sensor_ht_wz im Wohnzimmer = 56.9 (mihome.0.devices.sensor_ht_158d0002b8e917.percent)
// Battery check
schedule('0 8 * * 0', function () {
var itemfound = false;
//find Xiaomi battery percent
$('state[state.id=*.percent][role=battery.percent]').each(function (id, i) {
//console.log(id);
if (getState(id).val < 40){
sendTo("telegram.0", "send", {
text: '🔋 Low Battery @ '
+ getObject(id.substring(0, id.lastIndexOf('.'))).common.name
+ ' im '
+ getObject( id, "rooms").enumNames
+ ' = ' + getState(id).val
+ ' (' + id + ')',
user: 'Michael'
});
itemfound = true;
}
});
// find Homematic lowBat
$('state[state.id=LOWBAT][role=indicator.lowbat]').each(function (id, i) {
//console.log(id);
if (getState(id).val){
sendTo("telegram.0", "send", {
text: '🔋 Low Battery @ '
+ getObject(id.substring(0, id.lastIndexOf('.'))).common.name
+ ' im '
+ getObject( id, "rooms").enumNames
+ ' = ' + getState(id).val
+ ' (' + id + ')',
user: 'Michael'
});
itemfound = true;
}
});
if (!itemfound){
sendTo("telegram.0", "send", {
text: '🔋 Batteries checked. Everything alright.',
user: 'Michael'
});
}
itemfound = false;
});