Ankündigung

Einklappen
Keine Ankündigung bisher.

Hilfe bei Http Binding

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

    Hilfe bei Http Binding

    Hallo Liebe Foren Gemeinde,

    ich habe mir schon den "Wolf" gegoogelt und hoffe das mir einer von euch helfen kann.

    Ich habe einen Leistungszähler der den ich mittels des HTTP Bindings abfrage. Die .item Konfiguaration lautet:

    Number Sparzaehler "Leistung [%.1f Watt]" {http="<[http://192.168.178.32/?action=5:10000:REGEX(.*?whats=(.*))]"}

    Mit dieser item bekomme ich folgende Ausgabe im log

    2015-09-26 19:34:17.900 [INFO ] [runtime.busevents ] - Sparzaehler state updated to <ul class="measurands"><li><table width="100%" cellpadding="0" cellspacing="0">
    <tr><td>
    <div class="meter-id">
    <b>Stromzähler</b><br>96041040</div>
    <div class="whats">1380 W</div>
    </td></tr>
    <tr><td>
    <div class="small-whats">357 W</div>
    <h4>Durchschnittliche Leistung innerhalb der letzten 15 Minute(n)</h4>
    </td></tr>
    </table></li></ul>

    Mein Problem, ich möchte nur den Wert der hinter "whats" steht also wie im Bsp: die 1380 W.

    Kann mir jemand sagen wie ich da dran komme ??

    Ich bin für jede Hilfe dankbar.

    Gruß
    koaxial

    #2
    Naja, Du musst die Regex entsprechend umbauen, also (ungetestet)
    Code:
    [...] REGEX(.*?class.whats.>(.*) W)] [...] bzw.
    [...] REGEX(.*?class.small-whats.>(.*) W)] [...]
    Ich hab nicht im Kopf, wie man das " escapen muss, deshalb habe ich der Einfachheit halber einen . (beliebiges einzelnes Zeichen) eingesetzt
    Zuletzt geändert von udo1toni; 27.09.2015, 04:32.

    Kommentar


      #3
      Werde ich heute gleich mal testen. Danke schon mal!

      Kommentar


        #4
        Ich habe das Ganze jetzt mal nach deinen Beispielen angepasst. Im Log wird immer noch das gleiche ausgegeben, hatte mir eigentlich gedacht, das sich das nach der Änderung auf den Einzelwert beschränkt oder ist das nicht so?

        Number Sparzaehler "Leistung [%.1f Watt]" {http="<[http://192.168.178.32/?action=5:10000:REGEX(.*?class.whats.>(.*) W)]"}

        vlt. hat noch jemand eine Idee ??


        Kommentar


          #5
          So ich bin einen Schritt weiter

          folgende item Definition hat mir geholfen:

          String Sparzaehler "Leistung [%.1f Watt]" {http="<[http://192.168.178.32/?action=5:10000:REGEX(.*class="whats">(.*?) W.*)]"}

          Die Daten werden im Log sauber aktualisiert. Ich bekomme den Wert auch auf meiner VISU angezeigt soweit alles OK.

          Nur werden in der VISU die aktualisierten Werte nicht übernommen. Wenn ich die VISU manuell Reloade änder sich auch der Wert.

          Hat jemand eine Idee woran das liegen könnte.

          Ich habe bereits andere Werte die ich in der VISU darstelle, diese werden auch sauber in der VISU aktualisiert. Liegt es evtl. das, dass item ein String item ist ?


          Kommentar


            #6
            Problem gelöst.

            Musste das item nochmal anpassen
            String Sparzaehler "Leistung [%.1f Watt]" {http="<[http://192.168.178.32/?action=5:10000:REGEX(.*class="whats">(.*?) W.*)]"}

            Kommentar


              #7
              leider ist im letzten Beitrag die Maskierung der " durch einen backslash nicht übernommen worden.

              Kommentar

              Lädt...
              X