NEWS
Sprachansage nacheinander abspielen?
-
Guten Tag,
ich habe derzeit folgenden Flow:[ { "id": "154c36de.4e1c99", "type": "tab", "label": "Test", "disabled": false, "info": "" }, { "id": "ecd68dbb.281c98", "type": "switch", "z": "154c36de.4e1c99", "name": "is true", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "true", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 510, "y": 440, "wires": [ [ "8f6584dd.14364", "1d6bf2b.855c60d", "e195c177.b33438", "31ee5820.93ef9", "929101c6.f0486", "ad77ff0.71654", "a51a0880.f2d1c8" ] ] }, { "id": "8f6584dd.14364", "type": "ioBroker get", "z": "154c36de.4e1c99", "name": "Wohnzimmer_groß_Fensterkontakt.contact", "topic": "zigbee.0.00158d0004a019d0.contact", "attrname": "payload", "payloadType": "value", "x": 830, "y": 240, "wires": [ [ "2de6af3e.8086d8" ] ] }, { "id": "1d6bf2b.855c60d", "type": "ioBroker get", "z": "154c36de.4e1c99", "name": "Wohnzimmer_klein_Fensterkontakt.contact", "topic": "zigbee.0.00158d0004a043f6.contact", "attrname": "payload", "payloadType": "value", "x": 830, "y": 300, "wires": [ [ "cc9e8f91.ae4658" ] ] }, { "id": "e195c177.b33438", "type": "ioBroker get", "z": "154c36de.4e1c99", "name": "Badezimmer_klein_Fensterkontakt.contact", "topic": "zigbee.0.00158d00042cbb43.contact", "attrname": "payload", "payloadType": "value", "x": 830, "y": 360, "wires": [ [ "fb848796.b4217" ] ] }, { "id": "31ee5820.93ef9", "type": "ioBroker get", "z": "154c36de.4e1c99", "name": "Badezimmer_groß_Fensterkontakt.contact", "topic": "zigbee.0.00158d00049fee7f.contact", "attrname": "payload", "payloadType": "value", "x": 830, "y": 420, "wires": [ [ "7cd95404.4883ac" ] ] }, { "id": "ad77ff0.71654", "type": "ioBroker get", "z": "154c36de.4e1c99", "name": "Esszimmer_Fensterkontakt_rechts.contact", "topic": "zigbee.0.00158d0004a04457.contact", "attrname": "payload", "payloadType": "value", "x": 830, "y": 540, "wires": [ [ "4e50075d.aa12a" ] ] }, { "id": "a51a0880.f2d1c8", "type": "ioBroker get", "z": "154c36de.4e1c99", "name": "Esszimmer_Fensterkontakt_links.contact", "topic": "zigbee.0.00158d00042cbb68.contact", "attrname": "payload", "payloadType": "value", "x": 820, "y": 600, "wires": [ [ "4e50075d.aa12a" ] ] }, { "id": "929101c6.f0486", "type": "ioBroker get", "z": "154c36de.4e1c99", "name": "Dachboden_Fensterkontakt.contact", "topic": "zigbee.0.00158d0004a01914.contact", "attrname": "payload", "payloadType": "value", "x": 810, "y": 480, "wires": [ [ "cd68604d.b7ff2" ] ] }, { "id": "2de6af3e.8086d8", "type": "switch", "z": "154c36de.4e1c99", "name": "is false", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "false", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 1140, "y": 240, "wires": [ [ "464fd299.dcacdc" ] ] }, { "id": "39561d1e.4a1a2a", "type": "rbe", "z": "154c36de.4e1c99", "name": "", "func": "rbe", "gap": "", "start": "", "inout": "out", "septopics": true, "property": "payload", "x": 390, "y": 440, "wires": [ [ "ecd68dbb.281c98" ] ] }, { "id": "704afdbf.8bed44", "type": "ioBroker in", "z": "154c36de.4e1c99", "name": "Wetterstation.regensensor", "topic": "hm-rpc.2.00275BE998F5E4.1.RAINING", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 210, "y": 440, "wires": [ [ "39561d1e.4a1a2a" ] ] }, { "id": "cc9e8f91.ae4658", "type": "switch", "z": "154c36de.4e1c99", "name": "is false", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "false", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 1140, "y": 300, "wires": [ [ "464fd299.dcacdc" ] ] }, { "id": "fb848796.b4217", "type": "switch", "z": "154c36de.4e1c99", "name": "is false", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "false", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 1140, "y": 360, "wires": [ [ "526acb03.ed338c" ] ] }, { "id": "7cd95404.4883ac", "type": "switch", "z": "154c36de.4e1c99", "name": "is false", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "false", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 1140, "y": 420, "wires": [ [ "1fc79c25.3d0cc4" ] ] }, { "id": "cd68604d.b7ff2", "type": "switch", "z": "154c36de.4e1c99", "name": "is false", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "false", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 1140, "y": 480, "wires": [ [ "4ceec192.334ad" ] ] }, { "id": "4e50075d.aa12a", "type": "switch", "z": "154c36de.4e1c99", "name": "is false", "property": "payload", "propertyType": "msg", "rules": [ { "t": "eq", "v": "false", "vt": "str" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 1140, "y": 600, "wires": [ [ "3cd935a8.03c292" ] ] }, { "id": "bf499958.b5d638", "type": "ioBroker out", "z": "154c36de.4e1c99", "name": "Türgong.submit", "topic": "hm-rpc.0.PEQ0546620.2.SUBMIT", "ack": "false", "autoCreate": "false", "stateName": "", "role": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 1560, "y": 420, "wires": [] }, { "id": "464fd299.dcacdc", "type": "change", "z": "154c36de.4e1c99", "name": "Wohn_Fenster", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "1,1,108000,14", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1300, "y": 240, "wires": [ [ "bf499958.b5d638" ] ] }, { "id": "526acb03.ed338c", "type": "change", "z": "154c36de.4e1c99", "name": "Bad_Klein_Fenster", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "1,1,108000,13", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1310, "y": 360, "wires": [ [ "bf499958.b5d638" ] ] }, { "id": "1fc79c25.3d0cc4", "type": "change", "z": "154c36de.4e1c99", "name": "Bad_Gross_Fenster", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "1,1,108000,12", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1320, "y": 420, "wires": [ [ "bf499958.b5d638" ] ] }, { "id": "4ceec192.334ad", "type": "change", "z": "154c36de.4e1c99", "name": "Dachboden_Fenster", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "1,1,108000,11", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1320, "y": 480, "wires": [ [ "bf499958.b5d638" ] ] }, { "id": "3cd935a8.03c292", "type": "change", "z": "154c36de.4e1c99", "name": "Esszimmer_Fenster", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "1,1,108000,10", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1320, "y": 600, "wires": [ [ "bf499958.b5d638" ] ] } ]
Von der Logik her bekomme ich das gerade nicht in meinen Kopf, wie ich das triggern kann, dass wenn mehrere Fenster geöffnet sind die Textbausteine nacheinander gesprochen werden. Hätte jemand von euch eine Idee?
Danke euch!
-
@hc-yami sagte in Sprachansage nacheinander abspielen?:
Hätte jemand von euch eine Idee?
Ja.
du prüfst alle Fenster und schreibst die offenen in eine Text-Variable.Und diese liest du dann vor.
-
@hc-yami Ich würde alle Nachrichten über eine JOIN Node in ein Objekt sammeln, anschließend das Objekt mit split wieder aufteilen und sequentiell analysieren und ggf. ausgeben.
ggf. musst halt mit einer delay Node noch den Fluß bremsen.
Was Du als payload verschickst - kann ich natürlich nicht beurteilen: 1,1,108000,13
Falls das noch nicht implementiert ist und ein anderer Flow - dann würde ich das Topic verwenden, um Dir den Text zusammenzustellen.
-
@mickym @bahnuhr vielen Dank für eure Antworten!
Mein Problem ist hier aber tatsächlich, dass ich einen Homematic Lautsprecher antriggere. Dieser spielt über die jeweiligen Werte einen Ton ab. In diesem Fall nun sowas wie: "Es fängt an zu Regnen und das Fenster im Wohnzimmer ist geöffnet!". Wenn nun mehr als zwei Inputs gleichzeitig an den Lautsprecher getriggert werden, arbeitet dieser diese nicht sequentiell ab, sondern spielt einfach den, der am schnellsten war ab. Die anderen werden nicht getriggert.Die Hauptfrage wäre also nun, wie ich dem Flow noch beibringen kann wie lange jede Ansage läuft und er dann diesen Zeitraum abwartet. Sorry das ich mich da nicht genau genug ausgedrückt habe.
Grüße!
-
@hc-yami Also der Flow den ich gepostet habe schickt Dir die Nachrichten sequentiell. Da ich keinen Datenpunkt habe um zu sehen, wann der fertig ist, würde ich eben noch eine delay Node einarbeiten.
Damit wird nur 1 Nachricht innerhalb von 5s geschickt - musst halt ggf. den Zeitraum noch vergrößern
-
@mickym uh mega geil, danke dir!
-
@hc-yami Vielleicht wäre es sogar mit Deinem ursprünglichen Flow gegangen und es hätte gelangt da einfach die delay Node mit der Nachrichtenbegrenzung pro Zeit dazwischen zu klemmen (also vor die iobroker OUT Node).
Kannst vielleicht mal ausprobieren - würde mich selbst interessieren.
EDIT:
Habe es gerade selbst ausprobiert und in dem Fall haben wir viel zu kompliziert gedacht - das tut es auch:
Ich lerne auch noch.