Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [Gelöst] MQTT-Verbindung via Python script

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    497

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

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

[Gelöst] MQTT-Verbindung via Python script

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
21 Beiträge 4 Kommentatoren 3.6k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Marc BergM Marc Berg

    @codierknecht sagte in MQTT-Verbindung:

    @homoran sagte in MQTT-Verbindung:

    aber irgendwo muss ein Broker sein.

    Ich sehe das so, dass das Python-Script sendet - also den Broker spielt.

    Nein, das Skript ist der MQTT-Client, der an den Broker (der ja schon erfolgreich läuft) senden/publish will. Allerdings ist der Server in der Variable falsch hinterlegt. (FQDN / IP-Adresse). Der Port 8883 scheint übereinzustimmen.

    @Steinmetz_4 Ist das richtig, dass bereits eine Broker-Instanz läuft? Dann benötigst du keine zweite. Zeig' mal bitte die Einstellungen dieser Instanz.

    S Offline
    S Offline
    Steinmetz_4
    schrieb am zuletzt editiert von
    #10

    @marc-berg

    Da bin ich wieder...

    Das Python script soll senden (temperatur) an IoBroker MQTT

    c031f7f0-a911-4540-b894-6ad740d0b4a2-image.png

    35e4a3db-7aa9-40c5-9eb7-a9805924384e-image.png

    Ich bin auch schon ein Stück weiter...
    das script versucht zu senden, kommt aber nicht durch...

    600597d5-8853-4ef8-90f4-d4d4fd45556b-image.png !

    #!/usr/bin/python3
    import sys
    import paho.mqtt.client as mqtt
    import ssl
     
    # set the variables
    # Path to the Sensor systempath
    # 28-01142f7ba71a has to be changed to you sensor path!
    sensor = '/sys/bus/w1/devices/28-3c01f096929e/w1_slave'
    broker='FQDN / 192.168.178.185'
    port=1879
    publish_topic="house/pi-ds18b20"
    clientid='python-mqtt-ds18b20'
    username='Tom'
    password='xxxxxxxxxx'
    insecure=True
    qos=1
    retain_message=True
    
    # do the stuff
    def readTempSensor(sensorName) :
        f = open(sensorName, 'r')
        lines = f.readlines()
        f.close()
        return lines
     
    def readTempLines(sensorName) :
        lines = readTempSensor(sensorName)
        while lines[0].strip()[-3:] != 'YES':
            time.sleep(0.2)
            lines = readTempSensor(sensorName)
        temperaturStr = lines[1].find('t=')
        if temperaturStr != -1 :
            tempData = lines[1][temperaturStr+2:]
            tempCelsius = float(tempData) / 1000.0
            tempKelvin = 273 + float(tempData) / 1000
            tempFahrenheit = float(tempData) / 1000 * 9.0 / 5.0 + 32.0
            return [tempCelsius, tempKelvin, tempFahrenheit]
    
    #MQTT Connection
    client=mqtt.Client(clientid)
    client.username_pw_set(username, password)
    client.tls_set(cert_reqs=ssl.CERT_NONE) #no client certificate needed
    client.tls_insecure_set(insecure)
    client.connect(broker, port)
    client.loop_start()
    
    client.publish("{}/temperature".format(publish_topic),"{:.2f}".format(readTempLines(sensor)[0]),qos,retain_message)
    
    client.disconnect()
    client.loop_stop()
    

    Mfg

    Raspi 4 mit aktuellem IoBroker Master (The Brain)
    Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
    Raspi 4 mit aktuellem Motioneye
    3 x Heizstab zur PV-Eigenverbrauchsoptimierung
    ETS 5 Professionel - 5.7.5
    Samsung Tab 2 - 10.1
    Buskomponenten von MDT

    HomoranH 1 Antwort Letzte Antwort
    0
    • S Steinmetz_4

      @marc-berg

      Da bin ich wieder...

      Das Python script soll senden (temperatur) an IoBroker MQTT

      c031f7f0-a911-4540-b894-6ad740d0b4a2-image.png

      35e4a3db-7aa9-40c5-9eb7-a9805924384e-image.png

      Ich bin auch schon ein Stück weiter...
      das script versucht zu senden, kommt aber nicht durch...

      600597d5-8853-4ef8-90f4-d4d4fd45556b-image.png !

      #!/usr/bin/python3
      import sys
      import paho.mqtt.client as mqtt
      import ssl
       
      # set the variables
      # Path to the Sensor systempath
      # 28-01142f7ba71a has to be changed to you sensor path!
      sensor = '/sys/bus/w1/devices/28-3c01f096929e/w1_slave'
      broker='FQDN / 192.168.178.185'
      port=1879
      publish_topic="house/pi-ds18b20"
      clientid='python-mqtt-ds18b20'
      username='Tom'
      password='xxxxxxxxxx'
      insecure=True
      qos=1
      retain_message=True
      
      # do the stuff
      def readTempSensor(sensorName) :
          f = open(sensorName, 'r')
          lines = f.readlines()
          f.close()
          return lines
       
      def readTempLines(sensorName) :
          lines = readTempSensor(sensorName)
          while lines[0].strip()[-3:] != 'YES':
              time.sleep(0.2)
              lines = readTempSensor(sensorName)
          temperaturStr = lines[1].find('t=')
          if temperaturStr != -1 :
              tempData = lines[1][temperaturStr+2:]
              tempCelsius = float(tempData) / 1000.0
              tempKelvin = 273 + float(tempData) / 1000
              tempFahrenheit = float(tempData) / 1000 * 9.0 / 5.0 + 32.0
              return [tempCelsius, tempKelvin, tempFahrenheit]
      
      #MQTT Connection
      client=mqtt.Client(clientid)
      client.username_pw_set(username, password)
      client.tls_set(cert_reqs=ssl.CERT_NONE) #no client certificate needed
      client.tls_insecure_set(insecure)
      client.connect(broker, port)
      client.loop_start()
      
      client.publish("{}/temperature".format(publish_topic),"{:.2f}".format(readTempLines(sensor)[0]),qos,retain_message)
      
      client.disconnect()
      client.loop_stop()
      

      Mfg

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #11

      @steinmetz_4 sagte in MQTT-Verbindung:

      Das Python script soll senden (temperatur) an IoBroker MQTT

      und der ist als Broker konfiguriert?
      und unter der IP

      @steinmetz_4 sagte in MQTT-Verbindung:

      192.168.178.185

      zu erreichen?

      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 -

      S 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @steinmetz_4 sagte in MQTT-Verbindung:

        Das Python script soll senden (temperatur) an IoBroker MQTT

        und der ist als Broker konfiguriert?
        und unter der IP

        @steinmetz_4 sagte in MQTT-Verbindung:

        192.168.178.185

        zu erreichen?

        S Offline
        S Offline
        Steinmetz_4
        schrieb am zuletzt editiert von
        #12

        @homoran

        Wen meinst Du?
        MQTT Adapter? läuft in IoBroker unter 192.168.178.185

        Raspi 4 mit aktuellem IoBroker Master (The Brain)
        Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
        Raspi 4 mit aktuellem Motioneye
        3 x Heizstab zur PV-Eigenverbrauchsoptimierung
        ETS 5 Professionel - 5.7.5
        Samsung Tab 2 - 10.1
        Buskomponenten von MDT

        HomoranH 1 Antwort Letzte Antwort
        0
        • S Steinmetz_4

          @homoran

          Wen meinst Du?
          MQTT Adapter? läuft in IoBroker unter 192.168.178.185

          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #13

          @steinmetz_4 sagte in MQTT-Verbindung:

          MQTT Adapter

          ja, den!

          @homoran sagte in MQTT-Verbindung:

          der ist als Broker konfiguriert?

          als Client nutzt er dir nichts.

          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 -

          S 1 Antwort Letzte Antwort
          0
          • HomoranH Homoran

            @steinmetz_4 sagte in MQTT-Verbindung:

            MQTT Adapter

            ja, den!

            @homoran sagte in MQTT-Verbindung:

            der ist als Broker konfiguriert?

            als Client nutzt er dir nichts.

            S Offline
            S Offline
            Steinmetz_4
            schrieb am zuletzt editiert von
            #14

            @homoran

            Ich denke schon.

            dc56de23-c039-4973-a8cb-1af0e632e691-image.png

            Watermeter läuft damit.

            929a75b2-d2f7-4d76-b907-59b92e585d8e-image.png

            Raspi 4 mit aktuellem IoBroker Master (The Brain)
            Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
            Raspi 4 mit aktuellem Motioneye
            3 x Heizstab zur PV-Eigenverbrauchsoptimierung
            ETS 5 Professionel - 5.7.5
            Samsung Tab 2 - 10.1
            Buskomponenten von MDT

            HomoranH 1 Antwort Letzte Antwort
            0
            • S Steinmetz_4

              @homoran

              Ich denke schon.

              dc56de23-c039-4973-a8cb-1af0e632e691-image.png

              Watermeter läuft damit.

              929a75b2-d2f7-4d76-b907-59b92e585d8e-image.png

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #15

              @steinmetz_4 sagte in MQTT-Verbindung:

              Ich denke schon.

              jepp! dann ist die Frage auch eindeutig geklärt

              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 -

              S 2 Antworten Letzte Antwort
              0
              • HomoranH Homoran

                @steinmetz_4 sagte in MQTT-Verbindung:

                Ich denke schon.

                jepp! dann ist die Frage auch eindeutig geklärt

                S Offline
                S Offline
                Steinmetz_4
                schrieb am zuletzt editiert von
                #16

                @homoran

                Ich kann Dir nicht mehr sagen.
                Wenn ich wüsste was falsch ist, würde ich hier nicht fragen.

                :man-shrugging:

                Raspi 4 mit aktuellem IoBroker Master (The Brain)
                Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
                Raspi 4 mit aktuellem Motioneye
                3 x Heizstab zur PV-Eigenverbrauchsoptimierung
                ETS 5 Professionel - 5.7.5
                Samsung Tab 2 - 10.1
                Buskomponenten von MDT

                Marc BergM 1 Antwort Letzte Antwort
                0
                • S Steinmetz_4

                  @homoran

                  Ich kann Dir nicht mehr sagen.
                  Wenn ich wüsste was falsch ist, würde ich hier nicht fragen.

                  :man-shrugging:

                  Marc BergM Offline
                  Marc BergM Offline
                  Marc Berg
                  Most Active
                  schrieb am zuletzt editiert von Marc Berg
                  #17

                  @steinmetz_4 ist das das aktive Skript???

                  b45847f4-bad6-48c9-a223-360125309150-grafik.png

                  NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

                  Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

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

                  S 1 Antwort Letzte Antwort
                  0
                  • Marc BergM Marc Berg

                    @steinmetz_4 ist das das aktive Skript???

                    b45847f4-bad6-48c9-a223-360125309150-grafik.png

                    S Offline
                    S Offline
                    Steinmetz_4
                    schrieb am zuletzt editiert von
                    #18

                    @marc-berg

                    Sorry, nein !

                    ich tüftel an allen Ecken und Enden!#

                    aktuel:

                    #!/usr/bin/python3
                    import sys
                    import paho.mqtt.client as mqtt
                    import ssl
                    
                    # set the variables
                    # Path to the Sensor systempath
                    # 28-01142f7ba71a has to be changed to you sensor path!
                    sensor = '/sys/bus/w1/devices/28-3c01f096929e/w1_slave'
                    broker='192.168.178.185'
                    port=1879
                    publish_topic="house/pi-ds18b20"
                    clientid='python-mqtt-ds18b20'
                    username='Tom'
                    password='Atomameise'
                    insecure=True
                    qos=1
                    retain_message=True
                    
                    # do the stuff
                    def readTempSensor(sensorName) :
                        f = open(sensorName, 'r')
                        lines = f.readlines()
                        f.close()
                        return lines
                    
                    def readTempLines(sensorName) :
                        lines = readTempSensor(sensorName)
                        while lines[0].strip()[-3:] != 'YES':
                            time.sleep(0.2)
                            lines = readTempSensor(sensorName)
                        temperaturStr = lines[1].find('t=')
                        if temperaturStr != -1 :
                            tempData = lines[1][temperaturStr+2:]
                            tempCelsius = float(tempData) / 1000.0
                            tempKelvin = 273 + float(tempData) / 1000
                            tempFahrenheit = float(tempData) / 1000 * 9.0 / 5.0 + 32.0
                            return [tempCelsius, tempKelvin, tempFahrenheit]
                    
                    #MQTT Connection
                    client=mqtt.Client(clientid)
                    client.username_pw_set(username, password)
                    client.tls_set(cert_reqs=ssl.CERT_NONE) #no client certificate needed
                    client.tls_insecure_set(insecure)
                    client.connect(broker, port)
                    client.loop_start()
                    
                    client.publish("{}/temperature".format(publish_topic),"{:.2f}".format(readTempLines(sensor)[0]),qos,retain_message)
                    
                    client.disconnect()
                    client.loop_stop()
                    
                    
                    

                    Mfg

                    Raspi 4 mit aktuellem IoBroker Master (The Brain)
                    Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
                    Raspi 4 mit aktuellem Motioneye
                    3 x Heizstab zur PV-Eigenverbrauchsoptimierung
                    ETS 5 Professionel - 5.7.5
                    Samsung Tab 2 - 10.1
                    Buskomponenten von MDT

                    Marc BergM 1 Antwort Letzte Antwort
                    0
                    • HomoranH Homoran

                      @steinmetz_4 sagte in MQTT-Verbindung:

                      Ich denke schon.

                      jepp! dann ist die Frage auch eindeutig geklärt

                      S Offline
                      S Offline
                      Steinmetz_4
                      schrieb am zuletzt editiert von Steinmetz_4
                      #19

                      @homoran sagte in MQTT-Verbindung:

                      @steinmetz_4 sagte in MQTT-Verbindung:

                      Ich denke schon.

                      jepp! dann ist die Frage auch eindeutig geklärt

                      Verzeiht

                      Ich weiß, dass ich nichts weiß (https://de.wikipedia.org/wiki/Ich_weiß,_dass_ich_nichts_weiß)

                      Raspi 4 mit aktuellem IoBroker Master (The Brain)
                      Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
                      Raspi 4 mit aktuellem Motioneye
                      3 x Heizstab zur PV-Eigenverbrauchsoptimierung
                      ETS 5 Professionel - 5.7.5
                      Samsung Tab 2 - 10.1
                      Buskomponenten von MDT

                      1 Antwort Letzte Antwort
                      0
                      • S Steinmetz_4

                        @marc-berg

                        Sorry, nein !

                        ich tüftel an allen Ecken und Enden!#

                        aktuel:

                        #!/usr/bin/python3
                        import sys
                        import paho.mqtt.client as mqtt
                        import ssl
                        
                        # set the variables
                        # Path to the Sensor systempath
                        # 28-01142f7ba71a has to be changed to you sensor path!
                        sensor = '/sys/bus/w1/devices/28-3c01f096929e/w1_slave'
                        broker='192.168.178.185'
                        port=1879
                        publish_topic="house/pi-ds18b20"
                        clientid='python-mqtt-ds18b20'
                        username='Tom'
                        password='Atomameise'
                        insecure=True
                        qos=1
                        retain_message=True
                        
                        # do the stuff
                        def readTempSensor(sensorName) :
                            f = open(sensorName, 'r')
                            lines = f.readlines()
                            f.close()
                            return lines
                        
                        def readTempLines(sensorName) :
                            lines = readTempSensor(sensorName)
                            while lines[0].strip()[-3:] != 'YES':
                                time.sleep(0.2)
                                lines = readTempSensor(sensorName)
                            temperaturStr = lines[1].find('t=')
                            if temperaturStr != -1 :
                                tempData = lines[1][temperaturStr+2:]
                                tempCelsius = float(tempData) / 1000.0
                                tempKelvin = 273 + float(tempData) / 1000
                                tempFahrenheit = float(tempData) / 1000 * 9.0 / 5.0 + 32.0
                                return [tempCelsius, tempKelvin, tempFahrenheit]
                        
                        #MQTT Connection
                        client=mqtt.Client(clientid)
                        client.username_pw_set(username, password)
                        client.tls_set(cert_reqs=ssl.CERT_NONE) #no client certificate needed
                        client.tls_insecure_set(insecure)
                        client.connect(broker, port)
                        client.loop_start()
                        
                        client.publish("{}/temperature".format(publish_topic),"{:.2f}".format(readTempLines(sensor)[0]),qos,retain_message)
                        
                        client.disconnect()
                        client.loop_stop()
                        
                        
                        

                        Mfg

                        Marc BergM Offline
                        Marc BergM Offline
                        Marc Berg
                        Most Active
                        schrieb am zuletzt editiert von Marc Berg
                        #20

                        @steinmetz_4
                        Wenn ich die Fehlermeldung richtig interpretiere, versucht dein Skript eine verschlüsselte Verbindung, die du hier:

                        client.tls_set….
                        

                        auch so aktivierst. Dein Broker ist aber nicht mit SSL konfiguriert.
                        Schalte SSL im Skript ab.

                        Und: Du musst ruhiger werden … :-)

                        NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+EMQX+Grafana

                        Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

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

                        S 1 Antwort Letzte Antwort
                        0
                        • Marc BergM Marc Berg

                          @steinmetz_4
                          Wenn ich die Fehlermeldung richtig interpretiere, versucht dein Skript eine verschlüsselte Verbindung, die du hier:

                          client.tls_set….
                          

                          auch so aktivierst. Dein Broker ist aber nicht mit SSL konfiguriert.
                          Schalte SSL im Skript ab.

                          Und: Du musst ruhiger werden … :-)

                          S Offline
                          S Offline
                          Steinmetz_4
                          schrieb am zuletzt editiert von
                          #21

                          @marc-berg

                          Tada, es funktioniert!
                          Ich danke Dir!
                          War ein holpriger Weg aber es läuft...

                          Habe beide Punkte auskommentiert.

                          afad0031-d184-471a-b744-48fb1d2b13a4-image.png

                          P.S. Ich bin die Ruhe in Person...

                          Mfg
                          Tom

                          Raspi 4 mit aktuellem IoBroker Master (The Brain)
                          Raspi 4 mit aktuellem IoBroker Slave und DS18b20 für Warmwasser und Pufferspeicher
                          Raspi 4 mit aktuellem Motioneye
                          3 x Heizstab zur PV-Eigenverbrauchsoptimierung
                          ETS 5 Professionel - 5.7.5
                          Samsung Tab 2 - 10.1
                          Buskomponenten von MDT

                          1 Antwort Letzte Antwort
                          0
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

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

                          565

                          Online

                          32.5k

                          Benutzer

                          81.8k

                          Themen

                          1.3m

                          Beiträge
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2025
                          logo
                          • Anmelden

                          • Du hast noch kein Konto? Registrieren

                          • Anmelden oder registrieren, um zu suchen
                          • Erster Beitrag
                            Letzter Beitrag
                          0
                          • Home
                          • Aktuell
                          • Tags
                          • Ungelesen 0
                          • Kategorien
                          • Unreplied
                          • Beliebt
                          • GitHub
                          • Docu
                          • Hilfe