NEWS
Alexa erzählt etwas anderes als sie soll
-
@nordischerjung
Oh Danke so eine Zeile habe ich gesucht, aber meine "False" Stelle ist aber schon durch die Abfrage belegt.
Kann ich das dann noch als Zusatzabfrage also mit "und" hinten dran hängen oder baue ich mir so auch wieder
eine Falle? ;) -
@codierknecht
Naja es sind 3 Alexas, deswegen habe ich gedacht das ich die Lautstärke bei jeder anpasse. Es ist jedes mal mit einer anderen Alexa verlinkt oder verknüpft. Und dies eben in jeden Block für sich je nachdem welcher aufgerufen wird. ;)@flori sagte in Alex erzählt etwas anderes als sie soll:
@codierknecht
Naja es sind 3 Alexas, deswegen habe ich gedacht das ich die Lautstärke bei jeder anpasse. Es ist jedes mal mit einer anderen Alexa verlinkt oder verknüpft. Und dies eben in jeden Block für sich je nachdem welcher aufgerufen wird. ;)Dass Du in dem bei mir abgeschnittenen Teil die Lautstärke der 3 Tanten setzt ist klar.
Aber vorher schreibst Du 3x die Lautstärke in immer die gleiche Variable - die nie wieder verwendet wird. Das kannst Du Dir an der Stelle sparen.

-
@flori sagte in Alex erzählt etwas anderes als sie soll:
Keine Ahnung was du mir damit sagen willst ;)
Ich habe einfach da wo man die Alarmanlage mit einschaltet mir diese Zahlen heraus gelesen und gehofft das es so funktioniert das er entscheiden kann was geschaltet ist. ;)das meinte @Thomas-Braun nicht. du solltest nur kein Trigger in Trigger packen da es nicht oder falsch funktioniert.
Mach es so zB

So ich habe es einmal so umgesetzt in jedem Block.
Der Trigger im Trigger ist somit auch Geschichte. ;)Testen muß ich aber später. Habe jetzt einiges abgeändert was mir so vorgeschlagen wurde.
Ich sage auf alle Fälle bescheid ob es dann so funktioniert wie es soll.Ein Dankeschön aber trotz dem an Euch alle ;)

-
Meintest Du damit die Alexa App auf den Handy wo ich sie in eine Gruppe packen soll und dann hier ansprechen soll, weil hier im IOBroker wüsste ich bis jetzt noch nicht wie ich das bewerkstelligen soll. Eben Anfänger wenn man so will. ;)
@flori genau!
-
So ich habe es einmal so umgesetzt in jedem Block.
Der Trigger im Trigger ist somit auch Geschichte. ;)Testen muß ich aber später. Habe jetzt einiges abgeändert was mir so vorgeschlagen wurde.
Ich sage auf alle Fälle bescheid ob es dann so funktioniert wie es soll.Ein Dankeschön aber trotz dem an Euch alle ;)

@flori
Statt "Wert von Objekt ID" kannst Du auch direkt den Wert des auslösenden Trigger lesen.

Dazu diesen Block verwenden und auf "Wert" ändern.
Spart Ressourcen ;-) -
@flori sagte in Alex erzählt etwas anderes als sie soll:
@codierknecht
Naja es sind 3 Alexas, deswegen habe ich gedacht das ich die Lautstärke bei jeder anpasse. Es ist jedes mal mit einer anderen Alexa verlinkt oder verknüpft. Und dies eben in jeden Block für sich je nachdem welcher aufgerufen wird. ;)Dass Du in dem bei mir abgeschnittenen Teil die Lautstärke der 3 Tanten setzt ist klar.
Aber vorher schreibst Du 3x die Lautstärke in immer die gleiche Variable - die nie wieder verwendet wird. Das kannst Du Dir an der Stelle sparen.

@codierknecht sagte in Alex erzählt etwas anderes als sie soll:
@flori sagte in Alex erzählt etwas anderes als sie soll:
@codierknecht
Naja es sind 3 Alexas, deswegen habe ich gedacht das ich die Lautstärke bei jeder anpasse. Es ist jedes mal mit einer anderen Alexa verlinkt oder verknüpft. Und dies eben in jeden Block für sich je nachdem welcher aufgerufen wird. ;)Dass Du in dem bei mir abgeschnittenen Teil die Lautstärke der 3 Tanten setzt ist klar.
Aber vorher schreibst Du 3x die Lautstärke in immer die gleiche Variable - die nie wieder verwendet wird. Das kannst Du Dir an der Stelle sparen.

Ne das ist schon richtig so, jedes Gerät hat diesen DP. der heißt im Blockly nur gleich. Man kann nicht sehen auf welcher Alexa der DP zugreift
Edit: aber es müssten dann 3 verschiedene Variablen sein :-)
-
@codierknecht sagte in Alex erzählt etwas anderes als sie soll:
@flori sagte in Alex erzählt etwas anderes als sie soll:
@codierknecht
Naja es sind 3 Alexas, deswegen habe ich gedacht das ich die Lautstärke bei jeder anpasse. Es ist jedes mal mit einer anderen Alexa verlinkt oder verknüpft. Und dies eben in jeden Block für sich je nachdem welcher aufgerufen wird. ;)Dass Du in dem bei mir abgeschnittenen Teil die Lautstärke der 3 Tanten setzt ist klar.
Aber vorher schreibst Du 3x die Lautstärke in immer die gleiche Variable - die nie wieder verwendet wird. Das kannst Du Dir an der Stelle sparen.

Ne das ist schon richtig so, jedes Gerät hat diesen DP. der heißt im Blockly nur gleich. Man kann nicht sehen auf welcher Alexa der DP zugreift
Edit: aber es müssten dann 3 verschiedene Variablen sein :-)
@nordischerjung sagte in Alex erzählt etwas anderes als sie soll:
Ne das ist schon richtig so, jedes Gerät hat diesen DP. der heißt im Blockly nur gleich
Auch das ist klar. Aber er schreibt die Werte der 3 Tanten in immer die gleiche Variable. Wozu?
@nordischerjung sagte in Alex erzählt etwas anderes als sie soll:
Edit: aber es müssten dann 3 verschiedene Variablen sein
Dann hätte er 3 Variablen, die nie wieder verwendet werden. Macht eigentlich wenig Sinn.
-
@flori
Statt "Wert von Objekt ID" kannst Du auch direkt den Wert des auslösenden Trigger lesen.

Dazu diesen Block verwenden und auf "Wert" ändern.
Spart Ressourcen ;-)@Flori
Sieht dann prinzipiell so aus:

-
@nordischerjung sagte in Alex erzählt etwas anderes als sie soll:
Ne das ist schon richtig so, jedes Gerät hat diesen DP. der heißt im Blockly nur gleich
Auch das ist klar. Aber er schreibt die Werte der 3 Tanten in immer die gleiche Variable. Wozu?
@nordischerjung sagte in Alex erzählt etwas anderes als sie soll:
Edit: aber es müssten dann 3 verschiedene Variablen sein
Dann hätte er 3 Variablen, die nie wieder verwendet werden. Macht eigentlich wenig Sinn.
@codierknecht sagte in Alex erzählt etwas anderes als sie soll:
@nordischerjung sagte in Alex erzählt etwas anderes als sie soll:
Ne das ist schon richtig so, jedes Gerät hat diesen DP. der heißt im Blockly nur gleich
Auch das ist klar. Aber er schreibt die Werte der 3 Tanten in immer die gleiche Variable. Wozu?
@nordischerjung sagte in Alex erzählt etwas anderes als sie soll:
Edit: aber es müssten dann 3 verschiedene Variablen sein
Dann hätte er 3 Variablen, die nie wieder verwendet werden. Macht eigentlich wenig Sinn.
Das stimmt, macht nur Sinn wenn man sie danach wieder zurück schreibt
-
@flori sagte in Alex erzählt etwas anderes als sie soll:
@codierknecht
Naja es sind 3 Alexas, deswegen habe ich gedacht das ich die Lautstärke bei jeder anpasse. Es ist jedes mal mit einer anderen Alexa verlinkt oder verknüpft. Und dies eben in jeden Block für sich je nachdem welcher aufgerufen wird. ;)Dass Du in dem bei mir abgeschnittenen Teil die Lautstärke der 3 Tanten setzt ist klar.
Aber vorher schreibst Du 3x die Lautstärke in immer die gleiche Variable - die nie wieder verwendet wird. Das kannst Du Dir an der Stelle sparen.

Ja das mag so sein, nur Programmier technisch kann ich Dir da irgend wie jetzt nicht ganz folgen.
Wenn ich es nur in einen Block rein schreiben würde und sie aber den anderen Block aufruft laut Stand der Alarmanlage wo bekommt sie dann die Lautstärke her?Ich habe die Lautstärke ja ausserhalb des Blocklys nirgends definiert.
Und zwischen den Schaltungen könnte es ja sein das sie zwischenzeitlich mit Lautstärke 60 spielt zum Musik hören zum Beispiel.
Vieleicht habe ich aber auch nur etwas in das Blockly geschrieben was ich irgend wo gesehn habe und mir so gedacht habe ich könnte es für diesen Zweck ganz gut gebrauchen.Was die oberen 3 Zeilen machen ist mir bis jetzt noch ein Rätsel, haben aber eben viele so in Ihren Blocklys verbaut. ;)

-
Ja das mag so sein, nur Programmier technisch kann ich Dir da irgend wie jetzt nicht ganz folgen.
Wenn ich es nur in einen Block rein schreiben würde und sie aber den anderen Block aufruft laut Stand der Alarmanlage wo bekommt sie dann die Lautstärke her?Ich habe die Lautstärke ja ausserhalb des Blocklys nirgends definiert.
Und zwischen den Schaltungen könnte es ja sein das sie zwischenzeitlich mit Lautstärke 60 spielt zum Musik hören zum Beispiel.
Vieleicht habe ich aber auch nur etwas in das Blockly geschrieben was ich irgend wo gesehn habe und mir so gedacht habe ich könnte es für diesen Zweck ganz gut gebrauchen.Was die oberen 3 Zeilen machen ist mir bis jetzt noch ein Rätsel, haben aber eben viele so in Ihren Blocklys verbaut. ;)

