NEWS
Türklingel Script funktioniert nicht mehr
-
Hallo zusammen
Ich habe festgestellt, dass ich keine Bilder mehr per Telegram erhalte, sobald jemand bei uns geklingelt hat. Dies hat bis anhin ohne Probleme funktioniert. Ich kann auch bestätigen, dass der Datenpunkt nach wie vor geschaltet wird wenn jemand klingelt. Die Sprachausgabe auf Sonos funktioniert nach wie vor. Daher frage ich mich wo das Problem am Script liegt. Ich hatte das Problem und habe dann anschliessend den Javascript Adapter auf 9.0.11 upgedatet. Das Problem existiert nach wie vor.
Hier das Script und Danke für Eure Unterstützung. Im Log erscheint gar nichts was mich auch etwas stutzig macht. Das Versenden des Klingelbildel hat bis vor 1 Woche ca. noch funktioniert. Das abrufen des Bildes via https://192.168.3.108/snap.jpeg geht ohne weiteres. Dies habe ich im Browser überprüft. An was kann es noch liegen?
const user = 'Test'; const caption = 'Es hat soeben geklingelt'; var timeout; function sendImage() { httpGet(`https://192.168.3.108/snap.jpeg`, { responseType: 'arraybuffer', validateCertificate: false}, (err, response) => { if (err) { console.error(err); } else { sendTo('telegram.0', { user, caption, text: createTempFile(`snap.jpg`, response.data), }); } }); } on({ id: 'javascript.0.Geklingelt' /* Geklingelt */, change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; //wenn türklingel innerhalb 35sekunden nochmals gedrückt wird werden keine Bilder mehr gesendet if (!timeout) { timeout = setTimeout(async () => { timeout = null; (() => { if (timeout) { clearTimeout(timeout); timeout = null; }})(); }, 35000); // send 4 images: immediately, in 5, 15 and 30 seconds sendImage(); setTimeout(sendImage, 5000); setTimeout(sendImage, 15000); setTimeout(sendImage, 30000); } }); -
Habs gerade selber erkannt was das Problem ist. Ich hatte in Telegram meinen Benutzername geändert. Nun gehen die Skripte natürlich nicht mehr die diesen Empfänger drin hatten. Wenn ich den korrekten User einsetze geht es wieder wie vorhin. Somit also erledigt.