Ankündigung

Einklappen
Keine Ankündigung bisher.

- √ - Webabfrage: regulrärer Ausdruck

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #31
    Eine Webabfrage muss IMMER explizit gestartet werden.
    Gruß Matthias
    EIB übersetzt meine Frau mit "Ehepaar Ist Beschäftigt"
    - PN nur für PERSÖNLICHES!

    Kommentar


      #32
      Und wie starte ich eine Webabfrage innerhalb des Q-Clienten? Dazu finde ich in der Hilfe ß :/

      Kommentar


        #33
        Die kannst du nur über die Logik starten. IM QC legst du eine Schaltfunktion an, und das zugehörige iKO triggert dann per Logik (Binärauslöser) die Webabfrage.
        Gruß Matthias
        EIB übersetzt meine Frau mit "Ehepaar Ist Beschäftigt"
        - PN nur für PERSÖNLICHES!

        Kommentar


          #34
          Hallo zusammen,

          ich habe folgendes Problem, beim lesen des IPWE1 bekomme ich eine Reihe Zeilen die wie folgt aufgebaut sind:

          <td style="text-align: center;">Sensortyp</td> <td style="text-align: center;">Adresse</td> <td style="text-align: center;">Beschreibung</td> <td style="text-align: center;">Temperatur</td> <td style="text-align: center;">Luftfeuchtigkeit</td> <td style="text-align: center;">Windgeschwindigkeit</td> <td style="text-align: center;">Regenmenge</td> </tr> <tr>
          <td style="text-align: center;">T/F<br></td> <td style="text-align: center;">0<br></td> <td style="text-align: center;">Technik EIB<br></td> <td style="text-align: center;">33.1 °C<br></td> <td style="text-align: center;">30 %<br></td> <td style="text-align: center;"> <br></td> <td style="text-align: center;"> <br></td>
          </tr> <tr>
          (...nächster Sensor)

          Mit dem Skript unten (nur der Anfang, die Sensorliste ist wesentlich länger, bekomme ich die Felder gelesen:
          1. und 2. Datenblock beliebig, 3. Datenblock 14byte Text, 4. und 5. Datenblock 4-byte Gleitkomma funktioniert das:.


          .+?Regenmenge.+?;">(.+?)<br>.+?;">(.+?)<br>.+?;">( .+?)<br>.+?;">(.+?)<br>.+?;">(.+?)<br>.+?;">(.+?)< br>.+?;">(.+?)<br>.+?;">(.+?)<br>.+?;">(.+?)<br>.+ ?;">(.+?)<br>.+?;">(.+?)<br>.+?;">(.+?)<br>.+
          Leider passiert es manchmal dass die Funkübertragung zu einem Sensor gestört ist, dann sieht das wie folgt aus:
          <td style="text-align: center;"> <br></td> <td style="text-align: center;"> <br></td> <td style="text-align: center;"> <br></td> <td style="text-align: center;"> <br></td> <td style="text-align: center;"> <br></td> <td style="text-align: center;"> <br></td> <td style="text-align: center;"> <br></td>

          Hier bricht der HS aber die Auswertung des Skriptes beim ersten als 4-byte Gleitkomma definierten Datenblock ab (statt einer Zahl kommt nur ein Leerzeichen), und damit werden auch die danach folgenden Sensoren nicht mehr gelesen.

          Was kann ich machen, damit HS nicht die Auswertung abbricht, wenn ein Datenblock "" oder " " ist und das Ergebnis an eine 4-byte Gleitkomma Variable weitergeleitet werden soll ?
          Stattdessen möchte ich entweder keinen Wert, oder einen vordefinierten Standardwert haben.


          Danke

          Kai

          Kommentar


            #35
            Moin,

            nimm doch statt 4-Byte-Werten einfach 14byte-Text. Dann würde das Leerzeichen ja erfasst werden. In einer Logik könntest du dann in andere Werte umwandeln/Standardwert setzen/etc.

            Vg,
            Mucki

            Kommentar


              #36
              ja klar, geht so auch - dachte nur, daß man im phyton script schon eine entsprechende Fehlerbehandlung einbauen könnte...

              Kai

              Kommentar


                #37
                Ich habe das so gelöst, dass ich für jeden Sensor vom IPWE1 eine eigene Webabfrage definiert habe. Jede Minute starte ich eine einzelne Abfrage, bis ich alle Sensoren durchhabe. Das verhindert, dass bei Nichtvorhandensein eines einzelnen Werts die anderen Werte betroffen sind. Den zeitlichen Abstand habe ich gewählt, um Buslast gering zu halten und den IPWE1 nicht zu "überfahren": Der mag es nämlich nicht, wenn man schnell hintereinander die Webseite abruft.

                Marcus

                Kommentar

                Lädt...
                X