Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Sayit in Betrieb nehmen

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    Sayit in Betrieb nehmen

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

      Hallo ihr lieben,

      da ich meine SH mit IO versuche immer weiter zu bringen habe ich mich mal an Say it versucht.

      Bin aber wie es scheint etwas zu Blöd dafür, ich weiß nicht wie ich das ganze in Betrieb nehme.

      Den Adapter habe ich installiert aber wie geht es dann weiter.

      Wie gebe ich dem Sayit was er sagen soll.

      Ich blicke durch die Englische Anleitung nicht ganz durch.

      Danke für eure Hilfe

      MFG Maggi

      1 Reply Last reply Reply Quote 0
      • F
        Fitti last edited by

        Ja, der Anfang ist immer schwer - da es auch mehrere Lösungen gibt. Und wenn diese nicht klar sind, ist alles verwirrend.

        Also im Prinzip muss dir erst mal klar werden, dass die Ausgabe auf unterschiedlichen Wegen erfolgt.

        Sprich: Wer spricht… 😄 => Also welches Stückchen Hardware soll was sagen.

        Wenn Du dir unter dem Reiter "Instanzen" die Konfiguration des Sayit Adapters ansiehst, hast Du alles, was Du einstellen kannst. Da ist der Bereich "Ausgabe durch" entscheidend. Wie Du sehen wirst, eine ganze Menge.

        Es bleibt wohl nichts weiter über, als dass Du dir erst mal einAusgabegerät aussuchen musst.

        Nun kommt noch die Stimme, hier gibt es Ivony und Google. Am Anfang ist Google wahrscheinlich einfacher zu nutzen. Bei Ivona musst Du dir erst bei amazon einen "Acoount" holen.

        Das eigentlich "Sprechen" erfolgt dann sehr Simple über Skripte.

        Ein einfacher Zweizeiler sieht so aus:

           var idSayIt = "sayit.0.tts.text";
           setState(idSayIt, "Ich bin der Text, der gesprochen wird");
        
        

        Zur Einrichtung gebe hier in der Bordsuche einfach sayit und dein weiteres Fragezeichen (also was Dich interessiert) ein. Es gibt sehr viele Antworten bereits zu Lösungen, wo du noch nicht mal das Problem vorher kanntest. 😄 Damit meine ich, dasss ich nach Problem/Thema 1 recherchierte und ganz andere Lösungen zum Thema 2 fand.

        Üblicherweise war auch bereits mein Thema 1 behandelt und erklärt worden.

        Du kannst natürlich auch gerne nochmal direkt hier nachfragen, wenn Du uns dann verräst, "was" und "wodurch" Du auf welchem Gerät ausgeben möchtest. Das "wie" wird dann von uns hier bestimmt erklärt.

        Viel Spaß,

        Fitti

        1 Reply Last reply Reply Quote 0
        • C
          csamaggi last edited by

          Also erst einmal Danke für die Erklärung.

          Hier mal meine Vorstellungen.

          Ich habe ein Sonos System und würde darüber die Ausgabe machen.

          Dann hatte ich mir gedacht das mir über Sayit angesagt wird dass z.B. ein Fenster offen ist, ach da gibt es soviel weiß garnicht so genau was noch so zu realisieren ist.

          MFG Maggi

          1 Reply Last reply Reply Quote 0
          • F
            Fitti last edited by

            Na das ist doch aber schon mal ein Anfang.

            Sonos habe ich keines, aber das scheint ja sehr einfach zu sein: Einfach auswählen und gut.

            Klick dich mal im SayIt Adapter (unter Instanzen!) durch und wähle Google Deutsch und sonos aus. Unten dann noch web.0 (wahrscheinlich ist da nur eine Auswahl) und deinen Netzwerkadapter, wo iobroker drauf läuft. Wahrscheinlich auch nicht kompliziert.

            Dann einfach mal in den Skripten das eingeben, was ich oben gepostet habe (nicht vergessen dann auf "Javaskript" einzustellen, sonst kannst Du keinen Code eingeben), speichern und links starten. Dann sollte deas Sonos-Dideldum den Text ausgeben.

            Das mit den Fenster machen wir danach.

            1 Reply Last reply Reply Quote 0
            • E
              ein-bayer last edited by

              hi,

              da mach ich auch mit. Folgendes script geht bei mir schon nachdem ich im scripteditor play drücke

              var idSayIt = "sayit.0.tts.text";

              var vol ="sayit.0.tts.volume";

              setState (vol,70);

              setState (idSayIt, "Hallo Welt");

              wie lasse ich das script per Bewegungsmelder auslösen?

              1 Reply Last reply Reply Quote 0
              • C
                csamaggi last edited by

                So ich habe das mal versucht und erstmal mit Windows Default.

                Habe das in den Settings von Sayit eingestellt. Den Gong kann ich hören aber keine SayIt Ausgabe.

                Ich habe dann deine Zeilen bei Skripte im Adminbereich eingegeben und gespeichert und links dann auf den roten bzw grünen Pfeil geklickt aber es kam kein Ton nicht mal der Gong.

                Update: Mit Sonos läuft es schonmal also Ton und Ansagen kommen raus.

                MFG Maggi

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

                  Hallo,

                  mache mal folgende schnellen Test.

                  Im Admin Panel unter Objekte öffne den Pfad sayit.0–>tts-->test.

                  Dort gib recht in das Feld mal folgendes ein.

                  de;100;Das ist ein Demotext

                  Nach drücken der Entertaste sollte dieser Satz gesprochen werden.

                  Ist das so?

                  Lg

                  Günther

                  1 Reply Last reply Reply Quote 0
                  • C
                    csamaggi last edited by

                    Danke wie gesagt die Ausgabe geht nun.

                    Nun ist die Frage wie geht es weiter?

                    Muss das ganze nur im Skript geschrieben werden?

                    Da bin ich leider noch ganz am Anfang und habe keine Ahnung. Dacht das man dass evtl irgendwie über VIS machen kann so Quasi Drag&Drop.

                    MFG Maggi

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

                      Nimm für den Anfang ein Blockly.

                      Du erzeugst unter dem Skripte Reiter ein neues Script. Als Typ nimm Blockly.

                      Nun kannst du sehr simpel Anweisungen zusammenclicken.

                      Im Beispiel spricht meine Anlage wenn eine Systemvariable auf meiner CCU den Wert "2" angenommen hat.

                      Lg

                      Günther
                      1180_iobroker_1.jpg

                      1 Reply Last reply Reply Quote 0
                      • C
                        csamaggi last edited by

                        Ah ok das ist doch mal was habe das mal für mich eingestellt mit meinem Innogy SH aber keine Ausgabe siehe log.

                        ioBroker-Pi	2017-01-29 16:20:00.721	info	host.ioBroker-Pi instance system.adapter.tvspielfilm.0 started with pid 20461
                        javascript.0	2017-01-29 16:19:06.766	info	script.js.SayIt.Bürofenster: registered 1 subscription and 0 schedules
                        javascript.0	2017-01-29 16:19:06.764	warn	State "sayit.0.tts.text" not found
                        javascript.0	2017-01-29 16:19:06.755	info	Start javascript script.js.SayIt.Bürofenster
                        javascript.0	2017-01-29 16:19:06.096	info	Stop script script.js.SayIt.Bürofenster
                        sayit.0	2017-01-29 16:18:57.801	info	All files uploaded
                        sayit.0	2017-01-29 16:18:57.657	info	Upload announce mp3 files
                        sayit.0	2017-01-29 16:18:57.640	info	starting. Version 1.4.0 in /opt/iobroker/node_modules/iobroker.sayit, node: v4.5.0
                        

                        MFG Maggi

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

                          Bitte das komplette Script posten.

                          Im Log steht, das er den Datenpunkt nicht findet.

                          Lg

                          Günther

                          1 Reply Last reply Reply Quote 0
                          • S
                            Sprite01 last edited by

                            Hänge mich gleich mal rein.

                            Ich versuche es gerade über Javascript, nicht Blockly.

                            Steckdose schalten mit Sprachrückmeldung klappt schon mal.

                            var idSayIt     = "sayit.0.tts.text";               // Hier die entsprechende SayIt Text ID
                            var idButton    = "hm-rpc.0.LEQ1234874.1.STATE"; //Objekt
                            var lastSay     = null;
                            
                            // Nach Schalten wird folgender Text gesprochen
                            subscribe({id: idButton, val: true}, function (obj) {
                                     if (!lastSay || ((new Date()).getTime() - lastSay) > 3000) {
                                              lastSay = (new Date()).getTime();
                                              setState (idSayIt, "de;60;Licht Hinterzimmer Ein");
                                     }
                            
                                    });
                            

                            Ich nutze im Moment 2 Scripte - für EIN und AUS getrennt.

                            Kann man das auch in einem zusammen fassen ?

                            Was muss ich im Script ändern um eine mp3 auszugeben ?

                            Mit ccu.io habe ich es damals gehabt, hier im Forum habe ich noch kein Beispiel gefunden (man glaubt es kaum).

                            1 Reply Last reply Reply Quote 0
                            • H
                              Hicki last edited by

                              Hallo,

                              ich bin neu hier, und habe mit Sayit noch nicht viel Erfahrung. Wo gebe ich das Script überhaupt ein?

                              Wie kann ich denn überhaupt testen, ob ich Sayit richtig installiert habe?

                              Gruß Hicki

                              1 Reply Last reply Reply Quote 0
                              • H
                                Hicki last edited by

                                Bitte um Hilfe.

                                Gruß Hicki

                                1 Reply Last reply Reply Quote 0
                                • S
                                  Sprite01 last edited by

                                  Die Scripte gibst du im Reiter oben bei "Scripte" ein, vorausgesetzt du hast den Adapter JavaScript Script Engine installiert.

                                  Meine laufen alle unter dem Ordner "common", ob das richtig ist weiß ich nicht.

                                  Sprachansagen kommen aber durch.

                                  Auf der Linken Seite siehst du ein Plus-Zeichen, damit kannst du Scripte hinzufügen.

                                  Auf der rechten Seite musst du noch Enginetyp: JavaScript ggf. einstellen.

                                  Siehe auch Beschreibung zum Adapter: http://www.iobroker.net/docu/?page_id=156&lang=de

                                  (Bei mir geht die Vorankündigung gong.mp3 nicht, kriege ich aber noch hin .. 🙂 )

                                  1 Reply Last reply Reply Quote 0
                                  • H
                                    Hicki last edited by

                                    Vielen Dank Dirk, werde mich gleich mal dransetzen.

                                    Gruß Andreas

                                    1 Reply Last reply Reply Quote 0
                                    • C
                                      csamaggi last edited by

                                      Hallo ihr lieben ich versuche mich noch immer an SayIT aber ich komme nicht weiter.

                                      Ich habe ein Script erstellt zum testen aber ich bekomme keine Ausgabe über meine Sonos das Testscript mit "HALLO WELT" geht.

                                      Hier mal der Code in Blockly und Java

                                      var Open;

                                      var Open;
                                      
                                      on({id: "innogy-smarthome.0.Vorratsraum.Innentür.IsOpen"/*IsOpen*/, change: "ne"}, function (obj) {
                                        var value = obj.state.val;
                                        var oldValue = obj.oldState.val;
                                        if (getState("innogy-smarthome.0.Vorratsraum.Innentür.IsOpen").val == Open) {
                                          setState("sayit.0.tts.text", "de;30;" + 'Vorratsraum offen!');
                                        }
                                      });
                                      

                                      Hier der LOG.

                                      javascript.0	2017-02-06 19:15:38.664	info	script.js.SayIt.Vorratsraum: registered 1 subscription and 0 schedules
                                      javascript.0	2017-02-06 19:15:38.654	info	Start javascript script.js.SayIt.Vorratsraum
                                      javascript.0	2017-02-06 19:15:37.344	info	Stop script script.js.SayIt.Vorratsraum
                                      

                                      Hoffe ihr habt einen Tip.
                                      1901_sayit_ausgabe.png

                                      1 Reply Last reply Reply Quote 0
                                      • B
                                        Bradock last edited by

                                        Sagt mal, habt ihr bei längeren Texten auch kein Funktion?

                                        Habe bisher nichts über eine Zeichenbegrenzung (bewusst) wahrgenommen.

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

                                          IMHO gibt es bei google eine 70 Zeichen Begrenzung.

                                          Gruß

                                          Rainer

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

                                            @csamaggi:

                                              if (getState("innogy-smarthome.0.Vorratsraum.Innentür.IsOpen").val == Open) {
                                            ```` `  
                                            

                                            Ich kenne das innogy-System nicht, aber der Datenpunkt "IsOpen" hat doch bestimmt die Werte true oder false und nicht "Open". Falls er doch den Wert "Open" hat, wäre das aber ein String und müssste in Anführungszeichen gesetzt werden.

                                            Mein Vorschlag:

                                            on({id: "innogy-smarthome.0.Vorratsraum.Innentür.IsOpen"/*IsOpen*/,
                                            	change: "ne",
                                            	val: true  //spart die if-Abfrage nach true
                                            	}, function (obj) {
                                            	var value = obj.state.val;
                                            	var oldValue = obj.oldState.val;  // eigentlich nicht nötig, da der Vorgänger-Wert für IsOpen nicht weiter verwendet wird
                                            	log("IsOpen = " + obj);
                                            	setState("sayit.0.tts.text", "de;30;" + 'Vorratsraum offen!');
                                            });
                                            
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            485
                                            Online

                                            32.1k
                                            Users

                                            80.7k
                                            Topics

                                            1.3m
                                            Posts

                                            17
                                            45
                                            13730
                                            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