Homee mit Bose Soundtouch

Ich habe diese 2 Packete installiert.

1 „Gefällt mir“

Habe meine Node Red Flows nochmals überarbeitet, So dass ich die Lautsprecher direkt über die WEMO switches in homee Ein-und Ausschalten kann.
Der erste Teil fragt den Status alle 30s ab und setzt den Schalter auf an und aus, je nach Status der Lautsprecher. (In meinen Fall mit 2 Lautsprechern)

[
{
    "id": "850d80dd.9627b8",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchKueche_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.51:8090/now_playing",
    "tls": "",
    "x": 338.5,
    "y": 56,
    "wires": [
        [
            "7e3b1bbf.6cbfdc"
        ]
    ]
},
{
    "id": "7e3b1bbf.6cbfdc",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing Küche",
    "attr": "kueche",
    "chr": "",
    "x": 574,
    "y": 57,
    "wires": [
        [
            "c15a6724.082bd",
            "ca5b9827.825ad8"
        ]
    ]
},
{
    "id": "c15a6724.082bd",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status ON Küche",
    "property": "payload.nowPlaying.kueche.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "neq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "false",
    "outputs": 1,
    "x": 779,
    "y": 28,
    "wires": [
        [
            "d7edad16.3a76a"
        ]
    ],
    "outputLabels": [
        "on"
    ]
},
{
    "id": "28ba2c6c.fccd34",
    "type": "wemo out",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouch_Kueche",
    "device": "605b0264.099f14",
    "label": "SoundTouch_Kitchen",
    "x": 1191,
    "y": 55,
    "wires": []
},
{
    "id": "d7edad16.3a76a",
    "type": "change",
    "z": "fe2726e.de82ed8",
    "name": "Set Küche ON",
    "rules": [
        {
            "t": "set",
            "p": "payload",
            "pt": "msg",
            "to": "on",
            "tot": "str"
        }
    ],
    "action": "",
    "property": "",
    "from": "",
    "to": "",
    "reg": false,
    "x": 982,
    "y": 27,
    "wires": [
        [
            "28ba2c6c.fccd34"
        ]
    ]
},
{
    "id": "ca5b9827.825ad8",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status OFF Küche",
    "property": "payload.nowPlaying.kueche.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "false",
    "outputs": 1,
    "x": 788,
    "y": 91,
    "wires": [
        [
            "148ab7ba.d1e52"
        ]
    ],
    "outputLabels": [
        "on"
    ]
},
{
    "id": "148ab7ba.d1e52",
    "type": "change",
    "z": "fe2726e.de82ed8",
    "name": "Set Küche OFF",
    "rules": [
        {
            "t": "set",
            "p": "payload",
            "pt": "msg",
            "to": "off",
            "tot": "str"
        }
    ],
    "action": "",
    "property": "",
    "from": "",
    "to": "",
    "reg": false,
    "x": 982,
    "y": 91,
    "wires": [
        [
            "28ba2c6c.fccd34"
        ]
    ]
},
{
    "id": "a242f64d.660f88",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchSZ_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.55:8090/now_playing",
    "tls": "",
    "x": 331.5,
    "y": 156,
    "wires": [
        [
            "d8f5efaa.be19e"
        ]
    ]
},
{
    "id": "d8f5efaa.be19e",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing SZ",
    "attr": "sz",
    "chr": "",
    "x": 554,
    "y": 157,
    "wires": [
        [
            "5b87b86e.dd1f58",
            "f79321c5.bc20d8"
        ]
    ]
},
{
    "id": "5b87b86e.dd1f58",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status ON SZ",
    "property": "payload.nowPlaying.sz.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "neq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 776.5,
    "y": 144,
    "wires": [
        [
            "752dbab3.dca39c"
        ]
    ]
},
{
    "id": "f79321c5.bc20d8",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status OFF SZ",
    "property": "payload.nowPlaying.sz.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 780.5,
    "y": 191,
    "wires": [
        [
            "513f63d2.a268e4"
        ]
    ]
},
{
    "id": "752dbab3.dca39c",
    "type": "change",
    "z": "fe2726e.de82ed8",
    "name": "Set SZ ON",
    "rules": [
        {
            "t": "set",
            "p": "payload",
            "pt": "msg",
            "to": "on",
            "tot": "str"
        }
    ],
    "action": "",
    "property": "",
    "from": "",
    "to": "",
    "reg": false,
    "x": 967.5,
    "y": 144,
    "wires": [
        [
            "a0e319de.4f173"
        ]
    ]
},
{
    "id": "513f63d2.a268e4",
    "type": "change",
    "z": "fe2726e.de82ed8",
    "name": "Set SZ OFF",
    "rules": [
        {
            "t": "set",
            "p": "payload",
            "pt": "msg",
            "to": "off",
            "tot": "str"
        }
    ],
    "action": "",
    "property": "",
    "from": "",
    "to": "",
    "reg": false,
    "x": 966.5,
    "y": 191,
    "wires": [
        [
            "a0e319de.4f173"
        ]
    ]
},
{
    "id": "a0e319de.4f173",
    "type": "wemo out",
    "z": "fe2726e.de82ed8",
    "name": "",
    "device": "4e36d21b.f79c7c",
    "label": "SoundTouch_SZ",
    "x": 1186,
    "y": 161,
    "wires": []
},
{
    "id": "119ac1b2.540026",
    "type": "inject",
    "z": "fe2726e.de82ed8",
    "name": "",
    "topic": "",
    "payload": "",
    "payloadType": "date",
    "repeat": "30",
    "crontab": "",
    "once": false,
    "x": 95,
    "y": 113,
    "wires": [
        [
            "850d80dd.9627b8",
            "a242f64d.660f88"
        ]
    ]
},
{
    "id": "605b0264.099f14",
    "type": "wemo-dev",
    "z": "",
    "device": "87858103",
    "name": "SoundTouch_Kitchen"
},
{
    "id": "4e36d21b.f79c7c",
    "type": "wemo-dev",
    "z": "",
    "device": "87858101",
    "name": "SoundTouch_SZ"
}
]

Der zweite Teil schaltet die Lautsprecher mit Hilfe der WEMO switches ein und aus.

[
{
    "id": "54c20eb6.8184a8",
    "type": "wemo-emulator",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouch_SZ",
    "friendlyName": "SoundTouch_SZ",
    "serial": "87858101",
    "port": "42399",
    "onTopic": "SoundTouch_SZ/On",
    "onPayload": "on",
    "offTopic": "SoundTouch_SZ/Off",
    "offPayload": "off",
    "x": 103,
    "y": 431,
    "wires": [
        [
            "3b650958.60950e",
            "c9aa24d1.156ab"
        ]
    ]
},
{
    "id": "52960221.3540ac",
    "type": "wemo-emulator",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouch_Kitchen",
    "friendlyName": "SoundTouch_Kitchen",
    "serial": "87858103",
    "port": "41312",
    "onTopic": "SoundTouch_Kitchen/on",
    "onPayload": "on",
    "offTopic": "SoundTouch_Kitchen/off",
    "offPayload": "off",
    "x": 106.5,
    "y": 321,
    "wires": [
        [
            "24d81544.7a5f7a",
            "2b09ffc0.c12558"
        ]
    ]
},
{
    "id": "ef86c8b8.e74e2",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchKueche_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.51:8090/now_playing",
    "tls": "",
    "x": 534,
    "y": 276,
    "wires": [
        [
            "bb3d053b.650c7"
        ]
    ]
},
{
    "id": "bb3d053b.650c7",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing Küche",
    "attr": "kueche",
    "chr": "",
    "x": 785,
    "y": 273,
    "wires": [
        [
            "e2955b39.10f42"
        ]
    ]
},
{
    "id": "24d81544.7a5f7a",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Wenn On",
    "property": "payload",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "on",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 323,
    "y": 274,
    "wires": [
        [
            "ef86c8b8.e74e2"
        ]
    ]
},
{
    "id": "e2955b39.10f42",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status OFF Küche",
    "property": "payload.nowPlaying.kueche.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "false",
    "outputs": 1,
    "x": 1006,
    "y": 273,
    "wires": [
        [
            "cc9b446d.8a4db8"
        ]
    ]
},
{
    "id": "6713a787.b4fc9",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "Post/key Küche",
    "method": "POST",
    "ret": "txt",
    "url": "http://192.168.178.51:8090/key",
    "tls": "",
    "x": 1360,
    "y": 306,
    "wires": [
        []
    ]
},
{
    "id": "cc9b446d.8a4db8",
    "type": "function",
    "z": "fe2726e.de82ed8",
    "name": "Power",
    "func": "var value = msg.payload;\n\nmsg.payload =  '<key state=\"press\" sender=\"Gabbo\">POWER</key>';\nmsg.headers = {'content-type':'application/xml'};\nreturn msg;",
    "outputs": 1,
    "noerr": 0,
    "x": 1191,
    "y": 306,
    "wires": [
        [
            "6713a787.b4fc9"
        ]
    ]
},
{
    "id": "2b09ffc0.c12558",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Wenn Off",
    "property": "payload",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "off",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 316,
    "y": 344,
    "wires": [
        [
            "cf7268d7.f3a6c8"
        ]
    ]
},
{
    "id": "cf7268d7.f3a6c8",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchKueche_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.51:8090/now_playing",
    "tls": "",
    "x": 531,
    "y": 345,
    "wires": [
        [
            "5851806c.16ee78"
        ]
    ]
},
{
    "id": "5851806c.16ee78",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing Küche",
    "attr": "kueche",
    "chr": "",
    "x": 783,
    "y": 344,
    "wires": [
        [
            "e56ded77.de6348"
        ]
    ]
},
{
    "id": "e56ded77.de6348",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status ON Küche",
    "property": "payload.nowPlaying.kueche.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "neq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "false",
    "outputs": 1,
    "x": 1005,
    "y": 343,
    "wires": [
        [
            "cc9b446d.8a4db8"
        ]
    ],
    "outputLabels": [
        "on"
    ]
},
{
    "id": "3b650958.60950e",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Wenn On",
    "property": "payload",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "on",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 314,
    "y": 408,
    "wires": [
        [
            "8058361c.f8449"
        ]
    ]
},
{
    "id": "c9aa24d1.156ab",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Wenn Off",
    "property": "payload",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "off",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 323,
    "y": 467,
    "wires": [
        [
            "3cfc26e9.817092"
        ]
    ]
},
{
    "id": "8058361c.f8449",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchSZ_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.55:8090/now_playing",
    "tls": "",
    "x": 531,
    "y": 405,
    "wires": [
        [
            "bd8b55ad.be928"
        ]
    ]
},
{
    "id": "3cfc26e9.817092",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchSZ_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.55:8090/now_playing",
    "tls": "",
    "x": 533,
    "y": 470,
    "wires": [
        [
            "62ac2e8.91b65d"
        ]
    ]
},
{
    "id": "bd8b55ad.be928",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing SZ",
    "attr": "sz",
    "chr": "",
    "x": 762,
    "y": 405,
    "wires": [
        [
            "e74b15d6.d88018"
        ]
    ]
},
{
    "id": "62ac2e8.91b65d",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing SZ",
    "attr": "sz",
    "chr": "",
    "x": 780,
    "y": 472,
    "wires": [
        [
            "ad5149ef.3d40b"
        ]
    ]
},
{
    "id": "ad5149ef.3d40b",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status ON SZ",
    "property": "payload.nowPlaying.sz.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "neq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 992,
    "y": 471,
    "wires": [
        [
            "2aefce1.2f878b2"
        ]
    ]
},
{
    "id": "e74b15d6.d88018",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status OFF SZ",
    "property": "payload.nowPlaying.sz.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 990,
    "y": 406,
    "wires": [
        [
            "2aefce1.2f878b2"
        ]
    ]
},
{
    "id": "85330e73.e472",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "Post/key SZ",
    "method": "POST",
    "ret": "txt",
    "url": "http://192.168.178.55:8090/key",
    "tls": "",
    "x": 1343,
    "y": 435,
    "wires": [
        []
    ]
},
{
    "id": "2aefce1.2f878b2",
    "type": "function",
    "z": "fe2726e.de82ed8",
    "name": "Power",
    "func": "var value = msg.payload;\n\nmsg.payload =  '<key state=\"press\" sender=\"Gabbo\">POWER</key>';\nmsg.headers = {'content-type':'application/xml'};\nreturn msg;",
    "outputs": 1,
    "noerr": 0,
    "x": 1186,
    "y": 436,
    "wires": [
        [
            "85330e73.e472"
        ]
    ]
}
]

Funktioniert bei mir sehr zuverlässig. Habe somit immer den aktuellen Status der Lautsprecher in homee und kann diese über homee zuverlässig Ein-und Ausschalten.

Was ich jedoch bei der Gelegenheit festgestellt habe, ist dass die Statusänderung der WEMO switches in homee mit ca. 30s Verzögerung ankommt. Ob dass jetzt an homee oder Node red liegt kann ich nicht beurteilen. Da die Lautsprecher in der Regel nicht im Minutentakt Ein-und Ausgeschaltet werden stellt es kein Problem dar.

3 „Gefällt mir“

Hallo nochmals,
also verstehe ich das richtig: Du schaltest den Bose SoundTouch “komplett” über eine schaltbare Steckdose aus/ein
=> Ist das dann nicht etwas “träge” - bis eben der SoundTouch wieder hoch gefahren ist …

  • Was ist Red Node?
  • Kann ich das auch ohne eine schaltbare Steckdose machen?

Grüße Stefan

Hallo @blas,

nein ich verwende keine Schaltbare Steckdosen, ich verwende simulierte/virtuele Wemo Switches in node red erzeugt, wie in den Beiträgen weiter oben beschrieben. Mit schaltbaren Steckdosen, habe ich mal gestartet und dann zu der node red Lösung gewechselt.

Node-RED

Node-RED ist ein Programmiertool dessen Editor per Browser aufgerufen werden kann. Er bietet eine einfache Möglichkeit über Knotenpunkte (nodes) Datenflüsse (flows) zu erstellen.
Seine schlanke Runtime-Umgebung, basierend auf Node.js, läuft auch auf kleiner Hardware (Rpi) wunderbar.
https://nodered.org/

Mit der von mir beschriebenen node red Lösung.

Oder ganz primitiv mit HG’s und webhooks auch weiter oben beschrieben, mit dem Nachteil, dass der aktuelle Status AN/AUS in homee nicht bekannt ist.

Falls Du weitere Hilfe bei der Umzetung brauchst, bitte etwas konkreter werden.

1 „Gefällt mir“

Ok, jetzt wird das ganze “etwas klarer” …
Aber: Wie kann ich nun diese virtuelle Umgebung mit Homee verknüpfen.
Mir fehlt hier das generelle Verständnis was das dann mit Homme zu tun hat, wie ich es einbinden kann usw.

Hast Du hier eine “Anleitung”?

Da wie es scheint, du noch kein node red am laufen hast, sollten wir damit starten.

Die einfachste Möglichkeit sollte das homeean Projekt sein:

Als Hardware benötigst Du noch einen Raspberry Pi
Z.b. bei Amazon als StarterKit erhältlich:

https://www.amazon.de/Raspberry-Pi-Official-Desktop-Starter/dp/B01CI5879A/ref=sr_1_2?ie=UTF8&qid=1522785788&sr=8-2&keywords=raspberry+pi+3+bundle&dpID=41dAuxJlhCL&preST=SX300_QL70&dpSrc=srch

Nach der erfolgreichen Inbetriebnahme des Pi’s und der Installation von node red,
kannst Du über den Browser node red aufrufen (IP-Raspberry:1880)

Um Wemo unter node red nutzen zu können musst noch zwei module installieren:
Oben rechts auf Menü klicken dann Manage palette klicken

In den Reiter Install wechseln und diese 2 module installieren:

Danach kannst Du über Import Clipboard meine Flows importieren

Den unten stehenden code kopieren und einfügen

  [
{
    "id": "850d80dd.9627b8",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchKueche_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.51:8090/now_playing",
    "tls": "",
    "x": 338.5,
    "y": 56,
    "wires": [
        [
            "7e3b1bbf.6cbfdc"
        ]
    ]
},
{
    "id": "7e3b1bbf.6cbfdc",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing Küche",
    "attr": "kueche",
    "chr": "",
    "x": 574,
    "y": 57,
    "wires": [
        [
            "c15a6724.082bd",
            "ca5b9827.825ad8"
        ]
    ]
},
{
    "id": "c15a6724.082bd",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status ON Küche",
    "property": "payload.nowPlaying.kueche.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "neq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "false",
    "outputs": 1,
    "x": 779,
    "y": 28,
    "wires": [
        [
            "d7edad16.3a76a"
        ]
    ],
    "outputLabels": [
        "on"
    ]
},
{
    "id": "28ba2c6c.fccd34",
    "type": "wemo out",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouch_Kueche",
    "device": "605b0264.099f14",
    "label": "SoundTouch_Kitchen",
    "x": 1191,
    "y": 55,
    "wires": []
},
{
    "id": "d7edad16.3a76a",
    "type": "change",
    "z": "fe2726e.de82ed8",
    "name": "Set Küche ON",
    "rules": [
        {
            "t": "set",
            "p": "payload",
            "pt": "msg",
            "to": "on",
            "tot": "str"
        }
    ],
    "action": "",
    "property": "",
    "from": "",
    "to": "",
    "reg": false,
    "x": 982,
    "y": 27,
    "wires": [
        [
            "28ba2c6c.fccd34"
        ]
    ]
},
{
    "id": "ca5b9827.825ad8",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status OFF Küche",
    "property": "payload.nowPlaying.kueche.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "false",
    "outputs": 1,
    "x": 788,
    "y": 91,
    "wires": [
        [
            "148ab7ba.d1e52"
        ]
    ],
    "outputLabels": [
        "on"
    ]
},
{
    "id": "148ab7ba.d1e52",
    "type": "change",
    "z": "fe2726e.de82ed8",
    "name": "Set Küche OFF",
    "rules": [
        {
            "t": "set",
            "p": "payload",
            "pt": "msg",
            "to": "off",
            "tot": "str"
        }
    ],
    "action": "",
    "property": "",
    "from": "",
    "to": "",
    "reg": false,
    "x": 982,
    "y": 91,
    "wires": [
        [
            "28ba2c6c.fccd34"
        ]
    ]
},
{
    "id": "a242f64d.660f88",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchSZ_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.55:8090/now_playing",
    "tls": "",
    "x": 331.5,
    "y": 156,
    "wires": [
        [
            "d8f5efaa.be19e"
        ]
    ]
},
{
    "id": "d8f5efaa.be19e",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing SZ",
    "attr": "sz",
    "chr": "",
    "x": 554,
    "y": 157,
    "wires": [
        [
            "5b87b86e.dd1f58",
            "f79321c5.bc20d8"
        ]
    ]
},
{
    "id": "5b87b86e.dd1f58",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status ON SZ",
    "property": "payload.nowPlaying.sz.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "neq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 776.5,
    "y": 144,
    "wires": [
        [
            "752dbab3.dca39c"
        ]
    ]
},
{
    "id": "f79321c5.bc20d8",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status OFF SZ",
    "property": "payload.nowPlaying.sz.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 780.5,
    "y": 191,
    "wires": [
        [
            "513f63d2.a268e4"
        ]
    ]
},
{
    "id": "752dbab3.dca39c",
    "type": "change",
    "z": "fe2726e.de82ed8",
    "name": "Set SZ ON",
    "rules": [
        {
            "t": "set",
            "p": "payload",
            "pt": "msg",
            "to": "on",
            "tot": "str"
        }
    ],
    "action": "",
    "property": "",
    "from": "",
    "to": "",
    "reg": false,
    "x": 967.5,
    "y": 144,
    "wires": [
        [
            "a0e319de.4f173"
        ]
    ]
},
{
    "id": "513f63d2.a268e4",
    "type": "change",
    "z": "fe2726e.de82ed8",
    "name": "Set SZ OFF",
    "rules": [
        {
            "t": "set",
            "p": "payload",
            "pt": "msg",
            "to": "off",
            "tot": "str"
        }
    ],
    "action": "",
    "property": "",
    "from": "",
    "to": "",
    "reg": false,
    "x": 966.5,
    "y": 191,
    "wires": [
        [
            "a0e319de.4f173"
        ]
    ]
},
{
    "id": "54c20eb6.8184a8",
    "type": "wemo-emulator",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouch_SZ",
    "friendlyName": "SoundTouch_SZ",
    "serial": "87858101",
    "port": "42399",
    "onTopic": "SoundTouch_SZ/On",
    "onPayload": "on",
    "offTopic": "SoundTouch_SZ/Off",
    "offPayload": "off",
    "x": 85,
    "y": 430,
    "wires": [
        [
            "3b650958.60950e",
            "c9aa24d1.156ab"
        ]
    ]
},
{
    "id": "a0e319de.4f173",
    "type": "wemo out",
    "z": "fe2726e.de82ed8",
    "name": "",
    "device": "4e36d21b.f79c7c",
    "label": "SoundTouch_SZ",
    "x": 1186,
    "y": 161,
    "wires": []
},
{
    "id": "52960221.3540ac",
    "type": "wemo-emulator",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouch_Kitchen",
    "friendlyName": "SoundTouch_Kitchen",
    "serial": "87858103",
    "port": "41312",
    "onTopic": "SoundTouch_Kitchen/on",
    "onPayload": "on",
    "offTopic": "SoundTouch_Kitchen/off",
    "offPayload": "off",
    "x": 106.5,
    "y": 321,
    "wires": [
        [
            "24d81544.7a5f7a",
            "2b09ffc0.c12558"
        ]
    ]
},
{
    "id": "ef86c8b8.e74e2",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchKueche_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.51:8090/now_playing",
    "tls": "",
    "x": 534,
    "y": 276,
    "wires": [
        [
            "bb3d053b.650c7"
        ]
    ]
},
{
    "id": "bb3d053b.650c7",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing Küche",
    "attr": "kueche",
    "chr": "",
    "x": 785,
    "y": 273,
    "wires": [
        [
            "e2955b39.10f42"
        ]
    ]
},
{
    "id": "24d81544.7a5f7a",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Wenn On",
    "property": "payload",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "on",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 323,
    "y": 274,
    "wires": [
        [
            "ef86c8b8.e74e2"
        ]
    ]
},
{
    "id": "e2955b39.10f42",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status OFF Küche",
    "property": "payload.nowPlaying.kueche.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "false",
    "outputs": 1,
    "x": 1006,
    "y": 273,
    "wires": [
        [
            "cc9b446d.8a4db8"
        ]
    ]
},
{
    "id": "6713a787.b4fc9",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "Post/key Küche",
    "method": "POST",
    "ret": "txt",
    "url": "http://192.168.178.51:8090/key",
    "tls": "",
    "x": 1360,
    "y": 306,
    "wires": [
        []
    ]
},
{
    "id": "cc9b446d.8a4db8",
    "type": "function",
    "z": "fe2726e.de82ed8",
    "name": "Power",
    "func": "var value = msg.payload;\n\nmsg.payload =  '<key state=\"press\" sender=\"Gabbo\">POWER</key>';\nmsg.headers = {'content-type':'application/xml'};\nreturn msg;",
    "outputs": 1,
    "noerr": 0,
    "x": 1191,
    "y": 306,
    "wires": [
        [
            "6713a787.b4fc9"
        ]
    ]
},
{
    "id": "2b09ffc0.c12558",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Wenn Off",
    "property": "payload",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "off",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 316,
    "y": 344,
    "wires": [
        [
            "cf7268d7.f3a6c8"
        ]
    ]
},
{
    "id": "cf7268d7.f3a6c8",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchKueche_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.51:8090/now_playing",
    "tls": "",
    "x": 531,
    "y": 345,
    "wires": [
        [
            "5851806c.16ee78"
        ]
    ]
},
{
    "id": "5851806c.16ee78",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing Küche",
    "attr": "kueche",
    "chr": "",
    "x": 783,
    "y": 344,
    "wires": [
        [
            "e56ded77.de6348"
        ]
    ]
},
{
    "id": "e56ded77.de6348",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status ON Küche",
    "property": "payload.nowPlaying.kueche.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "neq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "false",
    "outputs": 1,
    "x": 1005,
    "y": 343,
    "wires": [
        [
            "cc9b446d.8a4db8"
        ]
    ],
    "outputLabels": [
        "on"
    ]
},
{
    "id": "119ac1b2.540026",
    "type": "inject",
    "z": "fe2726e.de82ed8",
    "name": "",
    "topic": "",
    "payload": "",
    "payloadType": "date",
    "repeat": "30",
    "crontab": "",
    "once": false,
    "x": 95,
    "y": 113,
    "wires": [
        [
            "850d80dd.9627b8",
            "a242f64d.660f88"
        ]
    ]
},
{
    "id": "3b650958.60950e",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Wenn On",
    "property": "payload",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "on",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 314,
    "y": 408,
    "wires": [
        [
            "8058361c.f8449"
        ]
    ]
},
{
    "id": "c9aa24d1.156ab",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Wenn Off",
    "property": "payload",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "off",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 323,
    "y": 467,
    "wires": [
        [
            "3cfc26e9.817092"
        ]
    ]
},
{
    "id": "8058361c.f8449",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchSZ_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.55:8090/now_playing",
    "tls": "",
    "x": 531,
    "y": 405,
    "wires": [
        [
            "bd8b55ad.be928"
        ]
    ]
},
{
    "id": "3cfc26e9.817092",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "SoundTouchSZ_Status",
    "method": "GET",
    "ret": "txt",
    "url": "http://192.168.178.55:8090/now_playing",
    "tls": "",
    "x": 533,
    "y": 470,
    "wires": [
        [
            "62ac2e8.91b65d"
        ]
    ]
},
{
    "id": "bd8b55ad.be928",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing SZ",
    "attr": "sz",
    "chr": "",
    "x": 762,
    "y": 405,
    "wires": [
        [
            "e74b15d6.d88018"
        ]
    ]
},
{
    "id": "62ac2e8.91b65d",
    "type": "xml",
    "z": "fe2726e.de82ed8",
    "name": "now_Playing SZ",
    "attr": "sz",
    "chr": "",
    "x": 780,
    "y": 472,
    "wires": [
        [
            "ad5149ef.3d40b"
        ]
    ]
},
{
    "id": "ad5149ef.3d40b",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status ON SZ",
    "property": "payload.nowPlaying.sz.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "neq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 992,
    "y": 471,
    "wires": [
        [
            "2aefce1.2f878b2"
        ]
    ]
},
{
    "id": "e74b15d6.d88018",
    "type": "switch",
    "z": "fe2726e.de82ed8",
    "name": "Status OFF SZ",
    "property": "payload.nowPlaying.sz.source",
    "propertyType": "msg",
    "rules": [
        {
            "t": "eq",
            "v": "STANDBY",
            "vt": "str"
        }
    ],
    "checkall": "true",
    "outputs": 1,
    "x": 990,
    "y": 406,
    "wires": [
        [
            "2aefce1.2f878b2"
        ]
    ]
},
{
    "id": "85330e73.e472",
    "type": "http request",
    "z": "fe2726e.de82ed8",
    "name": "Post/key SZ",
    "method": "POST",
    "ret": "txt",
    "url": "http://192.168.178.55:8090/key",
    "tls": "",
    "x": 1343,
    "y": 435,
    "wires": [
        []
    ]
},
{
    "id": "2aefce1.2f878b2",
    "type": "function",
    "z": "fe2726e.de82ed8",
    "name": "Power",
    "func": "var value = msg.payload;\n\nmsg.payload =  '<key state=\"press\" sender=\"Gabbo\">POWER</key>';\nmsg.headers = {'content-type':'application/xml'};\nreturn msg;",
    "outputs": 1,
    "noerr": 0,
    "x": 1186,
    "y": 436,
    "wires": [
        [
            "85330e73.e472"
        ]
    ]
},
{
    "id": "605b0264.099f14",
    "type": "wemo-dev",
    "z": "",
    "device": "87858103",
    "name": "SoundTouch_Kitchen"
},
{
    "id": "4e36d21b.f79c7c",
    "type": "wemo-dev",
    "z": "",
    "device": "87858101",
    "name": "SoundTouch_SZ"
}
]

Die rot markierten flows musst du noch anpassen (die jeweilige IP-Adresse deiner Soundtouch Lautsprechen eintragen)

Das ganze kannst Du natürlich um weitere Lautsprechen ergänzen/erweitern.
Die Namen der WeMo’s anpassen, etc.

Danach auf Deploy Full klicken

Und wenn Du keine Fehler gemacht hast sollte auch eine Erfolgsmeldung erscheinen.

Danach kannst Du zu homee wechseln und nach neuen Wlan Geräte suchen.
Wlan -> Belkin WeMo

Wenn Alles geklappt hat, solltest Du in der Lage sein über die neuen WeMo’s Schalter deine Lautsprechen Ein und Auschalten zu können.

Ich hoffe das war einigermaßen verständlich.
Du solltest Dich auf jeden Fall zu den Themen:

  • Rasperry PI
  • Node Red
    im Netz ein wenig einlesen.

Ansonsten gilt Probieren geht über Studieren! :slight_smile:

Viel Spaß und Erfolg!

4 „Gefällt mir“

Die Steuerung der Lautsprecher über dem Umweg Node red funktioniert sehr gut. Was mir noch fehlt ist eine Sprachausgabe z.B. Google-tts. Kennt jemand eine Lösung in Node red umgesetzt? Oder muss ich zusätzlich den Umweg über Home Assistant gehen?!

Nimm die SONOS-HTTP-API, die kannst Du via homeean parallel installieren, TTS ist im nachfolgenden Artikel beschrieben:

https://www.homeepedia.de/books/homeean/page/sonos-http-api

Der Dienst idelt im Hintergrund vor sich hin - schneller und einfacher kannst Du TTS nicht erreichen.

Edit: Und via Webhooks optional auch aus Node-RED heraus aufrufen…

Was hat die Sonos-http-api mit Bose SoundTouch zu tun? Oder stehe ich auf dem Schlauch?

Ne, ich… Gerade erst realisiert, dass Ihr über den Bose diskutiert. Bekenne mich schuldig der Ignoranz :wink:

Falls es jemand noch nicht mitbekommen hat, für Alexa ist jetzt der Bose Skill verfügbar. Funktioniert wunderbar, wenn ich jetzt Alexa anspreche wird sogar automatisch der Fernsehton (Bose Soundbar) ausgeschaltet, sehr nett.

1 „Gefällt mir“

Moin Zusammen,

kann man über das HG den Wecker für die Soundtouch realisieren? Oder nur über den Umweg mit den IFTTT? Kann einer mal seine Einstellung bei IFTTT und dann beim HG posten, bei dem es funktioniert ?

Kann ich mich über Alexa mit der Soundtouch wecken lassen?

Vielen lieben Dank vorab…

Habe versucht, meinen Bose Soundtouch 10 über den hier beschriebenen Webhook einzuschalten. Klappt noch nicht. Vielleicht habe ich etwas grundsätzliches bezüglich Webhooks noch nicht verstanden. Mein Wunsch wäre, das Radio einzuschalten, wenn z.B. ein Bewegungsmelder oder eine bestimmte Uhrzeit Auslöser sind.
Ich habe einiges über die Verknüpfung von IFTTT und Webhooks gelesen. Ist IFTTT eine Voraussetzung, um Webhooks nutzen zu können?
Wäre schön, wenn jemand meinen Knoten im Kopf lösen könnte. Vielen Dank schon mal im Voraus für Hilfestellungen.
Viele Grüße, Fritz

Hallo Fritz,

ich denke du kannst dich auch hier einlesen. Webhook und Ifttt ist unabhängig, lässt sich aber kombinieren. Für eine konkrete Lösung deines Problems braucht es mehr Infos und Screenshots dazu, was du eingerichtet hast. Hast du zB auch Node-red wie von @anon11314990 im Detail beschrieben eingerichtet?

:coffee:

Node-red braucht es nicht. Ab Post 8 ist es beschrieben, wie man den Bose mit webhook(s) steuert.
Man braucht auch kein ifttt dazu.
Screenshots helfen bei der Lösungsfindung :wink:

Schon klar. Nicht klar war der bisher gewählte Ansatz. :slight_smile:
:coffee:

1 „Gefällt mir“

Ich hab zum üben einen weiter oben gezeigten Screeenshot genommen und die IP-Adresse meines Soundtouch ersetzt. Als Auslöser habe ich einen Bewegungsmelder sowie eine Uhrzeit probiert. Bei dieser Konstellation schaltet sich der Soundtouch jedoch nicht ein. Hier mein Screenshot:

Release fehlt:

Vielen Dank für den schnellen Tipp. Ich habe die zweite Zeile (release) im Body eingetragen, trotzdem wird der Soundtouch nicht eingeschaltet. Wo könnte der Fehler noch liegen?
Der Boselautsprecher ist im WLAN einer FritzBox 7390 eingebunden. Beim Frequenzband wird 5 GHZ angezeigt. Kann es damit was zu tun haben? Oder muss die Box an irgendeiner Stelle im homee bekanntgemacht bzw. konfiguriert werden?
Zum Bose Soundtouch gehört eine App. Muss dort evtl. was eingestellt werden? Ich bearbeite die HG mit iPad bzw. iPhone.

Dein bose läuft so? Also du kannst mit ihm Musik hören?
Der Einschaltbefehl lässt ihn dann die letzte Musik spielen. Probier mal per TuneIn Radio zu hören. Mit dem hg kannst du ihn dann ausschalten und wieder einschalten. Geht das?