Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Nudging - Nur einen Wert in eine Variable für Sayit

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Nudging - Nur einen Wert in eine Variable für Sayit

Scheduled Pinned Locked Moved Skripten / Logik
60 Posts 8 Posters 8.2k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • F Offline
    F Offline
    Fitti
    wrote on last edited by
    #10

    Danke.

    Das mit der 0 habe ich jetzt abgefangen.

    // Einfache Temperaturansage mit SayIt.
    // Variante 1 mittels splitten der Temperatur, damit die Ansage nicht
    // "Es sind 18 Punkt 2 Grad " sagt.
    
    var idSayIt = "sayit.0.tts.text";  /*Text to speech*/
    var Temperatursensor = getState("hm-rpc.0.LEQ00xxxxx.1.TEMPERATURE"); /*Temperatursensor:1.TEMPERATURE*/
    var temperatur = Temperatursensor.val.toString();
    var temp_array = [];
    
    temp_array = temperatur.split(".");
    
    // Fange leere Nachkommastellen ab. Das passiert, wenn die Temperatur z. B. 18.0 ist.
    // Es wird dann nur "18" gelesen.
    if (!temp_array[1]) {
        temp_array[1] = "0";
        log("Die Nach-Kommastelle in temp_array[1] war nicht vorhanden und wird nun fest auf 0 gesetzt.");
    }
    setState (idSayIt, "Die Temperatur beträgt " + temp_array[0] + "," + temp_array[1] + " Grad.");
    
    
    // Einfache Temperaturansage mit SayIt.
    // Variante 2 mittels ersetzen des Punktes in ein Komma, damit die Ausgabe nicht
    // "Es sind 18 Punkt 2 Grad " sagt.
    
    var idSayIt = "sayit.0.tts.text";  /*Text to speech*/
    var Temperatursensor = getState("hm-rpc.0.LEQ00xxxxx.1.TEMPERATURE"); /*Temperatursensor:1.TEMPERATURE*/
    var temperatur = Temperatursensor.val.toString();
    
    temperatur = temperatur.replace('\.', '\,');
    
    setState (idSayIt, "Die Temperatur beträgt " + temperatur + " Grad.");
    

    Vielleicht hat ja jemand auch mal das Problem.

    "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
    Plural von Status ist auch Status!

    1 Reply Last reply
    0
    • S Offline
      S Offline
      skorpil
      wrote on last edited by
      #11

      Ich bin mit dem JS Script noch ein Dummy. Wo wird das hingeschrieben und wie wird es aufgerufen? Danke für Hilfe.

      1 Reply Last reply
      0
      • HomoranH Do not disturb
        HomoranH Do not disturb
        Homoran
        Global Moderator Administrators
        wrote on last edited by
        #12

        @skorpil:

        Wo wird das hingeschrieben `
        siehe:

        http://www.iobroker.net/docu/?page_id=156&lang=de

        Gruß

        Rainer

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        1 Reply Last reply
        0
        • S Offline
          S Offline
          skorpil
          wrote on last edited by
          #13

          Rainer,

          Jetzt weiß ich, wie und wo ich Scripte anlege. Fehlt nur noch, wie ich sie aufrufe? Da ich kein Profi bin, verzeih mir meine vlt. dumme Frage. Und danke für die Hilfe.

          Bernd

          1 Reply Last reply
          0
          • P Offline
            P Offline
            pix
            wrote on last edited by
            #14

            @skorpil:

            Fehlt nur noch, wie ich sie aufrufe? ` eigentlich solltest du sie nicht manuell aufrufen. Sie starten sich selbst beim Speichern. Wenn dann eine, der überwachten Bedingungen eintritt (Schedule, Aktorstatus, etc.), dann wird nach Skript abgearbeitet.

            Gruß

            Pix

            ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

            1 Reply Last reply
            0
            • S Offline
              S Offline
              skorpil
              wrote on last edited by
              #15

              Pix,

              Ich danke Dir. Bedeutet "eigentlich ",' dass ein Aufruf resp. einAauslösen des Scripts über den Browser zu Testzwecken gar nicht geht? Denn bei CCU.io war das ja möglich…

              Liebe Grüße

              Bernd

              1 Reply Last reply
              0
              • BluefoxB Offline
                BluefoxB Offline
                Bluefox
                wrote on last edited by
                #16

                @skorpil:

                Pix,

                Ich danke Dir. Bedeutet "eigentlich ",' dass ein Aufruf resp. einAauslösen des Scripts über den Browser zu Testzwecken gar nicht geht? Denn bei CCU.io war das ja möglich…

                Liebe Grüße

                Bernd `
                Du rufst dem auf, wenn du denn speicherst.

                1 Reply Last reply
                0
                • F Offline
                  F Offline
                  Fitti
                  wrote on last edited by
                  #17

                  Oder wenn du auf den Reload Button klickst 8-) :
                  578_say_reload.png

                  Fitti

                  "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                  Plural von Status ist auch Status!

                  1 Reply Last reply
                  0
                  • S Offline
                    S Offline
                    skorpil
                    wrote on last edited by
                    #18

                    Danke, Fitti
                    6305_hm_sv_tuer.png

                    1 Reply Last reply
                    0
                    • S Offline
                      S Offline
                      skorpil
                      wrote on last edited by
                      #19

                      So, erster Test mit dem ersten Script von Fitti auch hier bei mir erfolgreich. Jetzt brauche ich noch Hilfe zum triggern. Kann mir jemand sagen, wie ich in JS programmiere, z. B. : Türe auf (Tür/Fenster Kontakt vorhanden), Durchsage auslösen?

                      Danke für die Hilfe!

                      1 Reply Last reply
                      0
                      • P Offline
                        P Offline
                        pix
                        wrote on last edited by
                        #20

                        @skorpil:

                        Kann mir jemand sagen, wie ich in JS programmiere, z. B. : Türe auf (Tür/Fenster Kontakt vorhanden), Durchsage auslösen? `

                        var status_zustand_tfk = ['geschlossen','geöffnet'];
                        on("hm-rpc.0.SERIENNUNMERTFK.1.STATE"/*Fenster links Wohnzimmer.STATE*/, function (data) {
                            var status_geraet = 'Wohnzimmer Fenster links';         // Klartextname des Gerätes // alternativ: status_geraet = data.name;
                            var ansage = status_geraet + ' ' + status_zustand_tfk[data.newState.val]
                            log(ansage, 'info');
                            setState("sayit.0.tts.text"/*Text to speech*/, ansage);
                        });
                        
                        

                        Seriennummer und Name des Gerätes noch anpassen. Sayit-Adapter sollte natürlich installiert und aktiviert sein.

                        Gruß,

                        Pix

                        ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                        1 Reply Last reply
                        0
                        • S Offline
                          S Offline
                          skorpil
                          wrote on last edited by
                          #21

                          Wow! Danke!

                          1 Reply Last reply
                          0
                          • S Offline
                            S Offline
                            steinwedel
                            wrote on last edited by
                            #22

                            Die Lösung Deiner Frage findest DU in der Javascript-Doku unter "subscribe" bzw. "on".

                            Trotzdem hier ein Beispiel, welches eine Nachricht ausgibt (nicht über sayit sondern über pushover):

                            subscribe({id: "hm-rpc.0.KEQ0955279.1.STATE"/*Wohungstür Kontakt*/ , val: true}, function (obj) {
                                    sendTo("pushover", "Wohnungstür geöffnet");
                            });
                            
                            

                            Gruß Gerhard

                            1 Reply Last reply
                            0
                            • S Offline
                              S Offline
                              skorpil
                              wrote on last edited by
                              #23

                              Vielleicht nerve ich ja das Forum, aber…

                              Ich möchte mit JS Script eine homematic Variable ansprechen resp. verändern. Die device finde ich. Aber wo verstecken sich die ganzen homematic Variablen, die ich in der CCU gesetzt habe?

                              1 Reply Last reply
                              0
                              • HomoranH Do not disturb
                                HomoranH Do not disturb
                                Homoran
                                Global Moderator Administrators
                                wrote on last edited by
                                #24

                                Unter hm-rega.0

                                Gesendet von meinem LIFETAB_S785X mit Tapatalk

                                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                1 Reply Last reply
                                0
                                • S Offline
                                  S Offline
                                  skorpil
                                  wrote on last edited by
                                  #25

                                  Homoran,

                                  danke für den Tipp. Aber um offen zu sein: iobroker ist hier ziemlich kryptisch. Da muss man schon feste raten, was was ist. Vgl. Dateianhang mit dem PrintScreen.

                                  Gibt es denn bei iobroker keine Möglichkeit des Klartexts? Ich hatte die Variablen in der CCU ja in Klartext benannt. Dto Programme, dto. Geräte. Aber all das scheint im iobroker verschwunden. Oder stelle ich mich nur doof an und habe irgendwo einen Haken vergessen zu setzen?
                                  622_image.jpeg

                                  1 Reply Last reply
                                  0
                                  • HomoranH Do not disturb
                                    HomoranH Do not disturb
                                    Homoran
                                    Global Moderator Administrators
                                    wrote on last edited by
                                    #26

                                    Irgendwas scheint da zu fehlen.

                                    Ich sehe das hier auf dem tablet nicht richtig, aber die header scheinen nicht zu den spalten zu passen.

                                    Der header "Name " scheint gar keine korrespondierende spalte zu haben.

                                    Als workaround könntest du dir unter objects die nummer heraussuchen. Da sind auch die klartextnamen drin.

                                    @Bluefox sollte sich das mal ansehen.

                                    Gruß

                                    Rainer

                                    Gesendet von meinem LIFETAB_S785X mit Tapatalk

                                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                    1 Reply Last reply
                                    0
                                    • BluefoxB Offline
                                      BluefoxB Offline
                                      Bluefox
                                      wrote on last edited by
                                      #27

                                      @skorpil:

                                      Homoran,

                                      danke für den Tipp. Aber um offen zu sein: iobroker ist hier ziemlich kryptisch. Da muss man schon feste raten, was was ist. Vgl. Dateianhang mit dem PrintScreen.

                                      Gibt es denn bei iobroker keine Möglichkeit des Klartexts? Ich hatte die Variablen in der CCU ja in Klartext benannt. Dto Programme, dto. Geräte. Aber all das scheint im iobroker verschwunden. Oder stelle ich mich nur doof an und habe irgendwo einen Haken vergessen zu setzen? `
                                      Was kommt bei dir?

                                      cd /opt/iobroker
                                      iobroker object get hm-rega.0.13752 --pretty
                                      
                                      
                                      1 Reply Last reply
                                      0
                                      • paul53P Offline
                                        paul53P Offline
                                        paul53
                                        wrote on last edited by
                                        #28

                                        @Homoran:

                                        Ich sehe das hier auf dem tablet nicht richtig, aber die header scheinen nicht zu den spalten zu passen.

                                        Der header "Name " scheint gar keine korrespondierende spalte zu haben. `
                                        Das ist im Reiter "Objekte" so, wenn man ein schmales Browser-Fenster verwendet. Macht man das Browser-Fenster breiter, sieht man auch die Namen und die Überschriften passen einigermassen zu den Spalten.

                                        Die Spalten-Formatierung für diesen Reiter ist nicht optimal.

                                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                        1 Reply Last reply
                                        0
                                        • HomoranH Do not disturb
                                          HomoranH Do not disturb
                                          Homoran
                                          Global Moderator Administrators
                                          wrote on last edited by
                                          #29

                                          Hallo Paul,

                                          der Screenshot ist aber IMHO aus dem datenpunktselektor beim vis widget.

                                          Oder?

                                          EDIT:

                                          Sieht beimir, zumindest auf dem tablet, leider genauso aus.

                                          Die Spalte "name" fehlt.

                                          Gruß

                                          Rainer

                                          Gesendet von meinem LIFETAB_S785X mit Tapatalk

                                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          573

                                          Online

                                          32.7k

                                          Users

                                          82.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe