Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. jsonConfig.json - selectSendTo und Übersetzungen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    jsonConfig.json - selectSendTo und Übersetzungen

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

      Hallo zusammen,
      wie kann ich denn für einen selectSendTo in der jsonConfig.json eine Übersetzung der Labels hinbekommen ?
      Wenn ich ein Object zurückschicke in der Form

      sendTo(obj.from, obj.command, {'label': {'en': 'english', 'de': 'deutsch'}, 'value': 1}, obj.callback);
      

      führt das zu einem Fehler im Browser.

      Wenn ich nue eine Sprache zurückschicke funkioniert alles.
      Allerdings wird dann im Browser nichts übersetzt.

      Ich könnte ja die aktuell ausgewählte Sprache zurückschicken, aber wie bekomme ich im Adapter die
      aktuell im Admin gewählte Sprache raus ?

      Vielen Dank schonmal.

      mcm1957 haus-automatisierung 2 Replies Last reply Reply Quote 0
      • mcm1957
        mcm1957 @Bannsaenger last edited by

        @bannsaenger
        Mit solchen Fragen bist du ziemlich sicher im Telegramm Developer Channel besser aufgehoben. Invite Links siehe https://www.iobroker.dev

        Die aktuelle Sprache solltest du unter system.config.language finden.

        1 Reply Last reply Reply Quote 0
        • haus-automatisierung
          haus-automatisierung Developer Most Active @Bannsaenger last edited by

          @bannsaenger sagte in jsonConfig.json - selectSendTo und Übersetzungen:

          Wenn ich ein Object zurückschicke in der Form

          Siehe https://github.com/ioBroker/ioBroker.admin/blob/v7.0.19/packages/jsonConfig/SCHEMA.md

          noTranslation - do not translate label of selects
          To use this option, your adapter must implement message handler: The result of command must be an array in form [{"value": 1, "label": "one"}, ...]

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

            Ich habs hinbekommen.

            Danke an alle.

            Ich hole mir jetzt die aktuell konfigurierte Sprache im Adapter und schicke passende Labels zurück.

            1 Reply Last reply Reply Quote 0
            • SKB
              SKB Developer Most Active last edited by SKB

              Hallo Zusammen,
              es geht mir zwar nicht um sendTo - aber um die Übersetzungen - ich steige gerade für einen einfachen Adapter auf jsonConfig um und habe aktuell noch die i18n Dateien im Admin.

              im jsonConfig habe ich ein Feld:

              "poll_time": {
                 "type": "number",
                 "label": {
                    "en": "Poll-Time in Seconds (min. 30 seconds)"
                 },
                 "min": 30,
                 "step": 1,
                 "xs": 12,
                 "sm": 12,
                 "md": 12,
                 "lg": 6,
                 "xl": 6,
                 "newLine": true
              },
              

              Wie wird nun die Übersetzung angestoßen?

              Vielen Dank!

              mcm1957 haus-automatisierung 2 Replies Last reply Reply Quote 0
              • mcm1957
                mcm1957 @SKB last edited by mcm1957

                @skb said in jsonConfig.json - selectSendTo und Übersetzungen:

                Hallo Zusammen,
                es geht mir zwar nicht um sendTo - aber um die Übersetzungen - ich steige gerade für einen einfachen Adapter auf jsonConfig um und habe aktuell noch die i18n Dateien im Admin.

                im jsonConfig habe ich ein Feld:

                "poll_time": {
                   "type": "number",
                   "label": {
                      "en": "Poll-Time in Seconds (min. 30 seconds)"
                   },
                   "min": 30,
                   "step": 1,
                   "xs": 12,
                   "sm": 12,
                   "md": 12,
                   "lg": 6,
                   "xl": 6,
                   "newLine": true
                },
                

                Wie wird nun die Übersetzung angestoßen?

                Vielen Dank!

                Die Texte sollten primär in den i18n Dateien verwendet werden. Das ist der bevorzugte Platz. Optimaler Weise finden sich alle Übersetzungen in admin/i18n/[sprache]/translation.json oder in admin/i18n[sprache].json

                Übersetzungen können - wenn es sein muss - auch direkt in der jsonConfig stehen. Persönlich rate ich dvon aber ab.

                Texte die direkt in der jsonConfig stehen müssen manuell überstzt werden. GgF. mit hilde des translators.

                Texte die in den i18n Dateien stehen können mittels npm run translate (adapter-dev) übersetzt werden. Weiters können Texte die in i18n Dateien stehen in Weblate eingebunden werden. Dadurch können diese unabhängig von Programmierkenntnissen und Zugriff auf das Repo von Personen übersetzt werden die die Sparche gut / muttersprachlich sprechen.

                Ergo:
                Wenn du die Texte eh schon in i18n Dateien hast, dass lass sie doch dort!

                P.S. Da die Verwendung von i18n Dateien der empfohlene Weg ist bekommst du bei direkten Übersetzungen in jsonConfig.json jedenfalls eine (permante) Warnung der Repo Checkers.


                Ev. liegt auch nur ein Missverständnis vor. i18n Files werden mittels i18n attribute aktiviert. Anschließend bei Labe nur den Key (meist den englischen Text) angeben und KEIN Objekt.

                "i18n": true,
                :
                :
                "poll_time": {
                   "type": "number",
                   "label": "Poll-Time in Seconds (min. 30 seconds)"
                   "min": 30,
                   "step": 1,
                   "xs": 12,
                   "sm": 12,
                   "md": 12,
                   "lg": 6,
                   "xl": 6,
                   "newLine": true
                },
                

                Und noch eine Info:
                Fragen zur Entwicklung bekommst du im allgemeinen rascher in unseren Telegrammkanälen (gespiegelt zu Discord) beantwortet. Invite Links auf www.iobroker.dev). Hier im Forum gehen Entwickelrfragen in der Menge der Postings gener unter.

                1 Reply Last reply Reply Quote 0
                • haus-automatisierung
                  haus-automatisierung Developer Most Active @SKB last edited by

                  @skb sagte in jsonConfig.json - selectSendTo und Übersetzungen:

                  Wie wird nun die Übersetzung angestoßen?

                  Normalerweise haben die Projekte schon die Adapter-Dev-Tools als Abhängigkeit. Falls nicht:

                  npm i -D @iobroker/adapter-dev

                  Und dann gibt es in der package.json unter scripts den Eintrag "translate": "translate-adapter",

                  Das heißt, dass Du einfach mit npm run translate alle Englischen Texte aus der jsonConfig automatisch übersetzen lassen kannst.

                  Siehe auch https://www.youtube.com/watch?v=A9UETXyAmL4

                  mcm1957 1 Reply Last reply Reply Quote 0
                  • mcm1957
                    mcm1957 @haus-automatisierung last edited by mcm1957

                    @haus-automatisierung said in jsonConfig.json - selectSendTo und Übersetzungen:

                    @skb sagte in jsonConfig.json - selectSendTo und Übersetzungen:

                    Wie wird nun die Übersetzung angestoßen?

                    Normalerweise haben die Projekte schon die Adapter-Dev-Tools als Abhängigkeit. Falls nicht:

                    npm i -D @iobroker/adapter-dev

                    Und dann gibt es in der package.json unter scripts den Eintrag "translate": "translate-adapter",

                    Das heißt, dass Du einfach mit npm run translate alle Englischen Texte aus der jsonConfig automatisch übersetzen lassen kannst.

                    Siehe auch https://www.youtube.com/watch?v=A9UETXyAmL4

                    Ja - das betrifft aber die i18n Dateien !
                    @skb hat in den obigen Beispiel aber ein translation Object drinnen. Das müsste er manuell editieren. Daher auch mein Hinweis doch bitte die i18n Dateien zu verwenden und NICHT direkt in jsonConfig Übersetzungen einzutragen wenn es dazu keinen besonderen Grund gibt.
                    Mir wäre neu, dass adapter-dev / npm run translate jsonConfig files bearbeitet.

                    SKB haus-automatisierung 2 Replies Last reply Reply Quote 0
                    • SKB
                      SKB Developer Most Active @mcm1957 last edited by

                      @mcm1957 Genau das war das Thema 😉

                      Also, ich habe nun nur den englischen Platzhalter im jsonConfig drin und oben:
                      "i18n": true welches das Zauberwort war 😉

                      mcm1957 1 Reply Last reply Reply Quote 0
                      • haus-automatisierung
                        haus-automatisierung Developer Most Active @mcm1957 last edited by

                        @mcm1957 sagte in jsonConfig.json - selectSendTo und Übersetzungen:

                        Mir wäre neu, dass adapter-dev / npm run translate jsonConfig files bearbeitet.

                        Macht es auch nicht. Habe die kompletten Schritte im Video ja ausführlich erläutert.
                        Glaube das ist einfacher zu verstehen, als in Textform alles zu erklären 🙂

                        mcm1957 1 Reply Last reply Reply Quote 1
                        • mcm1957
                          mcm1957 @SKB last edited by

                          @skb
                          Na ja - das englische i18n File musst du schon anlegen 🙂

                          Wenn du von words.js kommst, kann aber auch npm run translate diese Migration machen. Schau bitte in die Doku zu adapter-dev. https://github.com/ioBroker/adapter-dev#iobroker-adapter-dev

                          Und noch was:
                          Wenn du beim Entwickeln was änderst mach beim dev-server nachher ein upload. Ich hab im Hinetrkopf dass die i18b Dateien nicht automatisch geuploaded werden.

                          Anbindung an weblate kannst du hier "bestellen" (- sorry, hab tw. längere Lieferzeiten 🙂 -)
                          https://github.com/ioBrokerTranslator/requests wenn du magst

                          SKB 1 Reply Last reply Reply Quote 0
                          • mcm1957
                            mcm1957 @haus-automatisierung last edited by

                            @haus-automatisierung said in jsonConfig.json - selectSendTo und Übersetzungen:

                            Macht es auch nicht. Habe die kompletten Schritte im Video ja ausführlich erläutert.
                            Glaube das ist einfacher zu verstehen, als in Textform alles zu erklären 🙂

                            DANKE für deine unermüdliche Unterstützung.

                            1 Reply Last reply Reply Quote 0
                            • SKB
                              SKB Developer Most Active @mcm1957 last edited by

                              @mcm1957 Die Dateien habe ich ja von vorher noch - habe, wie gesagt, nur oben im jsonConfig angegeben, das i18n true ist und schon klappts 😉

                              Danke Euch!

                              1 Reply Last reply Reply Quote 1
                              • SKB
                                SKB Developer Most Active last edited by SKB

                                Noch eine Frage - betrifft nun nicht die Übersetzung, aber das Schema.

                                Darf ein Feld nicht den Namen "email" haben? Dann hätte ich ein kleines Problemchen, weils in der Config aktuell so vorhanden ist.

                                Erledigt - waren "falsche" Properties gesetzt 😉

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                652
                                Online

                                31.7k
                                Users

                                79.8k
                                Topics

                                1.3m
                                Posts

                                4
                                14
                                394
                                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