@flori sagte in Alex erzählt etwas anderes als sie soll:
Was die oberen 3 Zeilen machen ist mir bis jetzt noch ein Rätsel, .
Du schreibst da die aktuelle Lautstärke der 3 Tanten in eine (immer gleiche) Variable.
Mal abgesehen davon, dass das so keinen Sin macht, verwendest Du diese Variable im weiteren Verlauf offenbar nicht mehr. Diese 3 Zeilen kannst Du Dir also sparen.
Ist kein "Fehler" der irgendwas kaputt macht, aber unnötig.haben aber eben viele so in Ihren Blocklys verbaut
Dann wird der Inhalt der Variablen in deren Blocklys mit Sicherheit später weiterverarbeitet.
Brauchst Du hier nicht.@flori sagte in Alex erzählt etwas anderes als sie soll:
Und zwischen den Schaltungen könnte es ja sein das sie zwischenzeitlich mit Lautstärke 60 spielt zum Musik hören zum Beispiel.
Du setzt ja in den unteren 3 Zeilen die Lautstärke explizit auf "30".
Sinn machen würde das mit 3 unterschiedlichen Variablen.
Da schreibt man dann die jeweilige Lautstärke der Tanten rein.
Nach der Ausgabe des gewünschten Textes könnte man die Lautstärke dann wieder auf den gemerkten Wert zurücksetzen. Machst Du aber nirgendwo.In Pseudocode sähe das ungefähr so aus:
// Aktuelle Lautstärke (in Variablen) merken Setze Lautstaerke1 auf 'Wert von Alexa 1' Setze Lautstaerke2 auf 'Wert von Alexa 2' Setze Lautstaerke3 auf 'Wert von Alexa 3' // Lautstärke für Textausgabe auf "30" setzen Steuere 'Lautstaerke von Alexa1' mit 30 Steuere 'Lautstaerke von Alexa2' mit 30 Steuere 'Lautstaerke von Alexa3' mit 30 // Text ausgeben Textausgabe an Alexa1 Textausgabe an Alexa2 Textausgabe an Alexa3 // Lautstärken wieder auf gemerkte Werte (aus Variablen) setzen Steuere 'Lautstaerke von Alexa1' mit Lautstaerke1 Steuere 'Lautstaerke von Alexa2' mit Lautstaerke2 Steuere 'Lautstaerke von Alexa3' mit Lautstaerke3 -
@flori sagte in Alex erzählt etwas anderes als sie soll:
Was die oberen 3 Zeilen machen ist mir bis jetzt noch ein Rätsel, .
Du schreibst da die aktuelle Lautstärke der 3 Tanten in eine (immer gleiche) Variable.
Mal abgesehen davon, dass das so keinen Sin macht, verwendest Du diese Variable im weiteren Verlauf offenbar nicht mehr. Diese 3 Zeilen kannst Du Dir also sparen.
Ist kein "Fehler" der irgendwas kaputt macht, aber unnötig.haben aber eben viele so in Ihren Blocklys verbaut
Dann wird der Inhalt der Variablen in deren Blocklys mit Sicherheit später weiterverarbeitet.
Brauchst Du hier nicht.@flori sagte in Alex erzählt etwas anderes als sie soll:
Und zwischen den Schaltungen könnte es ja sein das sie zwischenzeitlich mit Lautstärke 60 spielt zum Musik hören zum Beispiel.
Du setzt ja in den unteren 3 Zeilen die Lautstärke explizit auf "30".
Sinn machen würde das mit 3 unterschiedlichen Variablen.
Da schreibt man dann die jeweilige Lautstärke der Tanten rein.
Nach der Ausgabe des gewünschten Textes könnte man die Lautstärke dann wieder auf den gemerkten Wert zurücksetzen. Machst Du aber nirgendwo.In Pseudocode sähe das ungefähr so aus:
// Aktuelle Lautstärke (in Variablen) merken Setze Lautstaerke1 auf 'Wert von Alexa 1' Setze Lautstaerke2 auf 'Wert von Alexa 2' Setze Lautstaerke3 auf 'Wert von Alexa 3' // Lautstärke für Textausgabe auf "30" setzen Steuere 'Lautstaerke von Alexa1' mit 30 Steuere 'Lautstaerke von Alexa2' mit 30 Steuere 'Lautstaerke von Alexa3' mit 30 // Text ausgeben Textausgabe an Alexa1 Textausgabe an Alexa2 Textausgabe an Alexa3 // Lautstärken wieder auf gemerkte Werte (aus Variablen) setzen Steuere 'Lautstaerke von Alexa1' mit Lautstaerke1 Steuere 'Lautstaerke von Alexa2' mit Lautstaerke2 Steuere 'Lautstaerke von Alexa3' mit Lautstaerke3ja das hatte ich aber schon so im Hinterkopf, das sie vieleicht vorne an der Eingangstür nicht so laut spricht das die Alarmanlage ausgeschaltet ist wie im Wohnzimmer. Ich habe sie nur jetzt in dem Starter Blockly auf eine Lautstärke gesetzt. Anpassen wollte ich es dann später wenn dann mal alles vernünftig läuft. Ansonsten hätte ich es ja auch gleich oben in den Programm Kopf geschrieben wo es dann gleichzeitig für alle gilt.
So hätte ich es dann probiert ob es funktioniert zum Beispiel.
So hatte ich mir das vorgestellt. ;)
Aber trotz dem Danke für Deinen Tip. ;) -
@flori sagte in Alex erzählt etwas anderes als sie soll:
Was die oberen 3 Zeilen machen ist mir bis jetzt noch ein Rätsel, .
Du schreibst da die aktuelle Lautstärke der 3 Tanten in eine (immer gleiche) Variable.
Mal abgesehen davon, dass das so keinen Sin macht, verwendest Du diese Variable im weiteren Verlauf offenbar nicht mehr. Diese 3 Zeilen kannst Du Dir also sparen.
Ist kein "Fehler" der irgendwas kaputt macht, aber unnötig.haben aber eben viele so in Ihren Blocklys verbaut
Dann wird der Inhalt der Variablen in deren Blocklys mit Sicherheit später weiterverarbeitet.
Brauchst Du hier nicht.@flori sagte in Alex erzählt etwas anderes als sie soll:
Und zwischen den Schaltungen könnte es ja sein das sie zwischenzeitlich mit Lautstärke 60 spielt zum Musik hören zum Beispiel.
Du setzt ja in den unteren 3 Zeilen die Lautstärke explizit auf "30".
Sinn machen würde das mit 3 unterschiedlichen Variablen.
Da schreibt man dann die jeweilige Lautstärke der Tanten rein.
Nach der Ausgabe des gewünschten Textes könnte man die Lautstärke dann wieder auf den gemerkten Wert zurücksetzen. Machst Du aber nirgendwo.In Pseudocode sähe das ungefähr so aus:
// Aktuelle Lautstärke (in Variablen) merken Setze Lautstaerke1 auf 'Wert von Alexa 1' Setze Lautstaerke2 auf 'Wert von Alexa 2' Setze Lautstaerke3 auf 'Wert von Alexa 3' // Lautstärke für Textausgabe auf "30" setzen Steuere 'Lautstaerke von Alexa1' mit 30 Steuere 'Lautstaerke von Alexa2' mit 30 Steuere 'Lautstaerke von Alexa3' mit 30 // Text ausgeben Textausgabe an Alexa1 Textausgabe an Alexa2 Textausgabe an Alexa3 // Lautstärken wieder auf gemerkte Werte (aus Variablen) setzen Steuere 'Lautstaerke von Alexa1' mit Lautstaerke1 Steuere 'Lautstaerke von Alexa2' mit Lautstaerke2 Steuere 'Lautstaerke von Alexa3' mit Lautstaerke3Ah ja ok, Du setzt den Lautstärke Wert nach der Ausage dann gleich wieder zurück auf den vorherigen Wert wie er ursprünglich war.
-
Ah ja ok, Du setzt den Lautstärke Wert nach der Ausage dann gleich wieder zurück auf den vorherigen Wert wie er ursprünglich war.
@flori sagte in Alex erzählt etwas anderes als sie soll:
Ah ja ok, Du setzt den Lautstärke Wert nach der Ausage dann gleich wieder zurück auf den vorherigen Wert wie er ursprünglich war.
Exakt.
Aber dafür benötigt man halt 3 unterschiedliche Variablen (LS1 bis LS3). -
Ah ja ok, Du setzt den Lautstärke Wert nach der Ausage dann gleich wieder zurück auf den vorherigen Wert wie er ursprünglich war.
-
Keine Ahnung was du mir damit sagen willst ;)
Ich habe einfach da wo man die Alarmanlage mit einschaltet mir diese Zahlen heraus gelesen und gehofft das es so funktioniert das er entscheiden kann was geschaltet ist. ;)
@flori Ja genau, um die States ging es mir. Hatte mich halt gewundert, dass du 0,1 und 3 abfragst. Mein innerer Monk hat die 2 vermisst.
-
Ich weiß nicht was ich falsch mache.
Ich habe 3 absolut gleiche Programmblöcke im Gesamtblockly.
Es wird nach der Uhrzeit geschaut, der Status der Alarmanlge geprüft, eine E-Mail verschickt, die Laustärke der 3 Alexas angepasst und jede Alexa sagt den Status der Alarmanlage in unterschiedlichen Räumen an.Die oberen funktionieren so wie sie sollen und es kommt auch die richtige Ansage so wie im Textfeld festgelegt. Schalte ich aber die Alarmanlage auf den letzten Programmblock bekomme ich immer die Ansage von Alexa
"Ich helfe dir gerne dich mit den richtigen Soundtrack bei Laune zu halten, sage einfach spiele Musik"
Ich habe den Block schon komplett gelöscht, neu geschrieben oder was man sonst so alles machen könnte um den Fehler zu beheben. Aber ich habe immer wieder den gleichen Effekt.Hat da vieleicht einer eine Idee?
Ich arbeite schon länger mit dem IO Broker, bin aber absoluter Leihe was programmieren ausserhalb von Blockly betrifft. Also irgendwelche Programm Code Zeilen programmieren. Also verzeit mir die Länge des Blocklys, aber ich mag es gern übersichtlich das ich in drei Jahren noch weiß was das Programm so alles macht. Es geht mit Sicherheit auch kürzer und übersichtlicher zu programmieren.
Ein Dankeschön schon einmal im voraus.



@flori
Um nicht unnötig Ressourcen zu verbrauchen, sollte "steuere" pro Datenpunkt und "sendTo email" möglichst nur einmal aufgerufen werden. Für die unterschiedlichen auszugebenden Texte verwendet man Variablen. Etwa so:
Mit Rückstellung auf die alte Lautstärke:

-
@flori
Um nicht unnötig Ressourcen zu verbrauchen, sollte "steuere" pro Datenpunkt und "sendTo email" möglichst nur einmal aufgerufen werden. Für die unterschiedlichen auszugebenden Texte verwendet man Variablen. Etwa so:
Mit Rückstellung auf die alte Lautstärke:

@paul53
Wobei ich in solchen Fällen ein Freund vonswitchbin. Macht das Ganze in meinen Augen - gerade für Laien - etwas besser lesbar:

-
@paul53
Wobei ich in solchen Fällen ein Freund vonswitchbin. Macht das Ganze in meinen Augen - gerade für Laien - etwas besser lesbar:

@codierknecht sagte: Freund von switch
Ja, ich auch. Ich habe nicht mitbekommen, dass man nun auch
Wertan "der Fall ist" koppeln kann. Das war in früheren Versionen des JS-Adapters nicht möglich. -
@flori sagte in Alex erzählt etwas anderes als sie soll:
ich mag es gern übersichtlich das ich in drei Jahren noch weiß was das Programm so alles macht
Ein gar nicht mal so schlechter Ansatz ;-)
Ich habe keine Alexandra, aber vielleicht kommt die Tante ja einfach mit dem Text nicht klar.
Hast Du mal versucht, den leicht abzuwandeln? Also sowas wie "Alarmanlage deaktiviert" oder "Alarmsystem aus".@thomas-braun sagte in Alex erzählt etwas anderes als sie soll:
Trigger im Trigger funktioniert nicht.
Da hast Du natürlich (wie immer) Recht.
Aber da die Tante ja zumindest etwas von sich gibt, dürfte das wohl kaum ursächlich sein.@Flori Den Zeitplan-Trigger solltest Du löschen. Stattdessen im Trigger prüfen, ob die aktuelle Uhrzeit in den von Dir gesetzten Grenzen liegt.
Also ich habe jetzt alles probiert Doppeltrigger entfernt, Zeit so verarbeitet wie vorgeschlagen. Sie mag einfach nicht, ich habe den Text ein paar mal abgeändert unter anderen auch in "die Kuh ist vom Eis", "Morgen ist Montag" und einiges mehr.
Es kommt immer wieder das sie sagt "Ich helfe dir gerne dich mit den richtigen Soundtrack bei Laune zu halten, sage einfach spiele Musik"Ist für mich unerklärlich, weil ich sage ihr ja nichts was sie falsch verstehen könnte, sie soll ja nur den Text der im Feld drinne steht auslesen quasi und in Ton umwandeln und ausgeben.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden
