Wenn du wirklich die ID fest eingetragen hast, kann ja auch nur dieses Gerät antworten.
Vielen, Vielen danke, es funktioniert! Für das xxxxxxx in alexa2.0.Echo-Devices.XXXXXXX.Commands.speak habe ich die Alexa ID Nummer eingesetzt.
@TorbenNW sagte in Temperaturen über Node RED und Alexa abfragen!:
@LaBamba
Nachkommastellen: Die Zeile mit Math.round löschen und mit "msg.payload = msg.payload.replace('.', ',');" ersetzen.
@LaBamba sagte in Temperaturen über Node RED und Alexa abfragen!:
Die Genauigkeit mit einer Nachkommastelle aufrufen?
Ich verstehe das eher so, dass er nur eine Nachkommastelle möchte.
Hier ist ein aktualisierter Flow, die Temperatur wird auf eine Nachkommastelle gerundet, In der Funktion "Temperatur auslesen" kannst die Nachkommastellen ändern, in dem du den Wert in den Klammern von "toFixed" änderst.
[
{
"id": "ec7f4314.1eedc8",
"type": "tab",
"label": "Temperaturansagen",
"disabled": false,
"info": ""
},
{
"id": "65deed5.6cc5594",
"type": "amazon-echo-hub",
"z": "ec7f4314.1eedc8",
"port": "80",
"enableinput": false,
"x": 101,
"y": 32,
"wires": [
[
"80bb9b8e.7a2f"
]
]
},
{
"id": "80bb9b8e.7a2f",
"type": "amazon-echo-device",
"z": "ec7f4314.1eedc8",
"name": "Temperatur Schlafzimmer",
"topic": "",
"x": 317,
"y": 32,
"wires": [
[
"bdf3fc4.797e08"
]
]
},
{
"id": "bdf3fc4.797e08",
"type": "delay",
"z": "ec7f4314.1eedc8",
"name": "",
"pauseType": "delay",
"timeout": "1000",
"timeoutUnits": "milliseconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"x": 544,
"y": 32,
"wires": [
[
"d2824f5f.c71228",
"6c8128bc.8f56f"
]
]
},
{
"id": "d2824f5f.c71228",
"type": "ioBroker get",
"z": "ec7f4314.1eedc8",
"name": "serialNumber",
"topic": "alexa2.0.History.serialNumber",
"attrname": "payload",
"payloadType": "value",
"x": 765,
"y": 33,
"wires": [
[
"e6f6d7b0.3c86d8"
]
]
},
{
"id": "6c8128bc.8f56f",
"type": "ioBroker get",
"z": "ec7f4314.1eedc8",
"name": "temperature",
"topic": "deconz.0.Sensors.39.temperature",
"attrname": "payload",
"payloadType": "value",
"x": 753.5,
"y": 80,
"wires": [
[
"e6f6d7b0.3c86d8"
]
]
},
{
"id": "e6f6d7b0.3c86d8",
"type": "join",
"z": "ec7f4314.1eedc8",
"name": "",
"mode": "custom",
"build": "array",
"property": "payload",
"propertyType": "msg",
"key": "topic",
"joiner": "\\n",
"joinerType": "str",
"accumulate": false,
"timeout": "",
"count": "2",
"reduceRight": false,
"reduceExp": "",
"reduceInit": "",
"reduceInitType": "",
"reduceFixup": "",
"x": 1097,
"y": 34,
"wires": [
[
"dcda6519.e5d8"
]
]
},
{
"id": "dcda6519.e5d8",
"type": "function",
"z": "ec7f4314.1eedc8",
"name": "Temperatur auslesen",
"func": "var device = msg.payload[0]\nvar str = msg.payload[1];\ntemperature = parseFloat(str).toFixed(1);\nmsg.payload = \"Es sind \" + temperature + \" Grad im Schlafzimmer\";\nmsg.url = \"\";\nvar command = \"alexa2.0.Echo-Devices.\" + device + \".Commands.speak\"\nmsg.topic = command;\nreturn msg;\n",
"outputs": 1,
"noerr": 0,
"x": 1270,
"y": 34,
"wires": [
[
"e004e70b.81ef58",
"3618a2a9.f1e2a6"
]
]
},
{
"id": "e004e70b.81ef58",
"type": "ioBroker out",
"z": "ec7f4314.1eedc8",
"name": "speak",
"topic": "",
"ack": "false",
"autoCreate": "false",
"x": 1441.5,
"y": 34,
"wires": []
},
{
"id": "3618a2a9.f1e2a6",
"type": "debug",
"z": "ec7f4314.1eedc8",
"name": "",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"x": 1425,
"y": 138,
"wires": []
}
]