Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Hilfe für den Einstieg in Javascript mit Sayit

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Hilfe für den Einstieg in Javascript mit Sayit

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

      Schau mal hier. Das folgende Blockly Beispiel ist schnell zusammen geklickt. Dann kannst du dir den Code anschauen.

      Wenn die Systemvariable Waschmaschine sich ändert wird überprüft ob der Wert "2" ist. Wenn ja, dann spricht sayit den Text.

      Lg

      Günther

      ![](</s><URL url=)<link_text text="http://uploads.tapatalk-cdn.com/2016111 ... 8de496.png">http://uploads.tapatalk-cdn.com/20161112/078b292c57a73c692c4857e3908de496.png</link_text>" />

      1 Reply Last reply Reply Quote 0
      • N
        Nordlicht last edited by

        @Jeeper.at:

        Schau mal hier. Das folgende Blockly Beispiel ist schnell zusammen geklickt. Dann kannst du dir den Code anschauen.

        Wenn die Systemvariable Waschmaschine sich ändert wird überprüft ob der Wert "2" ist. Wenn ja, dann spricht sayit den Text. `

        Das ist schon mal gut, vielen Dank dafür Günther.

        Doch genau da liegt mein Problem…. die Waschmaschine müsste bei mir eine Uhrzeit sein.

        Wie ändere ich das ab?

        Gruß

        Thomas

        1 Reply Last reply Reply Quote 0
        • Jeeper.at
          Jeeper.at last edited by

          Nun du könntest die SV Variable ja nach Zeit in der CCU2 ändern lassen.

          Lg

          Günther

          1 Reply Last reply Reply Quote 0
          • Jeeper.at
            Jeeper.at last edited by

            Oder so.

            Lg

            Günther

            ![](</s><URL url=)<link_text text="http://uploads.tapatalk-cdn.com/2016111 ... fc3930.png">http://uploads.tapatalk-cdn.com/20161112/a4e634c7ad7f03bba950b33418fc3930.png</link_text>" />

            1 Reply Last reply Reply Quote 0
            • N
              Nordlicht last edited by

              Schritt für Schritt….. 8-)

              Tomaten auf den Augen sind es nicht, aber ich finde den Block mit "aussprechen" nicht.....

              In welcher Rubrik ist der bzw. ist der selbst benannt?

              Thomas

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators last edited by

                Hast du SayIt installiert.

                Ich denke, dass der Block bei SendTo sein sollte.

                Die kommen neuerdings erst wenn man den entsprechenden Adapter installiert hat.

                Allerdings könnte da noch ein Bug drin sein. Hier wurde von einem User auch berichtet, dass diese Blöcke erst mit Installation des Telegram-Adapters wieder auftauchen.

                Gruß

                Rainer

                1 Reply Last reply Reply Quote 0
                • N
                  Nordlicht last edited by

                  Hi,

                  Sayit ist installiert, Telegram war nicht installiert - hab ich nachgeholt.

                  Allerdings ist die Rubrik "SendTo" nach wie vor leer….. hm.

                  Wir werden ihm schon auf die Schliche kommen 8-)

                  Thomas

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators last edited by

                    Kann ich (teilweise) bestätigen!

                    habe auf einer neuen Installation mit sayit auch keine Sendto Blöcke gehabt.

                    Habe dann noch telegram installiert - immer noch nichts!

                    Habe zur Sicherheit javascript Adapter neu gestertet - da waren die SendTo Blöcke da.

                    Ob es bereits vor der Installation des telegram Adapters gereicht hätte den js-Adapter neu zu starten weiß ich jetzt nicht.

                    Allerdings habe ich alle Adapter alphabetisch installiert, da lief dann der js-Adapter bereits als der SayIt Adapter installiert wurde.

                    Damals habe ich den js-Adapter nicht neu gestartet.

                    Gruß

                    Rainer

                    1 Reply Last reply Reply Quote 0
                    • N
                      Nordlicht last edited by

                      @Homoran:

                      Kann ich (teilweise) bestätigen!

                      habe auf einer neuen Installation mit sayit auch keine Sendto Blöcke gehabt.

                      Habe dann noch telegram installiert - immer noch nichts!

                      Habe zur Sicherheit javascript Adapter neu gestertet - da waren die SendTo Blöcke da. `

                      Bin den gleichen Weg gegangen wie Du….

                      jetzt klappt es mit den Blöcken perfekt. Da konnte ich ja lange suchen 8-) .

                      Danke Dir und Jeeper.at.

                      Fehler wird in dem Script keine gemeldet (Blöcke prüfen). Sprechen tut aber auch keiner mit mir. Im Log unter Javascript steht:

                      javascript.0	2016-11-12 18:57:12.072	info	javascript.0 script.js.Test: registered 1 subscription and 0 schedules
                      javascript.0	2016-11-12 18:57:12.072	error	javascript.0 Error by subscription: empty ID defined. All states matched.
                      javascript.0	2016-11-12 18:57:12.072	info	javascript.0 Start javascript script.js.Test
                      javascript.0	2016-11-12 18:57:12.030	info	javascript.0 received all objects
                      

                      unter Sayit steht nichts was auf einen Fehler hindeuten würde… aber auch keine Aktivität zur eingestellten Zeit.

                      Der Scriptcode sieht so aus:

                      on({id: compareTime('18:59', null, "==", null), change: "any"}, function (obj) {
                        var value = obj.state.val;
                        var oldValue = obj.oldState.val;
                        setState("sayit.0.tts.text", "de;100;" + 'Dies ist ein Test ob es wieder funktioniert. Mal sehen.');
                      });
                      
                      

                      Hast Du dazu auch ne Idee woran es jetzt klemmen könnte?

                      Thomas

                      1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators last edited by

                        @Nordlicht:

                        Hast Du dazu auch ne Idee woran es jetzt klemmen könnte? `
                        Eher zu viele als zu wenige 😉

                        @Nordlicht:

                        Fehler wird in dem Script keine gemeldet `
                        Aber im Log:
                        @Nordlicht:

                        error   javascript.0 Error by subscription: empty ID defined. `
                        und im code ist ein NULL

                        Bitte screenshot vom Blockly.

                        @Nordlicht:

                        Sprechen tut aber auch keiner mit mir. `
                        ggf. noch einen Screenshot von der SayIt Konfig.

                        Wo willst du es denn hören können?

                        Gruß

                        Rainer

                        1 Reply Last reply Reply Quote 0
                        • N
                          Nordlicht last edited by

                          Hier mal die beiden Screenshots vom Blocky und Sayit.

                          Laufen soll das ganze auf de Raspberry Pi 3 unter dem omxplayer über 3,5er Klinke. Die funktioniert auch, das ist getestet ebenso wie der omxplayer.

                          1641_sayit.jpg
                          1641_blocky.jpg

                          1 Reply Last reply Reply Quote 0
                          • Jeeper.at
                            Jeeper.at last edited by

                            Ich gebe zu, das ich mein 2.Blockly blind getippt habe. Bin im Urlaub und kann nicht hören ob zuhause etwas spricht. Das Waschmaschine Script funktioniert aber sicher.

                            Versuche mal unter den Objekten im Bereich sayit unter ich glaube tttext etwas einzugeben. Dann wissen wir mal ob sayit spricht.

                            1 Reply Last reply Reply Quote 0
                            • N
                              Nordlicht last edited by

                              @Jeeper.at:

                              Ich gebe zu, das ich mein 2.Blockly blind getippt habe. Bin im Urlaub und kann nicht hören ob zuhause etwas spricht. Das Waschmaschine Script funktioniert aber sicher.

                              . `

                              Kein Problem. Ich habe nun die Waschmaschinen-Variante genommen und schau mal was passiert.

                              > Versuche mal unter den Objekten im Bereich sayit unter ich glaube tttext etwas einzugeben. Dann wissen wir mal ob sayit spricht

                              Ja das klappt. Nur die Geschichte mit der Lautstärke ist noch nicht ganz so das Wahre (Gong zu laut/verzerrt - Text etwas zu leise), aber das ist wieder was anderes. Das gibt die nächste Baustelle.

                              Danke Dir - habe die Ehre 😉 - und einen schönen Sonntag.

                              Thomas

                              1 Reply Last reply Reply Quote 0
                              • Jeeper.at
                                Jeeper.at last edited by

                                So, hier die getestete Form mit Zeit und SayIt.

                                Das Script ist minütlich eingeplant.

                                lg

                                Günther
                                1180_sayit.jpg

                                1 Reply Last reply Reply Quote 0
                                • N
                                  Nordlicht last edited by

                                  @Jeeper.at:

                                  So, hier die getestete Form mit Zeit und SayIt.

                                  Das Script ist minütlich eingeplant.

                                  lg

                                  Günther `

                                  Hi Günther,

                                  vielen Dank. Das funktioniert einwandfrei.

                                  Belastet die minütliche Einplanung des Scriptes die SD-Karte nicht übermäßig (Lese-/Schreibzugriffe)?

                                  Thomas

                                  1 Reply Last reply Reply Quote 0
                                  • Jeeper.at
                                    Jeeper.at last edited by

                                    hallo,

                                    ja, sollte man so auch nicht machen. Wenn du eine bestimmte Zeit hast, dann reicht es auch wenn das Script viel weniger oft läuft. Damit wird zwar die Zeit der Auslösung ungenauer, aber da kommt es halt drauf an was du mit dem Script erreichen willst.

                                    Die Variante, das du in der CCU2 eine Variable setzt und im Script darauf reagierst besteht ja immer noch. Dann wird das Programm einmal in der CCU2 gestartet und einmal in IoBroker.

                                    Also so wie ich es mit der Waschmaschine mache.

                                    lg

                                    Günther

                                    1 Reply Last reply Reply Quote 0
                                    • N
                                      Nordlicht last edited by

                                      @Jeeper.at:

                                      hallo,

                                      ja, sollte man so auch nicht machen. Wenn du eine bestimmte Zeit hast, dann reicht es auch wenn das Script viel weniger oft läuft. Damit wird zwar die Zeit der Auslösung ungenauer, aber da kommt es halt drauf an was du mit dem Script erreichen willst.

                                      Die Variante, das du in der CCU2 eine Variable setzt und im Script darauf reagierst besteht ja immer noch. Dann wird das Programm einmal in der CCU2 gestartet und einmal in IoBroker.

                                      Also so wie ich es mit der Waschmaschine mache. `

                                      Ich habe nun auf die Variante "Waschmaschine" umgestellt. Leider spricht weder Ivona (mit Keys) noch Google mit mir. Sayit hat was gegen mich 8-) .
                                      1641_wm.jpg

                                      Thomas

                                      1 Reply Last reply Reply Quote 0
                                      • First post
                                        Last post

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      574
                                      Online

                                      31.7k
                                      Users

                                      79.7k
                                      Topics

                                      1.3m
                                      Posts

                                      3
                                      18
                                      2686
                                      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