Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. Asterisk bringt "Error while dialing (2). Error: {}"

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Asterisk bringt "Error while dialing (2). Error: {}"

    This topic has been deleted. Only users with topic management privileges can see it.
    • bahnuhr
      bahnuhr Forum Testing Most Active last edited by

      So, mal kurze Rückinfo von mir.
      Ich habe nun alle möglichen Konstellationen probiert.
      Asterisk kann sich wohl nicht an der FB7490 anmelden.

      Für mich ist nun Schluss.
      Ich bekomme dies nicht hin.

      Trotzdem Danke für die Mühe.

      Vielleicht könnte sich ja doch mal der Entwickler dazu bewegen, dass dies vernünftig läuft.

      mfg
      Dieter

      1 Reply Last reply Reply Quote 0
      • bahnuhr
        bahnuhr Forum Testing Most Active last edited by

        Jaaaaaaaaaaaaa.
        Es klappt.

        Habe mehrere threads gelesen und viel gegoogelt.

        Irgendwo hat einer geschrieben, dass man die Fritzbox mal neu starten soll.

        Und dies war die Lösung.
        Lag letztendlich an der FB.

        Aber egal, jetzt läuft es.
        Nochmals danke für die Inputs.

        V 1 Reply Last reply Reply Quote 0
        • V
          varg @bahnuhr last edited by varg

          @bahnuhr

          also rein der fritz box neustart hat bei mir nichts gebracht (image backup wurde eingespielt so dass die ursprüngliche Installation und config wieder da war)

          bahnuhr 1 Reply Last reply Reply Quote 0
          • bahnuhr
            bahnuhr Forum Testing Most Active @varg last edited by

            @varg sagte in Asterisk bringt "Error while dialing (2). Error: {}":

            @bahnuhr

            also rein der fritz box neustart hat bei mir nichts gebracht (image backup wurde eingespielt so dass die ursprüngliche Installation und config wieder da war)

            Erzeugts du die Datei jetzt auch mit pico2wave ?

            Ich hatte wohl mehrere Probleme:

            • Datei wurde nicht erzeugt : Lösung war pico2wave
              Hier muss der Entwickler dran !
            • Login hatte nicht gepasst: Lösung war manuell Datei sip.conf geändert
            • Fritzbox wollte nicht: Lösung war neustart der FB

            mfg
            Dieter

            stek 1 Reply Last reply Reply Quote 0
            • stek
              stek @bahnuhr last edited by

              @bahnuhr
              wie hast du diese problem gelöst.
              bei mir habe ich alles neu istalliert aber ich bekomme immer das Fehler:
              Error while dialing (2). Error: {}

              Meine allarmirung hat diese funktion verwendet und jetz funktioniert nicht mehr...
              Ich brauche eine lösung voice meldungen von Iobroker zu senden

              Danke
              Stefano

              bahnuhr 1 Reply Last reply Reply Quote 0
              • bahnuhr
                bahnuhr Forum Testing Most Active @stek last edited by

                @stek sagte in Asterisk bringt "Error while dialing (2). Error: {}":

                wie hast du diese problem gelöst.

                steht genau 1 Beitrag vor deinem.

                V 1 Reply Last reply Reply Quote 0
                • Z
                  zaggul last edited by

                  Wow, ihr seid genial!

                  Ich war zwischenzeitlich aus privaten Gründen hier nicht mehr aktiv und hatte es nicht verfolgt. Mit der Lösung via pico2wave läuft es nun astrein!

                  Merke: Je weniger externe Abhängigkeiten, desto besser 😉

                  Vielen vielen Dank!

                  1 Reply Last reply Reply Quote 0
                  • V
                    varg @bahnuhr last edited by varg

                    @bahnuhr

                    hantiere hier gerade mit einem testsystem rum. zeilen hab ich ausgeklammert. connected to manager passt auch ohne error.
                    Nur dann will er bei der nummer string. Steh ich auf dem Schlauch ?

                    Plattform: linux
                    RAM: 1.8 GB
                    Node.js: v14.17.1
                    NPM: 6.14.13
                    Admin ist die neueste beta
                    host ist 3.3.12

                    sterisk.0	2021-06-19 05:36:43.988	info	(948) State value to set for "asterisk.0.dialout.telnr" has to be type "string" but received type "number"
                    ```
                    `
                    1 Reply Last reply Reply Quote 0
                    • stek
                      stek @boeskij last edited by

                      @boeskij

                      Das Einfügen dieses Codes (und die Installation von pico2wave) wird mit jeder anderen Modifikation funktionieren.

                      Danke für die Tipps, jetzt funktioniert der Hausalarm wieder...für alle, die es ausprobieren wollen 😉

                      
                      on({id: 'asterisk.0.dialout.call'}, function (obj) {
                          let msg = getState('asterisk.0.dialout.text').val;
                          let tnr = getState('asterisk.0.dialout.telnr').val;
                          let cid = getState('asterisk.0.dialout.callerid').val;
                      
                          exec('pico2wave -w /tmp/ttsdatei.wav -l it-IT "' + msg + '"', function (error, stdout, stderr) { 
                                                  /* wav erstellt */
                                                  exec('sox /tmp/ttsdatei.wav -r 8000 -c 1 /tmp/ttsdatei.gsm', function (error, stdout, stderr) { 
                                                      /* gsm erstellt */
                                                      exec('rm /tmp/ttsdatei.wav', function (error, stdout, stderr) { 
                                                          /* wav gelöscht, sonst wurde beim folgenden Anruf ggf. die falsche Datei aufgerufen... */
                                                              sendTo('asterisk.0', "dial", { telnr: tnr , callerid: cid, audiofile: '/tmp/ttsdatei.gsm'},  (res) => {
                                                                  console.log('Result: ' + JSON.stringify(res));
                                                                  exec('cp /tmp/ttsdatei.gsm /tmp/asterisk_dtmf.gsm', function (error, stdout, stderr) { 
                                                                      /* Die asterisk_dtmf.gsm wird für Dial-In Anrufe verwendet... Hier wird dann einfach der letzte Anruf nochmal wiedergegeben */
                                                                      /* Das folgende Löschen führte bei mir zu Problemen, also bleibt die Datei liegen.. wird ja eh überschrieben */
                                                                      /* exec('rm /tmp/ttsdatei.gsm', function (error, stdout, stderr) { console.log('Telefonalamierung: gsm gelöscht'); }); */
                                                                  });
                                                              });
                                                      });
                                                  });
                                              });
                      });
                      
                      V 1 Reply Last reply Reply Quote 0
                      • V
                        varg @stek last edited by

                        @stek

                        cool danke klappt

                        V 1 Reply Last reply Reply Quote 0
                        • C
                          CrazyFloyd last edited by CrazyFloyd

                          Ich bekomme es leider nicht hin.
                          Kann jemand vielleicht über mein Fehlerbild drüber schauen und mir noch einen Tipp geben.

                          asterisk.0
                          2021-06-26 09:29:49.389 error Error while dialing (1). Error: {"response":"Error","actionid":"d4032cc3-b84e-5573-5779-f676c768a050","message":"Originate failed"}, Result: {"parameter":{"telnr":"**611","callerid":"**621","audiofile":"/tmp/ttsdatei","extension":"15041965"},"options":{"action":"originate","channel":"SIP/15041965/**611","context":"ael-ansage","exten":"**611","priority":1,"timeout":60000,"variable":{"repeat":5,"file":"/tmp/ttsdatei","del":""},"callerid":"**621"},"guid":"d4032cc3-b84e-5573-5779-f676c768a050","result":{"response":"Error","actionid":"d4032cc3-b84e-5573-5779-f676c768a050","message":"Originate failed"}}

                          **621 und **611 sind die internen Telefonfonnummer der Telephoniegeräte der Fritzbox. Diese habe ich im Script in Hochkommas gesetzt. ohne Hochkommas geht das Script in einen Error, mit den Sternchen vor der Nummer.

                          B 1 Reply Last reply Reply Quote 0
                          • B
                            boeskij @CrazyFloyd last edited by

                            @crazyfloyd
                            funktionieren denn andere Rufnummern oder gar keine?
                            werden eingehende Anrufe vom asterisk/iobroker beantwortet?
                            zeig doch mal das Script...

                            C 1 Reply Last reply Reply Quote 0
                            • C
                              CrazyFloyd @boeskij last edited by CrazyFloyd

                              @boeskij sagte in Asterisk bringt "Error while dialing (2). Error: {}":

                              @crazyfloyd
                              funktionieren denn andere Rufnummern oder gar keine?
                              werden eingehende Anrufe vom asterisk/iobroker beantwortet?
                              zeig doch mal das Script...

                              Hier mein script:

                              on({id: 'asterisk.0.dialout.call'}, function (obj) {
                              let msg = getState('asterisk.0.dialout.text').val;
                              let tnr = getState('asterisk.0.dialout.telnr').val;
                              let cid = getState('asterisk.0.dialout.callerid').val;

                              exec('pico2wave -w /tmp/ttsdatei.wav -l it-IT "' + msg + '"', function (error, stdout, stderr) { 
                                                      /* wav erstellt */
                                                      exec('sox /tmp/ttsdatei.wav -r 8000 -c 1 /tmp/ttsdatei.gsm', function (error, stdout, stderr) { 
                                                          /* gsm erstellt */
                                                          exec('rm /tmp/ttsdatei.wav', function (error, stdout, stderr) { 
                                                              /* wav gelöscht, sonst wurde beim folgenden Anruf ggf. die falsche Datei aufgerufen... */
                                                                  sendTo('asterisk.0', "dial", { telnr: '**611' , callerid: '**621', audiofile: '/tmp/ttsdatei.gsm'},  (res) => {
                                                                      console.log('Result: ' + JSON.stringify(res));
                                                                      exec('cp /tmp/ttsdatei.gsm /tmp/asterisk_dtmf.gsm', function (error, stdout, stderr) { 
                                                                          /* Die asterisk_dtmf.gsm wird für Dial-In Anrufe verwendet... Hier wird dann einfach der letzte Anruf nochmal wiedergegeben */
                                                                          /* Das folgende Löschen führte bei mir zu Problemen, also bleibt die Datei liegen.. wird ja eh überschrieben */
                                                                          /* exec('rm /tmp/ttsdatei.gsm', function (error, stdout, stderr) { console.log('Telefonalamierung: gsm gelöscht'); }); */
                                                                      });
                                                                  });
                                                          });
                                                      });
                                                  });
                              

                              });

                              B 1 Reply Last reply Reply Quote 0
                              • B
                                boeskij @CrazyFloyd last edited by

                                @crazyfloyd
                                das sieht jetzt erstmal nicht so verkehrt aus...
                                funktionieren denn andere Rufnummern oder gar keine?
                                werden eingehende Anrufe vom asterisk/iobroker beantwortet?
                                verbindet sich die asterisk-instanz mit dem asterisk?
                                verbindet sich asterisk mit der fritzbox?

                                C 1 Reply Last reply Reply Quote 0
                                • V
                                  varg @varg last edited by varg

                                  @varg habe gerade eine chat anfrage erhalten und poste nochmals hier die vorgehensweise die (dank der jungs hier) bei mir funktioniert hat.

                                  wget -q https://ftp-master.debian.org/keys/release-10.asc -O- | sudo apt-key add -
                                  echo "deb http://deb.debian.org/debian buster non-free" | sudo tee -a /etc/apt/sources.list
                                  sudo apt update
                                  sudo apt install libttspico-utils

                                  sudo apt-get install libttspico-utils lame

                                  in asterisk transcoder auf sox gestellt.
                                  asterisk config nach github

                                  on({id: 'asterisk.0.dialout.call'}, function (obj) {
                                      let msg = getState('asterisk.0.dialout.text').val;
                                      let tnr = getState('asterisk.0.dialout.telnr').val;
                                      let cid = getState('asterisk.0.dialout.callerid').val;
                                   
                                      exec('pico2wave -w /tmp/ttsdatei.wav -l de-DE "' + msg + '"', function (error, stdout, stderr) { 
                                                              /* wav erstellt */
                                                              exec('sox /tmp/ttsdatei.wav -r 8000 -c 1 /tmp/ttsdatei.gsm', function (error, stdout, stderr) { 
                                                                  /* gsm erstellt */
                                                                  exec('rm /tmp/ttsdatei.wav', function (error, stdout, stderr) { 
                                                                      /* wav gelöscht, sonst wurde beim folgenden Anruf ggf. die falsche Datei aufgerufen... */
                                                                          sendTo('asterisk.0', "dial", { telnr: tnr , callerid: cid, audiofile: '/tmp/ttsdatei.gsm'},  (res) => {
                                                                              console.log('Result: ' + JSON.stringify(res));
                                                                              exec('cp /tmp/ttsdatei.gsm /tmp/asterisk_dtmf.gsm', function (error, stdout, stderr) { 
                                                                                  /* Die asterisk_dtmf.gsm wird für Dial-In Anrufe verwendet... Hier wird dann einfach der letzte Anruf nochmal wiedergegeben */
                                                                                  /* Das folgende Löschen führte bei mir zu Problemen, also bleibt die Datei liegen.. wird ja eh überschrieben */
                                                                                  /* exec('rm /tmp/ttsdatei.gsm', function (error, stdout, stderr) { console.log('Telefonalamierung: gsm gelöscht'); }); */
                                                                              });
                                                                          });
                                                                  });
                                                              });
                                                          });
                                  });
                                  
                                  

                                  bei instanzstart kommt zwar nach wie vor error while converting file aber das wird ja dann vom script und tts übernommen.

                                  mit folgendem blockly trigger ich dann die datenpunkte

                                  <xml xmlns="https://developers.google.com/blockly/xml">
                                    <block type="on" id="kKge@_%+BDw6n!K(/^X(" x="63" y="1163">
                                      <field name="OID">0_userdata.0.notfall.asterisk_04</field>
                                      <field name="CONDITION">true</field>
                                      <field name="ACK_CONDITION"></field>
                                      <statement name="STATEMENT">
                                        <block type="control" id="Zma!K=;5A|U@oRsH4[0s">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">asterisk.0.dialout.text</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="text" id="{d.,gn^x-!O3Mf%OFwu;">
                                              <field name="TEXT">Rauchmelder zu Hause ausgelöst</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="control" id="j}/Ii|hS}Tm=mI8[ah[Y">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">asterisk.0.dialout.telnr</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="text" id="jGY8`[Q9`0u#J+]CWWmc">
                                                  <field name="TEXT">00000000000</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="control" id="7vVeDp2(HKA^yDV..=`M">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                  <field name="OID">asterisk.0.dialout.callerid</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE">
                                                    <block type="text" id=".PKJzB615hu)o|v.ns7)">
                                                      <field name="TEXT">0</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="control" id="#gb%Wc4:m]{xk1W|KxyX">
                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                                      <field name="OID">asterisk.0.dialout.call</field>
                                                      <field name="WITH_DELAY">TRUE</field>
                                                      <field name="DELAY_MS">2000</field>
                                                      <field name="UNIT">ms</field>
                                                      <field name="CLEAR_RUNNING">FALSE</field>
                                                      <value name="VALUE">
                                                        <block type="logic_boolean" id="E8SqluH0+3,i.U;2GT+2">
                                                          <field name="BOOL">TRUE</field>
                                                        </block>
                                                      </value>
                                                      <next>
                                                        <block type="control" id="jpO:t6;=~p9o[/]KMr?A">
                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                                          <field name="OID">0_userdata.0.notfall.asterisk_04</field>
                                                          <field name="WITH_DELAY">TRUE</field>
                                                          <field name="DELAY_MS">60</field>
                                                          <field name="UNIT">sec</field>
                                                          <field name="CLEAR_RUNNING">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="logic_boolean" id="`s`R94Iz^9G|2Sh/.jsq">
                                                              <field name="BOOL">FALSE</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </xml>
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • C
                                    CrazyFloyd @boeskij last edited by

                                    @boeskij sagte in Asterisk bringt "Error while dialing (2). Error: {}":

                                    @crazyfloyd
                                    das sieht jetzt erstmal nicht so verkehrt aus...
                                    funktionieren denn andere Rufnummern oder gar keine?
                                    werden eingehende Anrufe vom asterisk/iobroker beantwortet?
                                    verbindet sich die asterisk-instanz mit dem asterisk?
                                    verbindet sich asterisk mit der fritzbox?

                                    ja und nein. ich habe festgestellt das ich von der asterix istanz folgende fehlermeldung bekomme:

                                    sudo asterisk -rvvvvvvv
                                    Asterisk 16.2.1~dfsg-1+deb10u2, Copyright (C) 1999 - 2018, Digium, Inc. and others.
                                    Created by Mark Spencer markster@digium.com
                                    Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
                                    This is free software, with components licensed under the GNU General Public
                                    License version 2 and other licenses; you are welcome to redistribute it under
                                    certain conditions. Type 'core show license' for details.

                                    Connected to Asterisk 16.2.1~dfsg-1+deb10u2 currently running on rasp-iobroker (pid = 29625)
                                    rasp-iobroker*CLI> sip show registry
                                    Host dnsmgr Username Refresh State Reg.Time
                                    192.168.2.1:5060 N 123456789 120 Request Sent
                                    1 SIP registrations.
                                    [Jun 27 17:28:13] ERROR[29927]: chan_sip.c:4321 __sip_reliable_xmit: Serious Network Trouble; __sip_xmit returns error for pkt data
                                    [Jun 27 17:28:13] NOTICE[29927]: chan_sip.c:15981 sip_reg_timeout: -- Registration for '123456789@192.168.2.1' timed out, trying again (Attempt #2)

                                    ich bin mir aber sicher das das telefoniegerät an der fritzbox und der user in der sip.conf richtig sind. werde langsam wahnsinnig.
                                    kann das evtl an der neuen fritz soft liegen version 7.27 auf einer 7530.?

                                    C 1 Reply Last reply Reply Quote 0
                                    • C
                                      CrazyFloyd @CrazyFloyd last edited by

                                      @crazyfloyd sagte in Asterisk bringt "Error while dialing (2). Error: {}":

                                      @boeskij sagte in Asterisk bringt "Error while dialing (2). Error: {}":

                                      @crazyfloyd
                                      das sieht jetzt erstmal nicht so verkehrt aus...
                                      funktionieren denn andere Rufnummern oder gar keine?
                                      werden eingehende Anrufe vom asterisk/iobroker beantwortet?
                                      verbindet sich die asterisk-instanz mit dem asterisk?
                                      verbindet sich asterisk mit der fritzbox?

                                      ja und nein. ich habe festgestellt das ich von der asterix istanz folgende fehlermeldung bekomme:

                                      sudo asterisk -rvvvvvvv
                                      Asterisk 16.2.1~dfsg-1+deb10u2, Copyright (C) 1999 - 2018, Digium, Inc. and others.
                                      Created by Mark Spencer markster@digium.com
                                      Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
                                      This is free software, with components licensed under the GNU General Public
                                      License version 2 and other licenses; you are welcome to redistribute it under
                                      certain conditions. Type 'core show license' for details.

                                      Connected to Asterisk 16.2.1~dfsg-1+deb10u2 currently running on rasp-iobroker (pid = 29625)
                                      rasp-iobroker*CLI> sip show registry
                                      Host dnsmgr Username Refresh State Reg.Time
                                      192.168.2.1:5060 N 123456789 120 Request Sent
                                      1 SIP registrations.
                                      [Jun 27 17:28:13] ERROR[29927]: chan_sip.c:4321 __sip_reliable_xmit: Serious Network Trouble; __sip_xmit returns error for pkt data
                                      [Jun 27 17:28:13] NOTICE[29927]: chan_sip.c:15981 sip_reg_timeout: -- Registration for '123456789@192.168.2.1' timed out, trying again (Attempt #2)

                                      ich bin mir aber sicher das das telefoniegerät an der fritzbox und der user in der sip.conf richtig sind. werde langsam wahnsinnig.
                                      kann das evtl an der neuen fritz soft liegen version 7.27 auf einer 7530.?

                                      Ich hab es jetzt hin bekommen. Kann aber nicht genau sagen woran es letzt-endlich gelegen hat. Danke für alles..... Von Herzen..

                                      1 Reply Last reply Reply Quote 0
                                      • Z
                                        zaggul @boeskij last edited by zaggul

                                        doppelt, sorry.

                                        1 Reply Last reply Reply Quote 0
                                        • Z
                                          zaggul @boeskij last edited by

                                          @boeskij said in Asterisk bringt "Error while dialing (2). Error: {}":

                                          Hallo zusammen,
                                          ich vermute Google hat etwas an der verwendeten Text-To-Speech API verändert, sodass nur noch eine bestimmte Anzahl Wandlungen in einem Zeitraum möglich sind (wenn überhaupt noch)...
                                          Ich habe es jetzt so gelöst, dass im Skript "umzu" mit lokalem PicoTTS wav-Dateien erzeugt und mit sox zur gsm konvertiert werden.

                                          Problem ist, dass beim Starten des Adapters der Dial-In-Text an Google geschickt wird und natürlich nicht gewandelt wird...
                                          Als Konsequenz daraus startet dann der Adapter nicht korrekt (kein DTMF mehr möglich)
                                          Um dies quick and dirty zu beheben habe ich in der asterisk.js die Zeilen 757 und 788 auskommentiert...
                                          Der Teil dazwischen wurde sonst nicht ausgeführt...

                                          757:	/* convertDialInFile(parameter, () => { */
                                          .....
                                          788:	/* }); */
                                          

                                          Wäre natürlich toll, wenn jemand den Adapter so umbauen könnte, dass eine andere TTS-Engine genutzt wird...

                                          Wo finde ich denn die Datei asterisk.js. zum auskommentieren? Im iobroker-data finde ich sie nicht.
                                          Danke!

                                          bahnuhr B 2 Replies Last reply Reply Quote 0
                                          • bahnuhr
                                            bahnuhr Forum Testing Most Active @zaggul last edited by

                                            @zaggul sagte in Asterisk bringt "Error while dialing (2). Error: {}":

                                            Wo finde ich denn die Datei asterisk.js. zum auskommentieren? Im iobroker-data finde ich sie nicht.

                                            Warum lässt du es nicht so wie es ist.
                                            Es kommt Fehlermeldung, aber mehr auch nicht.

                                            Beim nächsten update würde dies sowieso wieder überschrieben werden.

                                            js findest du in node-modules.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            911
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            116
                                            9022
                                            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