Skip to content
  • 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
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Withings v0.0.x

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

  • Neues Video über Aliase, virtuelle Geräte und Kategorien
    BluefoxB
    Bluefox
    25
    1
    1.3k

Test Withings v0.0.x

Scheduled Pinned Locked Moved Tester
527 Posts 50 Posters 126.6k Views 45 Watching
  • 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.
  • stony2kS Offline
    stony2kS Offline
    stony2k
    wrote on last edited by
    #214

    Hallo zusammen,

    danke Tombox für den tollen Adapter. Ich wollte auch mal hier meine ersten Gehversuche machen. Vielleicht könnt ihr mir ja helfen. Bei mir scheinen alle Werte genau 1 h zu viel zu haben. Z. B.

    d9975fb8-28d7-40e3-985b-610291661d46-image.png Die Zahl * 1000 = der Timestamp, den ich mir dann entsprechend formatieren kann, richtig?

    26bb1d4d-3525-4e08-8246-75fa27bb6509-image.png Das ergibt dann 03:29 h, in der Health Mate App wird aber nur 02:29 h angezeigt.

    Das gleiche gilt für die gesamte Schlafdauer
    a9680fcd-aa09-405c-aa1b-0efdec00b587-image.png Die AM kann ich ignorieren, müssten also 07:12 h darstellen. Laut der App habe ich aber nur 06:12 Uhr geschlafen.

    Was übersehe ich hier? 🙂

    1 Reply Last reply
    0
    • Damrak2022D Damrak2022

      @tombox Guten Morgen, danke das Du den Datenpunkt in der neuen Version umgerechnet hast. Könntest Du auch noch die mit einem grünen Pfeil markierten Datenpunkte umrechnen. Dann könnte ich meine massiven Schlafstörungen optimal verfolgen.
      Bildschirmfoto_2022-03-20_um_06_50_38.jpg

      Ich muss noch eine Frage hinterherschieben: Obwohl ja jetzt der Datenpunkt "total sleep time" im Datenpunkt korrekt angezeigt wird, taucht diese korrekte Bezeichnung nicht in meiner Grafik auf:
      Bildschirmfoto_2022-03-20_um_07_39_20.jpg

      Bildschirmfoto 2022-03-20 um 07.42.32.png

      Woran liegt das?

      T Offline
      T Offline
      tombox
      wrote on last edited by
      #215

      @damrak2022 Kannst du bitte die datenpunkte schreiben und welch umrechnung sie brauchen, das ist leichter als aus einem bild zu extrahieren

      stony2kS Damrak2022D O 3 Replies Last reply
      0
      • T tombox

        @damrak2022 Kannst du bitte die datenpunkte schreiben und welch umrechnung sie brauchen, das ist leichter als aus einem bild zu extrahieren

        stony2kS Offline
        stony2kS Offline
        stony2k
        wrote on last edited by
        #216

        @tombox sagte in Test Withings v0.0.x:

        @damrak2022 Kannst du bitte die datenpunkte schreiben und welch umrechnung sie brauchen, das ist leichter als aus einem bild zu extrahieren

        total_sleep_time am besten in einem timestamp um sich das selber formatieren zu können

        bei deepsleepduration, lightsleepduration und remsleepduration (andere Werte noch nicht getestet) müsste der Wert mit 1000 multipliziert werden um daraus in Blockly die Formatierung korrekt zu erstellen. Bei sind die Werte mit 1000 multipliziert dann genau 3600000 ms zu hoch.

        Ich muss z. B. deepsleepduration wie folgt formatieren: deepsleepduration*1000-3600000 um die in der App angezeigte Zeit korrekt darstellen zu können.

        1 Reply Last reply
        0
        • T tombox

          @damrak2022 Kannst du bitte die datenpunkte schreiben und welch umrechnung sie brauchen, das ist leichter als aus einem bild zu extrahieren

          Damrak2022D Offline
          Damrak2022D Offline
          Damrak2022
          wrote on last edited by
          #217

          @tombox Soory, ich hatte eine Woche kein Internet zur Verfügung.

          Mich würden noch folgende Punkte interessieren:
          deepsleepduration
          durationtosleep
          lightsleepduration
          remsleepduration
          snoring
          totaltimeinbed

          Welche Umrechnung sie brauchen weiß ich ehrlich gesagt nicht genau.

          Ich kann Dir nur mal die Werte aus den Datenpunkten von heute Nacht geben und Dir sagen was in meiner App steht.

          deepsleepduration: 1020 / in der App sind das 17 Minuten
          durationsleep: 1380 / ?
          lightsleepduration: 3420 / in der App sind das 57 Minuten
          remsleepduration: 540 / in der App sind das 9 Minuten
          snoring: 3000 / in der App sind das 50 Minuten
          totaltimeinbed: 8520 / in der App sind das 142 Minuten

          Ich poste Dir hier noch ein paar Fotos aus der App. Dann is das vielleicht für Dich verständlicher. Auf jeden Fall schon mal viele Dank für Deine Hilfe.
          IMG_2BA5A6FD82E2-1.jpeg
          IMG_6F4F559C0C40-1.jpeg
          IMG_26D3B105326E-1.jpeg
          IMG_86BDD54DA89D-1.jpeg
          IMG_5423A6149098-1.jpeg
          IMG_8154F2D25364-1.jpeg
          IMG_628685FC4C75-1.jpeg
          IMG_846938F3A09F-1.jpeg
          IMG_C4ED6670AA57-1.jpeg

          Mit besten Grüßen
          Andy

          1 Reply Last reply
          0
          • Damrak2022D Offline
            Damrak2022D Offline
            Damrak2022
            wrote on last edited by Damrak2022
            #218

            @tombox Hallo, die Umrechnung von Dir welche ich für absolut genial finde, bringt mir leider ein neues Problem:

            Im marterialdesign Line Chart Widget wird mir nichts mehr von meiner Schlafdauer dargestellt, da das Widget anscheinend nicht mit der Formatierung Stunden/Minuten umgehen kann. Ich muss jetzt mal schauen, mit welchem Widget ich das darstellen kann, bin aber auch für jeden Tipp dankbar,

            Mit besten Grüßen
            Andy

            1 Reply Last reply
            0
            • stony2kS Offline
              stony2kS Offline
              stony2k
              wrote on last edited by stony2k
              #219

              @damrak2022 sagte in Test Withings v0.0.x:

              @tombox Soory, ich hatte eine Woche kein Internet zur Verfügung.

              Mich würden noch folgende Punkte interessieren:
              deepsleepduration
              durationtosleep
              lightsleepduration
              remsleepduration
              snoring
              totaltimeinbed

              Hi, hier kann ich dir vielleicht schon weiter helfen. Da ich selber das ganze etwas anders gelöst habe, habe ich für dich alles auf Blockly umgebaut und dokumentiert.

              deepsleepduration
              Leg dir, z. B. unter 0_userdata einen neuen Ordner, z. B. withings, an und darunter dann deinen datenpunkt -> deepsleepduration (Typ mixed und in den Objektdaten kannst du dann die Unit "unit": "h" hinzufügen).
              04e80e34-d891-4373-b295-1ff3945c0288-image.png
              03812111-0bb1-4b42-98c1-de7e78100d2a-image.png

              Dann legst du ein Blockly an, welches die Datenquelle einliest, formatiert und fertig in den Datenpunkt schreibt. So muss du nichts in der VIS formatieren. Die Zeit aus der Datenquelle mit 1.000 ms multiplizieren, damit man dies über Datum/Zeit schick formatieren kann. Natürlich führen hier viele Wege nach Rom.
              c8b1770c-b755-43ab-b718-0d9880826f06-image.png
              In meinem Fall wird in der Datenquelle aber immer 1 h zu viel angezeigt, daher ziehe ich noch 1 h (angegeben in ms = 3600000) von der Zeit ab.
              baaa04a0-5f74-4df8-9ce0-c03a3da687f7-image.png
              Dann ist der Datenpunkt für deine VIS im besten Fall optimal vorbereitet:
              46644b68-2a4a-41a4-a873-83bb8ce87192-image.png

              Da ich persönlich Jarvis als Visualisierung benutze, hier der JSON String zur Formatierung der Datenpunkt Eigenschaft:

              {"value":"val => '0'+new Date(val*1000-3600000).getHours()+':'+new Date(val*1000-3600000).getMinutes()"}
              

              totaltimeinbed -> total_sleep_time
              Werte ich nicht aus (da ich im Bett TV schaue und der Wert dadurch für mich nicht die reine Schlafzeit darstellt), aber vielleicht ist ja die Schlafzeit total_sleep_time etwas für dich. Aktuell wird der Wert ja noch als Typ mixed ausgegeben, was den Nachteil hat, dass der ioBroker dies als Uhrzeit interpretiert und mit Tageszeit AM anzeigt. Das wäre nicht allzu schlimm, wenn die Zeit nicht auf hier mit 1h zu viel angezeigt werden würde 😄

              Hier musste ich also ein wenig kreativer werden. Du legst also einen neuen Datenpunkt unter 0_userdata an mit Typ mixed, z. B. total_sleep_time. Da ich in der Anzeige gerne eine führende 0 hätte, habe ich den Datenpunkt wie folgt formatiert: Die : durch . ersetzen, das AM hin abziehen, das ganze in eine Fließkommazahl umwandeln, dann auf 2 Nachkommastellen runden und 1 h abziehen. Anschließend daraus wieder einen String erstellen, wo . durch : ersetzt wird. Diesem String kann an dann eine 0 voran stellen. Soweit zumindest meine Lösung in Jarvis:

              {"value":"val => '0'+parseFloat(val.replace(':','.').substr(0,4)-1).toFixed(2).toString().replace('.',':')"}
              

              Bei der Blockly Variante habe ich das für dich so gelöst:
              b2472926-0a71-4dcb-bc0e-a339b3a1c137-image.png

              Javascript Funktion:

              let str1 = eingabe;
              let str2 = suchen;
              let str3 = ersetzen;
              
              str1 = str1.replace(suchen,ersetzen);
              
              return str1;
              

              Und schon ist der Datenpunkt schön formatiert:
              c93bd6fa-6004-478c-a8d9-23497855dbfb-image.png

              Damrak2022D 1 Reply Last reply
              0
              • stony2kS stony2k

                @damrak2022 sagte in Test Withings v0.0.x:

                @tombox Soory, ich hatte eine Woche kein Internet zur Verfügung.

                Mich würden noch folgende Punkte interessieren:
                deepsleepduration
                durationtosleep
                lightsleepduration
                remsleepduration
                snoring
                totaltimeinbed

                Hi, hier kann ich dir vielleicht schon weiter helfen. Da ich selber das ganze etwas anders gelöst habe, habe ich für dich alles auf Blockly umgebaut und dokumentiert.

                deepsleepduration
                Leg dir, z. B. unter 0_userdata einen neuen Ordner, z. B. withings, an und darunter dann deinen datenpunkt -> deepsleepduration (Typ mixed und in den Objektdaten kannst du dann die Unit "unit": "h" hinzufügen).
                04e80e34-d891-4373-b295-1ff3945c0288-image.png
                03812111-0bb1-4b42-98c1-de7e78100d2a-image.png

                Dann legst du ein Blockly an, welches die Datenquelle einliest, formatiert und fertig in den Datenpunkt schreibt. So muss du nichts in der VIS formatieren. Die Zeit aus der Datenquelle mit 1.000 ms multiplizieren, damit man dies über Datum/Zeit schick formatieren kann. Natürlich führen hier viele Wege nach Rom.
                c8b1770c-b755-43ab-b718-0d9880826f06-image.png
                In meinem Fall wird in der Datenquelle aber immer 1 h zu viel angezeigt, daher ziehe ich noch 1 h (angegeben in ms = 3600000) von der Zeit ab.
                baaa04a0-5f74-4df8-9ce0-c03a3da687f7-image.png
                Dann ist der Datenpunkt für deine VIS im besten Fall optimal vorbereitet:
                46644b68-2a4a-41a4-a873-83bb8ce87192-image.png

                Da ich persönlich Jarvis als Visualisierung benutze, hier der JSON String zur Formatierung der Datenpunkt Eigenschaft:

                {"value":"val => '0'+new Date(val*1000-3600000).getHours()+':'+new Date(val*1000-3600000).getMinutes()"}
                

                totaltimeinbed -> total_sleep_time
                Werte ich nicht aus (da ich im Bett TV schaue und der Wert dadurch für mich nicht die reine Schlafzeit darstellt), aber vielleicht ist ja die Schlafzeit total_sleep_time etwas für dich. Aktuell wird der Wert ja noch als Typ mixed ausgegeben, was den Nachteil hat, dass der ioBroker dies als Uhrzeit interpretiert und mit Tageszeit AM anzeigt. Das wäre nicht allzu schlimm, wenn die Zeit nicht auf hier mit 1h zu viel angezeigt werden würde 😄

                Hier musste ich also ein wenig kreativer werden. Du legst also einen neuen Datenpunkt unter 0_userdata an mit Typ mixed, z. B. total_sleep_time. Da ich in der Anzeige gerne eine führende 0 hätte, habe ich den Datenpunkt wie folgt formatiert: Die : durch . ersetzen, das AM hin abziehen, das ganze in eine Fließkommazahl umwandeln, dann auf 2 Nachkommastellen runden und 1 h abziehen. Anschließend daraus wieder einen String erstellen, wo . durch : ersetzt wird. Diesem String kann an dann eine 0 voran stellen. Soweit zumindest meine Lösung in Jarvis:

                {"value":"val => '0'+parseFloat(val.replace(':','.').substr(0,4)-1).toFixed(2).toString().replace('.',':')"}
                

                Bei der Blockly Variante habe ich das für dich so gelöst:
                b2472926-0a71-4dcb-bc0e-a339b3a1c137-image.png

                Javascript Funktion:

                let str1 = eingabe;
                let str2 = suchen;
                let str3 = ersetzen;
                
                str1 = str1.replace(suchen,ersetzen);
                
                return str1;
                

                Und schon ist der Datenpunkt schön formatiert:
                c93bd6fa-6004-478c-a8d9-23497855dbfb-image.png

                Damrak2022D Offline
                Damrak2022D Offline
                Damrak2022
                wrote on last edited by
                #220

                @stony2k vielen Dank, ich werde später mal versuchen ob ich das hinbekomme.

                Mit besten Grüßen
                Andy

                1 Reply Last reply
                0
                • Damrak2022D Offline
                  Damrak2022D Offline
                  Damrak2022
                  wrote on last edited by
                  #221

                  @stony2k Guten Morgen,
                  ich bekomme das mit dem Blockly nicht so wirklich hin. Bei mir sieht der Anfang so aus:
                  Bildschirmfoto 2022-03-27 um 03.13.44.png

                  Wie hast Du das mit dem Datum/Zeit hinbekommen?

                  Mit besten Grüßen
                  Andy

                  stony2kS 1 Reply Last reply
                  0
                  • Damrak2022D Damrak2022

                    @stony2k Guten Morgen,
                    ich bekomme das mit dem Blockly nicht so wirklich hin. Bei mir sieht der Anfang so aus:
                    Bildschirmfoto 2022-03-27 um 03.13.44.png

                    Wie hast Du das mit dem Datum/Zeit hinbekommen?

                    stony2kS Offline
                    stony2kS Offline
                    stony2k
                    wrote on last edited by
                    #222

                    @damrak2022 Du hast den falschen Baustein genommen, du brauchst den unteren:a7c73263-ec01-4f25-a528-81d1c0b982de-image.png

                    Damrak2022D 1 Reply Last reply
                    0
                    • stony2kS stony2k

                      @damrak2022 Du hast den falschen Baustein genommen, du brauchst den unteren:a7c73263-ec01-4f25-a528-81d1c0b982de-image.png

                      Damrak2022D Offline
                      Damrak2022D Offline
                      Damrak2022
                      wrote on last edited by
                      #223

                      @stony2k Sorry, musste alles neu aufsetzen. Blockly ist garnicht so einfach. Ich bin jetzt bis hier gekommen, finde aber nicht den Baustein der anschließend kommt. Auch der Versuch einer eigenen Variable war nicht wirklich erfolgreich.

                      Bildschirmfoto 2022-03-30 um 05.02.51.png

                      Den Teil von Dir bekomme ich nicht hin:
                      Bildschirmfoto 2022-03-30 um 05.06.52.png

                      Mit besten Grüßen
                      Andy

                      ESP8266E 1 Reply Last reply
                      0
                      • Damrak2022D Damrak2022

                        @stony2k Sorry, musste alles neu aufsetzen. Blockly ist garnicht so einfach. Ich bin jetzt bis hier gekommen, finde aber nicht den Baustein der anschließend kommt. Auch der Versuch einer eigenen Variable war nicht wirklich erfolgreich.

                        Bildschirmfoto 2022-03-30 um 05.02.51.png

                        Den Teil von Dir bekomme ich nicht hin:
                        Bildschirmfoto 2022-03-30 um 05.06.52.png

                        ESP8266E Offline
                        ESP8266E Offline
                        ESP8266
                        wrote on last edited by
                        #224

                        @damrak2022 , nach "Datum-Objekt" öffnen und nach unten scrollen.

                        Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                        Damrak2022D 1 Reply Last reply
                        0
                        • ESP8266E ESP8266

                          @damrak2022 , nach "Datum-Objekt" öffnen und nach unten scrollen.

                          Damrak2022D Offline
                          Damrak2022D Offline
                          Damrak2022
                          wrote on last edited by
                          #225

                          @esp8266 Guten Morgen, nein ich meine wo ich das x 1000 - 3600000 herbekomme, insbesondere das einzelne "x" Zeichen

                          Mit besten Grüßen
                          Andy

                          ESP8266E 1 Reply Last reply
                          0
                          • Damrak2022D Damrak2022

                            @esp8266 Guten Morgen, nein ich meine wo ich das x 1000 - 3600000 herbekomme, insbesondere das einzelne "x" Zeichen

                            ESP8266E Offline
                            ESP8266E Offline
                            ESP8266
                            wrote on last edited by ESP8266
                            #226

                            @damrak2022 , aus dem Mathematik Baukasten. Das ist kein X Zeichen sondern ein Multiplikationszeichen.

                            0ed3e3c9-ab84-4475-a35b-6751a11ca5f8-grafik.png

                            Darunter findet man es.

                            Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                            Damrak2022D 1 Reply Last reply
                            0
                            • ESP8266E ESP8266

                              @damrak2022 , aus dem Mathematik Baukasten. Das ist kein X Zeichen sondern ein Multiplikationszeichen.

                              0ed3e3c9-ab84-4475-a35b-6751a11ca5f8-grafik.png

                              Darunter findet man es.

                              Damrak2022D Offline
                              Damrak2022D Offline
                              Damrak2022
                              wrote on last edited by Damrak2022
                              #227

                              @esp8266 Irgendwas mache ich falsch, bei mir sieht das sehr merkwürdig aus:
                              Bildschirmfoto 2022-03-31 um 01.17.20.png

                              Kannst Du mir Dein Blockly mal posten, damit ich es importieren kann? Dann kann ich es mir in Ruhe zu Gemüte führen

                              Mit besten Grüßen
                              Andy

                              ESP8266E 1 Reply Last reply
                              0
                              • Damrak2022D Damrak2022

                                @esp8266 Irgendwas mache ich falsch, bei mir sieht das sehr merkwürdig aus:
                                Bildschirmfoto 2022-03-31 um 01.17.20.png

                                Kannst Du mir Dein Blockly mal posten, damit ich es importieren kann? Dann kann ich es mir in Ruhe zu Gemüte führen

                                ESP8266E Offline
                                ESP8266E Offline
                                ESP8266
                                wrote on last edited by
                                #228

                                @damrak2022 , das kann auch nicht gehen weil die Bausteine überhaupt nicht verknüpft sind.

                                Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                                Damrak2022D ESP8266E 2 Replies Last reply
                                0
                                • ESP8266E ESP8266

                                  @damrak2022 , das kann auch nicht gehen weil die Bausteine überhaupt nicht verknüpft sind.

                                  Damrak2022D Offline
                                  Damrak2022D Offline
                                  Damrak2022
                                  wrote on last edited by
                                  #229

                                  @esp8266 Ich weiß, aber dann habe ich irgendwo schon wieder was falsches genommen

                                  Mit besten Grüßen
                                  Andy

                                  stony2kS 1 Reply Last reply
                                  0
                                  • ESP8266E ESP8266

                                    @damrak2022 , das kann auch nicht gehen weil die Bausteine überhaupt nicht verknüpft sind.

                                    ESP8266E Offline
                                    ESP8266E Offline
                                    ESP8266
                                    wrote on last edited by
                                    #230

                                    Ich liege schon im Bett....

                                    Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                                    Damrak2022D 1 Reply Last reply
                                    0
                                    • ESP8266E ESP8266

                                      Ich liege schon im Bett....

                                      Damrak2022D Offline
                                      Damrak2022D Offline
                                      Damrak2022
                                      wrote on last edited by
                                      #231

                                      @esp8266 Dann schlaf gut und eventuell morgen

                                      Mit besten Grüßen
                                      Andy

                                      ESP8266E 1 Reply Last reply
                                      0
                                      • Damrak2022D Damrak2022

                                        @esp8266 Dann schlaf gut und eventuell morgen

                                        ESP8266E Offline
                                        ESP8266E Offline
                                        ESP8266
                                        wrote on last edited by
                                        #232

                                        @damrak2022 , ich habe ein ganz anderes Blockly als wie der stony2k. Weil ich die Datenpunkte nicht nutze. Wenn du mir schreibst was du haben willst, dann baue ich dir das morgen zusammen. Nur hat das kein Lerneffekt.

                                        Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                                        ESP8266E 1 Reply Last reply
                                        0
                                        • ESP8266E ESP8266

                                          @damrak2022 , ich habe ein ganz anderes Blockly als wie der stony2k. Weil ich die Datenpunkte nicht nutze. Wenn du mir schreibst was du haben willst, dann baue ich dir das morgen zusammen. Nur hat das kein Lerneffekt.

                                          ESP8266E Offline
                                          ESP8266E Offline
                                          ESP8266
                                          wrote on last edited by ESP8266
                                          #233

                                          So wie ich das deute muss statt der null der Wert der deepsleepduration dort rein. Dann wo die 1000 steht den anderen Baustein verknüpfen und statt 1 die 1000 einfügen.

                                          Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                                          Damrak2022D 3 Replies 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

                                          611

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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