NEWS
Regensensr Blockly funtioniert nur sporadisch
-
@duffy
Prinzip: -
Danke für deinen Hinweis. Ist es also nicht so das sich "Wert" (wie bekommst du das so schön farbig hin?) auf den ganzen "Falls Objekt Block bezieht? Ich dachte wenn einer der 4 Regensensoren True ist dann ist der ganze "Falls Objekt Block" True.
Aber gut, wenn ich bei "falls" alle 4 mit "oder" abfragen muß werde ich das gerne mal testen.
Danke dir.Gruß Duffy
-
@duffy sagte: wenn einer der 4 Regensensoren True ist dann ist der ganze "Falls Objekt Block" True.
Beispiel: Wenn 3 Sensoren Regen melden und einer davon wird trocken (
Wert
= false), wird das Intervall gestoppt. -
Das wäre nicht im Sinne des "Erfinders"
Ich habe es jetzt mal umgestrickt aber jetzt kommr gar gar nichts mehr
Schaust dir das bitte noch mal an?Gruß Duffy
-
-
@duffy sagte: Schaust dir das bitte noch mal an?
Trigger?
Das muss so funktionieren. Damit nur ein Telegramm gesendet wird, packe das auch in "falls nicht Intervall". -
Dampfe es gerade ein kann ja die anderen Sachen später vielleicht ergänzen.
-
Also, ich habe es auf den Hinweis von DJMarc75 ensprechend genaus so verucht zu machen wie in deiner Vorlage.
Nun ist es so:Wenn einer der Sensoren true meldet geben beide Echos nur einen kurzen Ton von sich (der Ton den Alexa auch bei anderen aktivitäten von sich gibt, also nicht der Alarmton) und bei Telegram kommt nichts mehr.
Hier noch mal ein Screenshot:
Gruß Duffy
-
@duffy sagte: bei Telegram kommt nichts mehr.
Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.
-
Na ob ich das hinbekomme? Ich gebe mein Bestes:
var Intervall;
on({id: [].concat(['alias.0.Regensensoren.Regensensor_1.Regensensor_1']).concat(['zigbee.0.00158d000944d15d.detected']).concat(['alias.0.Regensensoren.Regensensor_3.Regensensor_3']).concat(['alias.0.Regensensoren.Regensensor_4.Regensensor_4']), change: "ne"}, async function (obj) {
if (getState("alias.0.Regensensoren.Regensensor_1.Regensensor_1").val || getState("alias.0.Regensensoren.Regensensor_2.Regensensor_2").val || getState("alias.0.Regensensoren.Regensensor_3.Regensensor_3").val || getState("alias.0.Regensensoren.Regensensor_4.Regensensor_4").val) {
if (!Intervall) {
sendTo("telegram", "send", {
text: 'Fenster schließen es regnet sonst rein!!'
});
Intervall = setInterval(async function () {
setState("alexa2.0.Echo-Devices.G0913L05927303EE.Commands.sound"/sound/, 'amzn_sfx_scifi_alarm_01');
setState("alexa2.0.Echo-Devices.G091MK061202056V.Commands.sound"/sound/, 'amzn_sfx_scifi_alarm_01');
}, 3000);
}
} else {
(function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
}
});Ich hoffe du kannst was erkennen und vor allem das es das Richtige ist.
Gruß Duffy
-
@duffy sagte: Ich hoffe du kannst was erkennen
In Code tags (oben
</>
) wäre es besser lesbar, aber ich kann es lesen und keinen Fehler finden.EDIT: Starte mal die Javascript-Instanz neu.
-
@duffy sagte in Regensensr Blockly funtioniert nur sporadisch:
geben beide Echos nur einen kurzen Ton von sich (der Ton den Alexa auch bei anderen aktivitäten von sich gibt, also nicht der Alarmton)
die Blöcke mit SOUND bitte durch folgende ersetzen:
jeweils der SpeakDP vom EchoDevice und als Textwert dann folgendes eintragen:
100;<audio src="soundbank://soundlibrary/scifi/amzn_sfx_scifi_alarm_01"/>
die 100 gefolgt von ; gibt die Lautstärke an, welche nur sekundär für diesen Befehl gesetzt wird.
Den Wert NACH dem ; kannst Du bequem aus folgendem Link auswählen:https://developer.amazon.com/en-US/docs/alexa/custom-skills/ask-soundlibrary.html
Hab grad mal Deinen Alarmton getestet... das wäre ein Kündigungsgrund
-
Hi,
jetzt geht es.
Es lag wohl daran das ich die Datenpunkte der Sensoren aus einem Alias bezogen habe. Jetzt habe ich die Original Datenpunkte verwendet und siehe da es funktioniert. Ich habe keine Ahnung warum die Alias Datenpunkte manchmal Probleme machen ist mir auch schon mal davor passiert deshalb dachte ich gerade ich muß das mal mit den Originaldatenpunkten versuchen.
Bemerkenswert ist ja auch das die Echos ja auf die Aliasdatenpunkte reagiert haben, also richtig sind sie gewesen nur die Ausführung an sich hat nicht geklappt. (Vielleicht ist das ja ein Bug)Auf jeden Fall vielen Dank für Deine Mühe und Geduld.
Ach noch eins, "In Code tags (oben </>)" wo hätte ich die finden sollen? Im Skripte Adapter, Also Blockly?
Gruß Duffy
-
@duffy sagte: Mal startet es nicht, mal startet es ich bekomme eine Telegram Nachricht aber kein Echo geht los,
Das hätte auch mit dem ursprünglichen Blockly nicht passieren dürfen. Du hast offenbar an anderer Stelle ein Problem.
-
@duffy sagte: "In Code tags (oben </>)" wo hätte ich die finden sollen? Im Skripte Adapter, Also Blockly?
Über dem Editor-Fenster im Forum (5. Symbol von links).
-
Dein Vorschlag hört sich verlockend an, wäre schön wenn die Lautstärke nur für den Alarm so wäre.
Der Link öffnet sich leider nicht.
Habe es gerade mal so gemacht wie in DEINER
Vorlage, sehr schön es klappt.
Danke auch dir für Deine Mühe.
Gruß Duffy
-
@DJMark75
Hast du das schon so gemeint wo die Lautstärke Bausteine rein sollen?
Wenn ich sie über den Intervall setze ist nur der Erste Intervall laut die restlichen wieder normal, also ich nenne es mal Zimmerlautstärke.
Bei der Einstellung wie im Bild bleibt die Lautstärke zwar bei 100 aber vor jedem Intervall kommt auch noch der Alexatypische Hupton.
Gut schlimm ist das für die Anwendung nicht aber ohne "Hup" wäre es schon auch ganz nettGruß Duffy
-
@duffy sagte in Regensensr Blockly funtioniert nur sporadisch:
Der Link öffnet sich leider nicht.
Dann hast Du bestimmt PiHole oder sonstwas im Einsatz - der Link funktioniert bei mir auf verschiedenen Geräten
@duffy sagte in Regensensr Blockly funtioniert nur sporadisch:
Hast du das schon so gemeint wo die Lautstärke Bausteine rein sollen?
Bitte wie geschrieben die "SoundBlöcke" entfernen.
Und bytheway, der schreckliche Sound ist 2,79 Sekunden lang - daher mindestens 5 Sekunden im Intervall eintragen.
Aber nochmals: wen willst Du denn mit diesem Sound verärgern ? Und dann auch noch als Intervall -
Sorry, jetzt habe ich das erst auf die Reihe bekommen mit dem Sound, der ist ja schon in dem Text hinterlegt.
Mit dem Link das versuche ich noch mal auf meinem Apfelgerät beim Win wills auch ohne AdBlocker nicht.Zu dem Ton
Er ist für mich.Also, ich habe mein SZ im OG und im Sommer habe ich da natürlich die Fenster auf um Durchzug zu bekommen.
Jetzt ist eine Seite leider die Wetterseite, wobei es auch bei Gewitter, auf der genau gegenüberliegenden Seite rein regnen kann. Jetzt stehen diese (modifizierten) Sensoren draussen auf der Fensterbank. Wenn es nun beginnt zu regnen wird es höchste Zeit die Fenster zu schließen und da ist jeder Ton recht um wach zu werden nicht das dann erst recht noch besser weiter schlafe weil der Sound so beruhigend ist.Einen schönen Abend wünscht dir Duffy
-
Ach da, ok, gelobe Besserung.
Hättest du es so gemeint? (Siehe Anlage)
Danke und schönen Abend noch.
Gruß Duffy
var Intervall; on({id: [].concat(['zigbee.0.00158d0008d0962c.detected']).concat(['zigbee.0.00158d000944d15d.detected']).concat(['zigbee.0.00158d0009423e24.detected']).concat(['zigbee.0.00158d0009453b4e.detected']), change: "ne"}, async function (obj) { if (getState("zigbee.0.00158d0008d0962c.detected").val || getState("zigbee.0.00158d000944d15d.detected").val || getState("zigbee.0.00158d0009423e24.detected").val || getState("zigbee.0.00158d0009453b4e.detected").val) { if (!Intervall) { sendTo("telegram", "send", { text: 'Fenster schließen es regnet sonst rein!!' }); } Intervall = setInterval(async function () { setState("alexa2.0.Echo-Devices.G0913L05927303EE.Commands.speak"/*speak*/, '100;<audio src="soundbank://soundlibrary/scifi/amzn_sfx_scifi_alarm_01"/>'); setState("alexa2.0.Echo-Devices.G091MK061202056V.Commands.speak"/*speak*/, '100;<audio src="soundbank://soundlibrary/scifi/amzn_sfx_scifi_alarm_01"/>'); }, 5000); } else { (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})(); } });