Closed elzershark closed 3 years ago
Ich habe vermutlich das gleiche Problem. Bei mir wird über den iot Adapter der KNX Adapter angesteuert. Bislang funktionierte der Alexa Befehl Stelle Heizung Wohnzimmer auf 23°. Rückmeldung Heizung ist auf 23° gestellt. Mit der Version 15 kommt als Antwort, Heizung ist auf 0 Grad gestellt.
Der RAW Inhalt:
{
"from": "system.adapter.admin.0",
"user": "system.user.admin",
"ts": 1577927943543,
"common": {
"name": "Temperatur Vorgabe ",
"type": "number",
"role": "value.temperature",
"desc": "DTP-9",
"unit": "°C",
"min": 7,
"max": 25,
"read": false,
"write": true,
"smartName": {
"de": "Heizung Wohnzimmer",
"smartType": "THERMOSTAT"
}
},
"native": {
"address": "6/4/2",
"addressRefId": "P-06C0-0_GA-181",
"statusGARefId": "",
"actGARefId": "",
"dpt": "DPT9.001"
},
"acl": {
"object": 1638,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator",
"state": 1638
},
"_id": "knx.0.Heizungssteuerung_EG.Wohnzimmer.Temperatur_Vorgabe_",
"type": "state"
}
Ich überarbeite heute Abend nochmals meinen Bugfix.
Das Problem ist man kann per Alexa die Soll Temperatur abfragen, setzen und die Ist Temperatur abfragen. Version vor 1.7.15: Wenn man die Ist Temperatur abgefragt hat antwortete Alexa mit dem Durchschnittswert von Ist- und Solltemperatur. Wenn man die Soll Temperatur per Alexa gesetzt hat wurde diese auch auf den Ist Temperaturdatenpunkt geschrieben
Mit der Version 1.7.15 muss der Sollwert Datenpunkt zwingend die Rolle "level.temperature" haben und der Istwert Datenpunkt die Rolle "value.temperature".
Meine Idee wäre jetzt den Sollwert Datenpunkt mittels (read = true && write = true) oder Rolle "level.temperature" zu identifizieren. Den Istwert Datenpunkt würde ich jetzt (read = true && write = false) oder Rolle "value.temperature" identifizieren.
Was denkt Ihr?
Habe das gleiche Problem: Rückmeldungen von Alexa beim Einstellen der Zieltemperatur immer: "Ist auf null Grad gestellt". Version 1.7.14 hat noch funktioniert, gerade mal schnell "downgegraded" ;-)
node.js: 12.19.0 npm: 6.14.8 js-controller: 3.1.6 iot-Adapter: 1.7.15
Reihe mich auch ein. In der Alexa App sieht man, dass die Thermostate quasi als read only erkannt werden. "Ist auf null grad..." Aber danke für die rasche Lösung bzw Info:
Mit der Version 1.7.15 muss der Sollwert Datenpunkt zwingend die Rolle "level.temperature" haben und der Istwert Datenpunkt die Rolle "value.temperature".
value.temperature = Termostat level.temperature = Beleuchtung
Also im Standardfall... Glaub ich... Denke ich.. 😁 Weil alles was mit Licht zu tun hat, ist fast alles mit level.xxx und alles was mit temperatur ist fängt mit value.xxx an.. meistens...
level.color.temperature z.b. ist Beleuchtung. So ist mein Gedanke. Ob stimmt.. k.a. 😁
Im Alexa2 Adapter ist das anders. Da ist alles mit level.xxx
Zigbee Adapter Termostate sind alle value.xxx
Also muss quasy value.temperature zwingend funktionieren. Sonst gehen viele Adapter nicht bei Temperatur
Das stimmt aber nicht mit der Rollendefinition überein. Da sind value. reine Read Only Datenpunkte. Und level. Read/Write Datenpunkte.
Könnt Ihr mit der Version vor 1.7.15 alle Abfragen bzw. Einstellungen per Alexa durchführen?
https://github.com/ioBroker/ioBroker/blob/master/doc/STATE_ROLES.md
Die Seite hatte ich gesucht.. Jo.. Also einfach value.xxx integrieren. level.temperature haben kaum/keine Adapter die Termostate integrieren können.
Wie sieht deine Alexa Definition aus? Du musst ja in der Definition auch zwei Variablen auf einen Smart Name verbunden haben, sonst können ja nicht alle drei Abfragen bzw. Befehle gehen. Eine value.xxx Variable kann nach der Definition ja nur ein Temperatursensor sein.
Damit alles Funktioniert müsste Deine Definition ja ungefähr wie folgt aussehen:
Ich habe es bei mir so jetzt angelegt. Ist Temperatur kann ich abfragen und auch einen Wert einstellen. Allerdings kann ich nicht den Sollwert Abfrage. Dort kommt der istwert
Ist der Sollwert Datenpunkt auf read = true && write = true und die Rolle "level.temperature" eingestellt? Ist der Istwert Datenpunkt auf (read = true && write = false) und Rolle "value.temperature"?
Nein bislang ist nur IST auf read und SOLL auf write.
Und wenn Du die wie angegeben umstellst, funktioniert es dann?
Wie mache ich es denn wenn ich drei Objekte habe?
2 und 3 können voreinander abweichen zum Beispiel durch die Nachtabsenkung oder keine Anwesenheit. Kann man das auch realisieren? Aktuell setzte ich 3 und Frage 1 ab. Den Sollwert Ansicht kann ich aktuell nicht Abfragen.
Das kann der Adapter momentan noch nicht. Ich bin mir auch nicht sicher ob das sinnvoll ist. Nehmen wir mal an mir ist es zu kalt bzw. zu warm im Wohnzimmer, dann frage ich ab wie die Heizung eingestellt ist und dann verändere ich die Einstellung. Für mich macht es dann nur Sinn wenn ich dann den Wert angesagt bekomme, welchen ich dann auch verstelle.
Ich habe es Mal probiert. Wenn ich so mit der anderen Rolle mache, akzeptiert es der KNX Adapter nicht mehr. Alexa sagt wurde auf x Grad gestellt, im KNX System kommt aber nichts an. Bin wieder auf ursprünglichen Rollen und read write mit der 14er Version
Welche Version des KNX Adapters verwendest Du? Ich verwende auch den KNX Adapter. Kannst Du mal bitte einen Screenshot deiner Datenpunkte und einen Screenshot der Alexa Konfiguration posten?
Muss so sein, wie ich geschrieben habe...
Das was geändert werden MUSS ist das level.temperature bei read/write = true AUCH funktioniert mit value.temperature. Sonst kann man die meisten Adapter nicht einsetzen.
Oder einfach gesagt.. Es muss wieder so hergestellt werden wie es sonst immer war.. Temperatur = value.temperature. Egal welche Datenpunkte das sind.
Bonus wäre wenn auch level.xxx funzt
P.S. Im Alexa2 Adapter sind alle Datenpunkte level.xxx. Denke, das das dann das "richtige" wäre. Das würde aber bedeuten, das alle Adapter das ändern müssen...
Ich habe soeben einen Pull Request erstellt. Bei dieser Änderung mache ich die Identifizierung der Ist/Sollwert Datenpunkte analog zu den Icons welche im Geräte Konfigurationsfenster angezeigt werden.
IST:
{
"common": {
"name": "Temperatur Ist ",
"type": "number",
"role": "value.temperature",
"desc": "DPT-9",
"unit": "°C",
"min": 0,
"max": 30,
"read": true,
"write": false,
"smartName": {
"de": "Temperatur Wohnzimmer",
"smartType": "THERMOSTAT"
},
"custom": {
"sql.0": {
"enabled": true,
"changesOnly": true,
"debounce": "1000",
"retention": "1209600",
"changesRelogInterval": "60",
"changesMinDelta": 0,
"storageType": "",
"aliasId": ""
}
}
},
"native": {
"address": "6/4/0",
"addressRefId": "P-06C0-0_GA-179",
"statusGARefId": "",
"actGARefId": "",
"dpt": "DPT9.001"
},
"acl": {
"object": 1638,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator",
"state": 1638
},
"_id": "knx.0.Heizungssteuerung_EG.Wohnzimmer.Temperatur_Ist_",
"type": "state",
"from": "system.adapter.admin.0",
"ts": 1520472366304,
"user": "system.user.admin"
}
SOLL
{
"_id": "knx.0.Heizungssteuerung_EG.Wohnzimmer.Temperatur_Soll_",
"type": "state",
"common": {
"name": "Temperatur Soll ",
"type": "number",
"role": "value.temperature",
"desc": "DPT-9",
"unit": "°C",
"min": 0,
"max": 1,
"read": false,
"write": true,
"smartName": false,
"custom": {
"sql.0": {
"enabled": true,
"changesOnly": true,
"debounce": "1000",
"retention": "1209600",
"changesRelogInterval": "60",
"changesMinDelta": 0,
"storageType": "",
"aliasId": ""
}
}
},
"native": {
"address": "6/4/1",
"addressRefId": "P-06C0-0_GA-180",
"statusGARefId": "",
"actGARefId": "",
"dpt": "DPT9.001"
},
"acl": {
"object": 1638,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator",
"state": 1638
},
"from": "system.adapter.admin.0",
"ts": 1520472373933,
"user": "system.user.admin"
}
SOLL Vorgabe
{
"common": {
"name": "Temperatur Vorgabe ",
"type": "number",
"role": "value.temperature",
"desc": "DTP-9",
"unit": "°C",
"min": 7,
"max": 25,
"read": false,
"write": true,
"smartName": {
"de": "Heizung Wohnzimmer",
"smartType": "THERMOSTAT"
}
},
"native": {
"address": "6/4/2",
"addressRefId": "P-06C0-0_GA-181",
"statusGARefId": "",
"actGARefId": "",
"dpt": "DPT9.001"
},
"acl": {
"object": 1638,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator",
"state": 1638
},
"_id": "knx.0.Heizungssteuerung_EG.Wohnzimmer.Temperatur_Vorgabe_",
"type": "state",
"from": "system.adapter.admin.0",
"user": "system.user.admin",
"ts": 1577927943543
}
Und das bringt was? Das ist erstmal nur wegen der Anzeige ja? Von der Funktion her hat sich nichts geändert. b.z.w. was heißt Pull Request? Zum testen über die Katze installieren?
Du kannst meine Änderung vorab testen. Installiere den Adapter aus folgenden Link: https://github.com/Morluktom/ioBroker.iot.git Da sind die Gültigkeitsabfragen erweitert.
Funzt. Perfekt.
https://github.com/Morluktom/ioBroker.iot.git
Getestet in allen Variationen. level, value, gemischt,... Läuft. Keine Besonderheiten im Log. thx. 👍😁
Danke für die Rückmeldung. Der Pull Request wurde übernommen => sollte erledigt sein
Mit der neuen 1.8.0 läuft alles wieder super!
funzt
Danke an alle!!
@Apollon77 Ich habe auch das Problem, dass ich keine Temperaturdaten in Alexa bekomme.
write = true = "stelle temperatur auf xxx" write = false = "wie ist die temperatur von xxx" Erstellst du beide Datenpunkte und fügst beide zusammen ein, kannst du abfragen und erstellen
Wie füge ich sie zusammen?
Beide den selben Smartnamen geben in der iot
@Apollon77 schreib mir im Forum dass man bitte noch auf ein Update warten solle, da es gerade noch nicht ging. Und man kann ja keinen so mit Write = false hinzufügen. Das geht ja nicht. Also kann ich auch nicht beide hinzufügen
Grade getestet, funzt tadellos
@elzershark keine Ahnung. Bei mir kommt die Fehlermeldung, dass der DP nicht hinzugefügt werden kann, der er nicht beschreibbar ist.
wie gesagt das bekam ich gestern im Forum geschrieben:
Damit kann ich nichts anfangen. Das ist ein Bild und kein Link, worum es geht
Beide Datenpunkte müssen Zahl sein. Beide müssen value.temperature sein. einer muss Write sein, der andere false. Das funzt tadellos. "common": { "name": "Temp2", "desc": "Manuell erzeugt", "role": "value.temperature", "type": "number", "unit": "°C", "read": true, "write": false, "def": 0 },
Es geht um das gleiche thema. Man muss doch jeden Datenpunkt einzeln hinzufügen, oder gibt es eine Multiselect?
Das hier als letztes. Diese Daten müssen vorhanden sein. Fehlt eins davon, funzt es nicht.
@elzershark ich konnte jetzt auf einmal auch den Write = false hinzufügen. Aber wie gehabt, wird in Alexa nichts angezeigt, wenn man auf das Gerät klickt.
Das ist korrekt. In der App wird das nicht angezeigt. War schon immer so.
aha, aber andere thermostate doch. OK. aber habe es Gerade getestet. Alexa gibt es aus. TOP. Etwas merkwürdig, weil ich es gestern schon mal so hatte, aber ok. aber es muss value.temperature sein... value reicht nicht?
@elzershark jetzt habe ich nur noch das Problem, dass wenn ich sage stell die Wärmepumpe auf 29 °C, dass er 14,8 einstellt :-(
@elzershark
Ich habe die Temperatur abgefragt und anschließend auf 29°C gestellt:
`
javascript.0 | 2023-09-30 10:07:37.712 | info | script.js.Alexa.Eingabelog: Anfrage auf Neue Garage: stelle die temperatur der wärmepumpe auf neun und zwanzig grad -- | -- | -- | -- iot.0 | 2023-09-30 10:07:36.872 | debug | [REMOTE] Send command to 'response/bsahrdt_gmail_com/alexa: {"header":{"messageId":"6fd80c9e-913e-432e-a86f-d350d4160fd6","namespace":"Alexa.ConnectedHome.Control","name":"SetPercentageConfirmation","payloadVersion":"2"},"payload":{}} iot.0 | 2023-09-30 10:07:36.741 | debug | [ALEXA] Controlling alias.0.Pool.Wärmepumpe.solltemperatur . iot.0 | 2023-09-30 10:07:36.740 | debug | [ALEXA] alias.0.Pool.Wärmepumpe.isttemperatur is no valid datapoint to set the percentage. iot.0 | 2023-09-30 10:07:36.736 | debug | [ALEXA] Controlling percentage: alias.0.Pool.Wärmepumpe.solltemperatur iot.0 | 2023-09-30 10:07:36.736 | debug | [ALEXA] Controlling percentage: alias.0.Pool.Wärmepumpe.isttemperatur iot.0 | 2023-09-30 10:07:36.736 | debug | null iot.0 | 2023-09-30 10:07:36.736 | debug | [ALEXA] DATA: [{"id":"alias.0.Pool.Wärmepumpe.isttemperatur","role":"value.temperature","actions":["getTemperatureReading"]},{"id":"alias.0.Pool.Wärmepumpe.solltemperatur","role":"level.temperature","actions":["setPercentage","incrementPercentage","decrementPercentage","turnOn","turnOff"]}] iot.0 | 2023-09-30 10:07:36.736 | debug | [ALEXA] ALEXA Percent: W_rmepumpe 28% iot.0 | 2023-09-30 10:07:36.736 | debug | [ALEXA] New Request: SetPercentageRequest iot.0 | 2023-09-30 10:07:36.735 | debug | 1696061256735 ALEXA: {"header":{"messageId":"6fd80c9e-913e-432e-a86f-d350d4160fd6","namespace":"Alexa.ConnectedHome.Control","name":"SetPercentageRequest","payloadVersion":"2"},"payload":{"accessToken":"eyJraWQiOiJRYWgyT01jdHY1ZlJuZ0xWR0plQzNUN1lGcThIZHFKSnZmU2R1MEtOWEFvPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxZGJmOGQyMC0xNzkwLTRkODEtYTU1ZC0wODM3YTY5ODkxYjIiLCJ0b2tlbl91c2UiOiJhY2Nlc3MiLCJzY29wZSI6InByb2ZpbGUiLCJhdXRoX3RpbWUiOjE2OTYwNjEyMDYsImlzcyI6Imh0dHBzOlwvXC9jb2duaXRvLWlkcC5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbVwvZXUtd2VzdC0xX2haZG1KMlAwWiIsImV4cCI6MTY5NjA2NDgwNiwiaWF0IjoxNjk2MDYxMjA2LCJ2ZXJzaW9uIjoyLCJqdGkiOiIyYzg0YjVhNS00MDUyLTQ0YjUtOTRmYy1lMzM2ODNmM2VhOTciLCJjbGllbnRfaWQiOiI3dmwyYW83NWpvOGpmN24zODZraXAwYm04cyIsInVzZXJuYW1lIjoiMWRiZjhkMjAtMTc5MC00ZDgxLWE1NWQtMDgzN2E2OTg5MWIyIn0.BdhYXHGcXDKqUHYkcsd-2d28gvCNECy_5UWosdQ_etK4vVybE_6jUW_Gr2QucD7T4J2yRSZzCpuhvSdPEesQwsXBTnKeh5mh4KGp3Z6jw3hGsyu03ogIUtYgD8uGDg-JPz2xR_z6fNFfchW_e1PHKxVxXZwlvbwdRPS96f6kLZTLNodtorgbiZReWd-XSGdncEW-ke3-RA-Mla4MspQYIPLKhpI9uyNf8xRn3e_3GJVjNUNoivepF5TiPvOQN40fCh7AUDDEy5lPTEEt4PS0JnV7NK5P4wiA3WV273U9TvOxaPiFzgFAbxoit-D95X0cCDFY4Q9ixzVOaMMSj2dLfQ","appliance":{"applianceId":"W_rmepumpe","additionalApplianceDetails":{"group":"true"}},"percentageState":{"value":28}}} iot.0 | 2023-09-30 10:07:36.735 | debug | Data: "{\"header\":{\"messageId\":\"6fd80c9e-913e-432e-a86f-d350d4160fd6\",\"namespace\":\"Alexa.ConnectedHome.Control\",\"name\":\"SetPercentageRequest\",\"payloadVersion\":\"2\"},\"payload\":{\"accessToken\":\"eyJraWQiOiJRYWgyT01jdHY1ZlJuZ0xWR0plQzNUN1lGcThIZHFKSnZmU2R1MEtOWEFvPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxZGJmOGQyMC0xNzkwLTRkODEtYTU1ZC0wODM3YTY5ODkxYjIiLCJ0b2tlbl91c2UiOiJhY2Nlc3MiLCJzY29wZSI6InByb2ZpbGUiLCJhdXRoX3RpbWUiOjE2OTYwNjEyMDYsImlzcyI6Imh0dHBzOlwvXC9jb2duaXRvLWlkcC5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbVwvZXUtd2VzdC0xX2haZG1KMlAwWiIsImV4cCI6MTY5NjA2NDgwNiwiaWF0IjoxNjk2MDYxMjA2LCJ2ZXJzaW9uIjoyLCJqdGkiOiIyYzg0YjVhNS00MDUyLTQ0YjUtOTRmYy1lMzM2ODNmM2VhOTciLCJjbGllbnRfaWQiOiI3dmwyYW83NWpvOGpmN24zODZraXAwYm04cyIsInVzZXJuYW1lIjoiMWRiZjhkMjAtMTc5MC00ZDgxLWE1NWQtMDgzN2E2OTg5MWIyIn0.BdhYXHGcXDKqUHYkcsd-2d28gvCNECy_5UWosdQ_etK4vVybE_6jUW_Gr2QucD7T4J2yRSZzCpuhvSdPEesQwsXBTnKeh5mh4KGp3Z6jw3hGsyu03ogIUtYgD8uGDg-JPz2xR_z6fNFfchW_e1PHKxVxXZwlvbwdRPS96f6kLZTLNodtorgbiZReWd-XSGdncEW-ke3-RA-Mla4MspQYIPLKhpI9uyNf8xRn3e_3GJVjNUNoivepF5TiPvOQN40fCh7AUDDEy5lPTEEt4PS0JnV7NK5P4wiA3WV273U9TvOxaPiFzgFAbxoit-D95X0cCDFY4Q9ixzVOaMMSj2dLfQ\",\"appliance\":{\"applianceId\":\"W_rmepumpe\",\"additionalApplianceDetails\":{\"group\":\"true\"}},\"percentageState\":{\"value\":28}}}" iot.0 | 2023-09-30 10:07:36.735 | debug | Request command/bsahrdt_gmail_com/alexa javascript.0 | 2023-09-30 10:07:21.082 | info | script.js.Alexa.Eingabelog: Ausgabe auf Neue Garage: Die Temperatur von Wärmepumpe ist 26 Grad. javascript.0 | 2023-09-30 10:07:21.082 | info | script.js.Alexa.Eingabelog: Anfrage auf Neue Garage: wie ist die temperatur von der wärmepumpe iot.0 | 2023-09-30 10:07:20.090 | debug | [REMOTE] Send command to 'response/bsahrdt_gmail_com/alexa: {"header":{"namespace":"Alexa.ConnectedHome.Query","name":"GetTemperatureReadingResponse","payloadVersion":"2","messageId":"e1d00b5e-39a2-4e6f-8d26-89faed66c29d"},"payload":{"temperatureReading":{"value":26},"applianceResponseTimestamp":"2023-09-30T08:06:57.242Z"}} iot.0 | 2023-09-30 10:07:20.066 | debug | [ALEXA] alias.0.Pool.Wärmepumpe.solltemperatur is no valid datapoint to get the actual temperature. iot.0 | 2023-09-30 10:07:20.033 | debug | [ALEXA] Get temperature: alias.0.Pool.Wärmepumpe.solltemperatur iot.0 | 2023-09-30 10:07:20.033 | debug | [ALEXA] Get temperature: alias.0.Pool.Wärmepumpe.isttemperatur iot.0 | 2023-09-30 10:07:20.033 | debug | [ALEXA] ALEXA temperature get: W_rmepumpe iot.0 | 2023-09-30 10:07:20.033 | debug | [ALEXA] New Request: GetTemperatureReadingRequest iot.0 | 2023-09-30 10:07:20.032 | debug | 1696061240032 ALEXA: {"header":{"namespace":"Alexa.ConnectedHome.Query","name":"GetTemperatureReadingRequest","payloadVersion":"2","messageId":"e1d00b5e-39a2-4e6f-8d26-89faed66c29d"},"payload":{"accessToken":"eyJraWQiOiJRYWgyT01jdHY1ZlJuZ0xWR0plQzNUN1lGcThIZHFKSnZmU2R1MEtOWEFvPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxZGJmOGQyMC0xNzkwLTRkODEtYTU1ZC0wODM3YTY5ODkxYjIiLCJ0b2tlbl91c2UiOiJhY2Nlc3MiLCJzY29wZSI6InByb2ZpbGUiLCJhdXRoX3RpbWUiOjE2OTYwNjEyMDYsImlzcyI6Imh0dHBzOlwvXC9jb2duaXRvLWlkcC5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbVwvZXUtd2VzdC0xX2haZG1KMlAwWiIsImV4cCI6MTY5NjA2NDgwNiwiaWF0IjoxNjk2MDYxMjA2LCJ2ZXJzaW9uIjoyLCJqdGkiOiIyYzg0YjVhNS00MDUyLTQ0YjUtOTRmYy1lMzM2ODNmM2VhOTciLCJjbGllbnRfaWQiOiI3dmwyYW83NWpvOGpmN24zODZraXAwYm04cyIsInVzZXJuYW1lIjoiMWRiZjhkMjAtMTc5MC00ZDgxLWE1NWQtMDgzN2E2OTg5MWIyIn0.BdhYXHGcXDKqUHYkcsd-2d28gvCNECy_5UWosdQ_etK4vVybE_6jUW_Gr2QucD7T4J2yRSZzCpuhvSdPEesQwsXBTnKeh5mh4KGp3Z6jw3hGsyu03ogIUtYgD8uGDg-JPz2xR_z6fNFfchW_e1PHKxVxXZwlvbwdRPS96f6kLZTLNodtorgbiZReWd-XSGdncEW-ke3-RA-Mla4MspQYIPLKhpI9uyNf8xRn3e_3GJVjNUNoivepF5TiPvOQN40fCh7AUDDEy5lPTEEt4PS0JnV7NK5P4wiA3WV273U9TvOxaPiFzgFAbxoit-D95X0cCDFY4Q9ixzVOaMMSj2dLfQ","appliance":{"applianceId":"W_rmepumpe","additionalApplianceDetails":{"group":"true"}}}} iot.0 | 2023-09-30 10:07:20.032 | debug | Data: "{\"header\":{\"namespace\":\"Alexa.ConnectedHome.Query\",\"name\":\"GetTemperatureReadingRequest\",\"payloadVersion\":\"2\",\"messageId\":\"e1d00b5e-39a2-4e6f-8d26-89faed66c29d\"},\"payload\":{\"accessToken\":\"eyJraWQiOiJRYWgyT01jdHY1ZlJuZ0xWR0plQzNUN1lGcThIZHFKSnZmU2R1MEtOWEFvPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiIxZGJmOGQyMC0xNzkwLTRkODEtYTU1ZC0wODM3YTY5ODkxYjIiLCJ0b2tlbl91c2UiOiJhY2Nlc3MiLCJzY29wZSI6InByb2ZpbGUiLCJhdXRoX3RpbWUiOjE2OTYwNjEyMDYsImlzcyI6Imh0dHBzOlwvXC9jb2duaXRvLWlkcC5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbVwvZXUtd2VzdC0xX2haZG1KMlAwWiIsImV4cCI6MTY5NjA2NDgwNiwiaWF0IjoxNjk2MDYxMjA2LCJ2ZXJzaW9uIjoyLCJqdGkiOiIyYzg0YjVhNS00MDUyLTQ0YjUtOTRmYy1lMzM2ODNmM2VhOTciLCJjbGllbnRfaWQiOiI3dmwyYW83NWpvOGpmN24zODZraXAwYm04cyIsInVzZXJuYW1lIjoiMWRiZjhkMjAtMTc5MC00ZDgxLWE1NWQtMDgzN2E2OTg5MWIyIn0.BdhYXHGcXDKqUHYkcsd-2d28gvCNECy_5UWosdQ_etK4vVybE_6jUW_Gr2QucD7T4J2yRSZzCpuhvSdPEesQwsXBTnKeh5mh4KGp3Z6jw3hGsyu03ogIUtYgD8uGDg-JPz2xR_z6fNFfchW_e1PHKxVxXZwlvbwdRPS96f6kLZTLNodtorgbiZReWd-XSGdncEW-ke3-RA-Mla4MspQYIPLKhpI9uyNf8xRn3e_3GJVjNUNoivepF5TiPvOQN40fCh7AUDDEy5lPTEEt4PS0JnV7NK5P4wiA3WV273U9TvOxaPiFzgFAbxoit-D95X0cCDFY4Q9ixzVOaMMSj2dLfQ\",\"appliance\":{\"applianceId\":\"W_rmepumpe\",\"additionalApplianceDetails\":{\"group\":\"true\"}}}}" iot.0 | 2023-09-30 10:07:20.032 | debug | Request command/bsahrdt_gmail_com/alexa`
Es sieht so aus, also würde er eine Prozentangabe machen. Es wird dann auf den minwert von 5°C gestellt.
gibts hier news?
Worum gehts? Das ja lange her. Wüsste nicht, dass es Probleme gibt. Bei deinem Bild sehe ich nur, dass eigene/andere Eintragungen bei min. und max. sind. Damit wird quasi was berechnet.. Vor allem, wenn es ein Alias gibt. Was bei dir ein Tuya Gerät ist. Dann ist quasi "stelle auf 5" keine 5, sondern kann eine ganz andere Zahl sein. Benutze einfach den Adapter "Geräte". Einfach mal herum testen. Damit erstellt man automatisch Geräte, wo alle Datenpunkte schon richtig vorgegeben sind.
Also es wird bei der Vorgabe: Stelle auf Wert X nicht X eingestellt. Das funktioniert bei anderen Geräten auch, es liegt am Tuya? Aber dessen Sollwert wird ja über den iot Adapter verstellt, oder?
So, ich hab mal bei mir getestet. Das funz ganz normal. Mit den unterschiedlichen min. max. ist das bei Temperaturen normal. Also das, was man sagt, wird auch eingestellt. Bei Prozent wäre das anders. Das muss bei dir an was anderem liegen. Ich schaffe es nicht, eine andere Temperatur zu bekommen. Sind die Adapter/iobroker auch aktuell? Ich habe vom Tuya Adapter nicht ein Datenpunkt, der falsch ist. Das ändern der Datenpunkte in Tuya Adapter oder im Geräte Adapter macht man eh nicht. Da die Datenpunkte normalerweise alle kein Fehler haben dürften. Dein Problem ist für mich nicht nachvollziehbar. Wie sehen denn die Datenpunkte im Tuya Adapter aus? Steht da was anders drin als im Geräte Adapter? (alias)
@elzershark Die Adapter sind alle aktuell. Was heist hier Ändern der Datenpunkte? Ich ändere ja keinen Datenpunkt, habe lediglich einen Alias auf de Sollwert, den ich beschreibe. Oder was meinst Du damit? Fakt ist, wenn ich bspw. sage: "Alexa, stelle die Pooltemperatur auf 28°C", dann stellt er IRGEND einen anderen Wert ein (Direkt im Alias). Die ist NUR bei der Temperatur so (Also nur bei dem Tuya State). Ich habe die Sollwertvorgabe jetzt raus genommen. Nur mit dem Istwert funktioniert alles einwandfrei, kann halt nur nichts über Alexa vorgeben- Wenn ich über die Vis oder skript einen Wert in den Sollwert schreibe, dann funktioniert das einwandfrei, nur über Alexa nicht.
leg doch einen extra Datenpunkt zum schreiben an, und schau, was dort reingeschrieben wird, wenn du per Alexa das Kommando gibst. Dann setzt du diesen Datenpunkt per Script, wie beim Wasserkocher auch, in den Tuya Datenpunkt um. (und hier wird das Problem liegen, wie schon beschrieben..) Der direkte Weg ueber ein Alias geht wohl so nicht, wie du merkst...
*Node.js v12.19.0 NPM 6.14.8
alles latest ohne gitub oder ähnliches.
Ich weiß nicht, ob das ein Bug ist. Bei Version 1.7.9 hat noch alles funktioniert wenn man den/die Datenpunkte bei role auf value.temperature gestellt hat.
Bei Version 1.7.15 muss es jetzt zwingend level.temperature sein bei read/write = true . Also wo man sagen kann, wieviel Grad es sein soll und value.temperature bei read/true write/false. Also das abfragen der Temperatur.
Andere Konstellationen funktionieren nicht.
Es funktioniert zwar, aber im log wird trotzdem sozusagen gemeckert. Deswegen denke ich, das es ein Bug ist..
(der 3 Datenpunkt im log spielt keine Rolle (WasserkocherAus) Einfach nicht beachten.)
[ALEXA] Cannot control javascript.0.Geraete.Wasserkocher Küche.WasserkocherIstTemp. Role is not level.temperature. Das ist der Datenpunkt zum Abfragen de zwingend value.temperature sein muss.. Es funktioniert aber trotzem.. wenn role... siehe oben..