Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Bose sprach ausgabe

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Bose sprach ausgabe

    This topic has been deleted. Only users with topic management privileges can see it.
    • Johny2410
      Johny2410 last edited by Johny2410

      Guten Abend. ich bin damit beschäftigt einen Post Melder zu programmieren. als Auslöser dient ein normaler Tür kontakt der dann ein Telegram auf mein Handy schickt. jetzt möchte ich eine sprach Ausgabe mein Bose Soundtouch 20. jetzt die frage:

      Wie krieg ich eine sprach Ausgabe auf den Bose Lautsprecher. ich weis das es sayit gibt aber irgend wie will das nicht so wie ich das will. hat jemand da eine Lösung für mich ??

      was Code an geht hebe ich kein plan. das einzige wovon ich plan habe ist Blocky und das beherrsche ich auch nur zu 30%

      Schon mahl danke, lg Jo

      M 1 Reply Last reply Reply Quote 0
      • M
        MCU @Johny2410 last edited by MCU

        @johny2410 Gibt es eine Alexa im Haus und ist die Bose Soundtouch 20 mit der verbunden? Alexa2-Adapter in ioBroker installiert? Kann man die Bose Soundtouch 20 schon aus ioBroker ansprechen?

        Anscheinend hat diese Box http Zugriff: http://xxx.xxx.xxx.xxx:8090/info

        https://www.youtube.com/watch?v=NeZSEEwhxO4

        https://community.bose.com/t5/SoundTouch-Lautsprecher/Automatisiertes-Einschalten-einer-Gruppe-per-Fernbedienung/td-p/182177/page/3

        https://mytec-home.de/smart-home/sprachausgabe-klingelton-ueber-multiroom-im-smarthome

        f898b5e7-fdfc-4703-aff0-9c13f45c45a1-image.png

        Bei say-it wird die Datei

        /opt/iobroker/iobroker-data/sayit/sayit.0.say.mp3
        

        immer wieder genutzt.

        1 Reply Last reply Reply Quote 0
        • Johny2410
          Johny2410 last edited by Johny2410

          Nein es gibt keine alexa oder sonstige Geräte im haus das wäre zu einfach gewesen.

          Ja, es gibt ein eigenen Adapter für bose

          Ich werde mir das mahl ankuken was du mir da geschikt hast.

          Das blocky Skript sieht interessant aus.

          David G. 1 Reply Last reply Reply Quote 0
          • David G.
            David G. @Johny2410 last edited by

            @johny2410

            Hab es grad nicht vor mir.
            Man kann im Bose Adapter unter "bosesoundtouch.0.sources.LOCAL_INTERNET_RADIO" eine mp3 übergeben meine ich.

            Mit sayit bekommt man die Datei bestimmt erzeugt?

            Johny2410 1 Reply Last reply Reply Quote 0
            • Johny2410
              Johny2410 @David G. last edited by

              @david-g das habe ich schon versucht. Funktioniert leider nicht ohne das das auf nem server liegt. Außerdem sind alle presents schon belegt.

              David G. 1 Reply Last reply Reply Quote 0
              • David G.
                David G. @Johny2410 last edited by

                @johny2410

                Hab das noch nie getestet, da ich kein VIS nutze.

                Kann man auf die Elemente (Bilder etc) direkt per URL zugreifen?
                Dann könnte man die mp3 evtl dort generieren lassen.

                Johny2410 1 Reply Last reply Reply Quote 0
                • Johny2410
                  Johny2410 @David G. last edited by

                  @david-g nein leider nicht. Die url die da eingetragen steht ist nur für ein bild

                  1 Reply Last reply Reply Quote 0
                  • David G.
                    David G. last edited by David G.

                    @johny2410

                    Evtl hilft dieser thread.

                    klick

                    Hier wird der proxy Adapter empfohlen um eigenen content auszuliefern.

                    Der Adapter scheint es zu können, bekomme ihn aber nicht recht konfiguriert...

                    EDIT:
                    Hab noch was probiert.
                    In der Bose App bekommt man so gut wie alles an "LOCAL_INTERNET_RADIO" übergeben.
                    Ein Preset wird nicht benötigt.

                    Im Bose Adapter reagiert der "LOCAL_INTERNET_RADIO" Button bei mir nicht. Vermutlich muss noch irgendwie ein Pfad zu einer Datei oder einem stream mit angegeben werden.

                    Mit dem proxy Adapter komme ich langsam weiter. Hab dazu noch ein anderes Topic offen.

                    EDIT 2:
                    Man muss auch ohne App eine mp3 übergeben können.
                    In HA gehst es scheinbar out of the Box.
                    klick

                    Johny2410 1 Reply Last reply Reply Quote 0
                    • Johny2410
                      Johny2410 @David G. last edited by Johny2410

                      @david-g ich werde das mit dem proxy morgen genauer anschauen.

                      Mahl kucken was da geht

                      David G. 2 Replies Last reply Reply Quote 0
                      • David G.
                        David G. @Johny2410 last edited by

                        @johny2410

                        Hab heute nochwas gefunden.
                        Müsste man auch umgesetzt bekommen.

                        Den Code gibt's unterm Video. Diesen API key kann man wohl auch bekommen.

                        Bose Audio Notification

                        1 Reply Last reply Reply Quote 0
                        • David G.
                          David G. @Johny2410 last edited by

                          @johny2410

                          Habs wie im Video hinbekommen.
                          Morgen kann ich was mehr posten.

                          Nur der Proxy will noch nicht....

                          1 Reply Last reply Reply Quote 0
                          • David G.
                            David G. last edited by David G.

                            Hier mein bisheriger Vorschritt.

                            Ich bekomme nun Notifications an die Bose gesendet. Wenn Musik läuft, blendet diese für die Ansage aus.

                            An sich klappt alles. Hänge nur noch daran, den iobroker Webserver zum ausliefern von Dateien zu bewegen (Für SayIt).
                            Wenn die mp3s jedoch woanders bereitgestellt werden klappt schon alles.

                            Zum vorgehen:
                            Als erstes muss man sich unter Bose Developer registrieren.
                            Dort kann man sich nun eine eine App anlegen. In der App findet man nun den "Consumer Key", diesen benötigen wir nachher im Script.

                            Jetzt benötigen wir folgendes Blockly:
                            bose.png
                            Der ganze Befehl lautet:

                            curl -d \ "<play_info><app_key>Dein_Consumer_Key</app_key><url>Dein_Link_zur_mp3</url><service>service text</service><reason>reason text</reason><message>message text</message><volume>10</volume></play_info>" http://ip_der_bose_box:8090/speaker
                            

                            Den Service- und Messgagetext kann man auch noch ausfüllen. Dann sieht man in der App oder sonst wo man sich die aktuelle Wiedergabe anzeigen lässt noch Infos in Textform.

                            Die Lautstärke (Volume) muss mindestens auf 10 stehen, sonst wird der Befehl nicht ausgeführt.

                            Nun könnt Ihr Benachrichtigungen an die Box senden.
                            Es werden wohl nur die Soundtouch 10, 20 III und 30 III unterstützt.

                            1 Reply Last reply Reply Quote 0
                            • David G.
                              David G. last edited by

                              Bei mir läuft es jetzt wie oben gelöst stabil.

                              Den Webserver habe ich über Umwege, und ohne genau zu wissen warum es klappt am laufen.

                              Habe mir einen Apache 2 Server installiert.
                              War ein ziemliches hin und her mit Ordnerrechten bis ich die mp3 Daten von sayit abspielen konnte.

                              Wenn das jemand nachbauen möchte, sollte man im Forum evtl einen sauberen Weg erarbeiten um die mp3s bereitzuw.

                              Johny2410 1 Reply Last reply Reply Quote 0
                              • Johny2410
                                Johny2410 @David G. last edited by

                                @david-g hey, ich habe seit längerem nicht hier im Forum gekuckt wegen meiner Ausbildung. (wenig zeit im Handwerk grade)

                                und werde die Lösung oben ausprobieren. das mit dem Proxy habe ich nicht hin gekriegt.

                                danke das du dich da so hinter gehangen hast.

                                David G. 1 Reply Last reply Reply Quote 0
                                • David G.
                                  David G. @Johny2410 last edited by

                                  @johny2410

                                  Werde morgen mal mein Blockly posten.
                                  Habe mir den Apache Server über webmin installiert.
                                  Dann dem Ordner wo die mp3 liegt und dem default www Ordner vom Apache für jeden Nutzer freigegeben (kann ich im LAN noch gut verantworten).
                                  Das Blockly schiebt die mp3 zum Apache und schickt den Link dann zur Bose.
                                  Getriggert wird über einen Datenpunkt in den ich den Anzusagenden Text schreiben lasse.

                                  Johny2410 1 Reply Last reply Reply Quote 0
                                  • Johny2410
                                    Johny2410 @David G. last edited by

                                    @david-g wäre nett wen du das mahl posten würdest.

                                    David G. 1 Reply Last reply Reply Quote 0
                                    • David G.
                                      David G. @Johny2410 last edited by David G.

                                      @johny2410

                                      Hier ist der Export.
                                      Mein Appkey habe ich mit xxxxxx ersetzt.

                                      <xml xmlns="https://developers.google.com/blockly/xml">
                                        <variables>
                                          <variable type="timeout" id="timeout">timeout</variable>
                                          <variable type="timeout" id="timeout2">timeout2</variable>
                                        </variables>
                                        <block type="on" id="P)MbE7-)CU,Ie~9{Mg.#" x="-762" y="63">
                                          <field name="OID">0_userdata.0.Sprachausgabe.Zu_sprechender_Text</field>
                                          <field name="CONDITION">any</field>
                                          <field name="ACK_CONDITION"></field>
                                          <statement name="STATEMENT">
                                            <block type="sayit" id="Xc~;GZD?XGl9=L{x?qN=">
                                              <field name="INSTANCE">all</field>
                                              <field name="LANGUAGE">de</field>
                                              <field name="LOG"></field>
                                              <value name="MESSAGE">
                                                <shadow type="text" id="K_Jt7a[/u7gsA:[dZ;/o">
                                                  <field name="TEXT">gggg</field>
                                                </shadow>
                                                <block type="on_source" id="9mr8aFJ;V)R,jrmmDO1v">
                                                  <field name="ATTR">state.val</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="timeouts_settimeout" id="9Cj1NeWGz_KD5dc9}11]">
                                                  <field name="NAME">timeout</field>
                                                  <field name="DELAY">1</field>
                                                  <field name="UNIT">sec</field>
                                                  <statement name="STATEMENT">
                                                    <block type="exec" id="-Hs@I63![jqDc)(?R6o)">
                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                      <field name="WITH_STATEMENT">FALSE</field>
                                                      <field name="LOG"></field>
                                                      <value name="COMMAND">
                                                        <shadow type="text" id="Eu*kfUv}Z3$L%i2S|+uk">
                                                          <field name="TEXT">mv /opt/iobroker/iobroker-data/sayit/sayit.0.say.mp3 /var/www/html</field>
                                                        </shadow>
                                                      </value>
                                                      <next>
                                                        <block type="timeouts_settimeout" id="c0kX0%rr)ee7)r%K=nBj">
                                                          <field name="NAME">timeout2</field>
                                                          <field name="DELAY">1</field>
                                                          <field name="UNIT">sec</field>
                                                          <statement name="STATEMENT">
                                                            <block type="exec" id="=(Uxiu)4n@vAW4~8yM:c">
                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                              <field name="WITH_STATEMENT">FALSE</field>
                                                              <field name="LOG"></field>
                                                              <value name="COMMAND">
                                                                <shadow type="text" id="1I$^f/Qa*aeoQjfCa`O;">
                                                                  <field name="TEXT">curl -d \ "&lt;play_info&gt;&lt;app_key&gt;xxxxxxxxxxxxx;/app_key&gt;&lt;url&gt;http://192.168.99.33/sayit.0.say.mp3&lt;/url&gt;&lt;service&gt;service text&lt;/service&gt;&lt;reason&gt;reason text&lt;/reason&gt;&lt;message&gt;message text&lt;/message&gt;&lt;volume&gt;10&lt;/volume&gt;&lt;/play_info&gt;" http://192.168.99.24:8090/speaker</field>
                                                                </shadow>
                                                                <block type="text_join" id="37M^HRW9i67*5:1tD-4g">
                                                                  <mutation items="3"></mutation>
                                                                  <value name="ADD0">
                                                                    <block type="text" id="THF9pN,zFaoAxP9kIl(4">
                                                                      <field name="TEXT">curl -d \ "&lt;play_info&gt;&lt;app_key&gt;xxxxxxxxx&lt;/app_key&gt;&lt;url&gt;http://192.168.99.33/sayit.0.say.mp3&lt;/url&gt;&lt;service&gt;service text&lt;/service&gt;&lt;reason&gt;reason text&lt;/reason&gt;&lt;message&gt;message text&lt;/message&gt;&lt;volume&gt;</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="ADD1">
                                                                    <block type="get_value" id="+#ZjSj~6;Ti*1boSEaJF">
                                                                      <field name="ATTR">val</field>
                                                                      <field name="OID">0_userdata.0.Sprachausgabe.Lautsaerke</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="ADD2">
                                                                    <block type="text" id="iK2UbN]TyKAs#i*1qhoC">
                                                                      <field name="TEXT">&lt;/volume&gt;&lt;/play_info&gt;" http://192.168.99.24:8090/speaker</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </statement>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                      </xml>
                                      

                                      Screenshot_20210401-202655_Chrome~2.jpg

                                      Johny2410 1 Reply Last reply Reply Quote 0
                                      • Johny2410
                                        Johny2410 @David G. last edited by

                                        @david-g @david-g @david-g danke, ich habe es aus probiert. es funktioniert bis auf die ton ausgabe. da komt immer der log error datei ist zu kurtz. ist ich habe die mp3 datein auf meiner fritznas gespeichert. ich habe dein skript 1 zu 1 übernommen nur der trigger habe ich entfernt. weil ich nicht genau begriffen habe wofür der ist.

                                        David G. 1 Reply Last reply Reply Quote 0
                                        • David G.
                                          David G. @Johny2410 last edited by David G.

                                          @johny2410

                                          Der Trigger überwacht einen Datenpunkt in den der Text für die Sprachausgabe geschrieben wird.

                                          Wenn dort zb "Waschmaschine fertig" eingetragen wird, wird das Script gestartet.

                                          Erst wird mit sayit die mp3 (Waschmaschine fertig) geschrieben, verschoben und dann abgespielt.

                                          Kann die Fritzbox die Daten per http bereitstellen? Dachte nur ftp. Dachte, dass mag die Bose nicht.

                                          Welcher Adapter meldet, dass die mp3 zu kurz ist?

                                          Den eigenen Appkey hast du?

                                          Johny2410 1 Reply Last reply Reply Quote 0
                                          • Johny2410
                                            Johny2410 @David G. last edited by Johny2410

                                            @david-g einen Appkey habbe ich. und es funktioniert auch alles nur halt kein ton.

                                            ich habe grade mahl versucht eine Datei von meinem Server abzuspielen genau das gleiche problem, kein ton.
                                            so wol als link per fritz.box und per Freigabe von meinem synology nas kein ton.

                                            habe es jetzt so modifieziert

                                            <xml xmlns="https://developers.google.com/blockly/xml">
                                              <variables>
                                                <variable type="timeout" id="timeout">timeout</variable>
                                                <variable type="timeout" id="timeout2">timeout2</variable>
                                              </variables>
                                              <block type="sayit" id="Xc~;GZD?XGl9=L{x?qN=" x="-412" y="113">
                                                <field name="INSTANCE">all</field>
                                                <field name="LANGUAGE">de</field>
                                                <field name="LOG"></field>
                                                <value name="MESSAGE">
                                                  <shadow type="text" id="K_Jt7a[/u7gsA:[dZ;/o">
                                                    <field name="TEXT">Post ist da</field>
                                                  </shadow>
                                                </value>
                                                <next>
                                                  <block type="timeouts_settimeout" id="9Cj1NeWGz_KD5dc9}11]">
                                                    <field name="NAME">timeout</field>
                                                    <field name="DELAY">1</field>
                                                    <field name="UNIT">sec</field>
                                                    <statement name="STATEMENT">
                                                      <block type="exec" id="-Hs@I63![jqDc)(?R6o)">
                                                        <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                        <field name="WITH_STATEMENT">FALSE</field>
                                                        <field name="LOG"></field>
                                                        <value name="COMMAND">
                                                          <shadow type="text" id="Eu*kfUv}Z3$L%i2S|+uk">
                                                            <field name="TEXT">mv /opt/iobroker/iobroker-data/sayit/sayit.0.say.mp3 /var/www/html</field>
                                                          </shadow>
                                                        </value>
                                                        <next>
                                                          <block type="timeouts_settimeout" id="c0kX0%rr)ee7)r%K=nBj">
                                                            <field name="NAME">timeout2</field>
                                                            <field name="DELAY">1</field>
                                                            <field name="UNIT">sec</field>
                                                            <statement name="STATEMENT">
                                                              <block type="exec" id="=(Uxiu)4n@vAW4~8yM:c">
                                                                <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                                                                <field name="WITH_STATEMENT">FALSE</field>
                                                                <field name="LOG"></field>
                                                                <value name="COMMAND">
                                                                  <shadow type="text" id="1I$^f/Qa*aeoQjfCa`O;">
                                                                    <field name="TEXT">curl -d \ "&lt;play_info&gt;&lt;app_key&gt;xxxxxxxxxxxxx;/app_key&gt;&lt;url&gt;http://192.168.99.33/sayit.0.say.mp3&lt;/url&gt;&lt;service&gt;service text&lt;/service&gt;&lt;reason&gt;reason text&lt;/reason&gt;&lt;message&gt;message text&lt;/message&gt;&lt;volume&gt;10&lt;/volume&gt;&lt;/play_info&gt;" http://192.168.99.24:8090/speaker</field>
                                                                  </shadow>
                                                                  <block type="text_join" id="_*1t)3F`,vxAU0?!apgg">
                                                                    <mutation items="3"></mutation>
                                                                    <value name="ADD0">
                                                                      <block type="text" id="Q(h5wpOs0a9XMcteFZ7E">
                                                                        <field name="TEXT">curl -d \ "&lt;play_info&gt;&lt;app_key&gt;xxxxxxxx&lt;/app_key&gt;&lt;url&gt;http://192.168.178.29/sayit.0.say.mp3&lt;/url&gt;&lt;service&gt;post ist da&lt;/service&gt;&lt;reason&gt;es ligt ein paket in der postbox &lt;/reason&gt;&lt;message&gt;post ist da&lt;/message&gt;&lt;volume&gt;</field>
                                                                      </block>
                                                                    </value>
                                                                    <value name="ADD1">
                                                                      <block type="text" id=";);mx97{rVisnx7tz}ww">
                                                                        <field name="TEXT">30</field>
                                                                      </block>
                                                                    </value>
                                                                    <value name="ADD2">
                                                                      <block type="text" id="9cKsZZsE/wFhWlC0Z{Mg">
                                                                        <field name="TEXT">&lt;/volume&gt;&lt;/play_info&gt;" http://192.168.178.12:8090/speaker</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </statement>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </statement>
                                                  </block>
                                                </next>
                                              </block>
                                            </xml>
                                                                 
                                            

                                            vielleicht kannst du mahl kucken (wen du ziet und lust hast) wo möglicher weise ein Fehler liegen könnte.

                                            Edit:

                                            es funktioniert so wie ich das jetzt modifiziert habe bis auf die ton aus Gabe

                                            David G. 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            944
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            35
                                            2492
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo