Ankündigung

Einklappen
Keine Ankündigung bisher.

Gauge plugin - war: Web Plugin und Ajax

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

  • DonGyros
    antwortet
    @NetFritz:

    das funktioniert schon allerdings wird mir der gewählte Wert auf der Skala ja nicht angezeigt. Wenn ich in paar Tagen,Wochen oder Monaten da drauf schaue, kann es passieren das ich mich frage warum jetzt die LED blinkt da ich keine Ahnung mehr hab was ich damals als Treshold gewählt hatte.

    Einen Kommentar schreiben:


  • NetFritz
    antwortet
    Hallo
    @mfd
    Ich bin mir nicht sicher ob das hier das "Hauptthema" zum Gauge-Plugin ist, aber wollte mal fragen ob ich irgendwie dazu beitragen könnte, dass die Gauge-Anzeigen im gleichen Look wie die CV erscheinen?
    Kanns Du hier mal ein Beispiel rein stellen was Du meinst wo der Lock der CV nicht entspricht.
    Man kann schon einige Einstellungen am Design vohrnehmen.
    Gruß NetFritz

    Einen Kommentar schreiben:


  • NetFritz
    antwortet
    Hallo
    @DonGyros
    Bei Verwendung des Typs RadialBargraph scheint das aber nicht zu greifen.
    In der Demo Config steht doch threshold="30" wenn ich dort den Slider Last bewege wird die LED ab 30 rot.
    Gruß NetFritz
    Code:
            <gauge type="RadialBargraph" titleString="Title" unitString="Unit" minValue="0" maxValue="100" size="200" threshold="30" lcdVisible="true" trendVisible="true" lcdDecimals="2" thresholdRising="true" ledVisible="true" background="DARK_GRAY" framedesign="BLACK_METAL" valueColor="RED">
              <layout colspan="1.7"/>
              <address transform="DPT:9" mode="read">12/7/90</address>
              <address transform="DPT:9" mode="read" variant="trend">12/7/92</address>
            </gauge>

    Einen Kommentar schreiben:


  • mfd
    antwortet
    Zitat von Chris M. Beitrag anzeigen
    Wenn Du willst, kannst Du ja mal die Anzeigen als SVG basteln die Dich interessieren. Dann kann ich mal schauen, was geht.
    Ok, ich werde bei Gelegenheit mal ein paar Test-Gauges bei mir anlegen und versuchen was entsprechendes als SVG umzusetzen.

    Einen Kommentar schreiben:


  • Chris M.
    antwortet
    Zitat von mfd Beitrag anzeigen
    wollte mal fragen ob ich irgendwie dazu beitragen könnte, dass die Gauge-Anzeigen im gleichen Look wie die CV erscheinen?
    [...]
    Liegen bei den Anzeigen einzelne Elemente als Grafik vor und lassen sich austauschen, oder passiert das alles direkt im Code?
    Die Gauges sind eine externe Bibliothek, auf die wir keinen Einfluss haben.
    Und die zeichnet alle Elemente direkt aus dem Code heraus.

    => Wir haben da nicht wirklich Einflussmöglichkeiten das an irgend ein Design anzupassen

    Von daher ist die Frage in diesem Thread schon i.O. - die Lösung aber quasi OT.

    Was ich mir vorstellen kann - das wollte ich mit den SVG-Icons eh irgend wann mal machen:
    Wir können natürlich ein anderes, paralleles Plugin schreiben, dass SVG-Bilder von Dir nimmt und die geeignet animiert.

    Wenn Du willst, kannst Du ja mal die Anzeigen als SVG basteln die Dich interessieren. Dann kann ich mal schauen, was geht.

    Einen Kommentar schreiben:


  • mfd
    antwortet
    Aussehen Gauge Plugins

    Ich bin mir nicht sicher ob das hier das "Hauptthema" zum Gauge-Plugin ist, aber wollte mal fragen ob ich irgendwie dazu beitragen könnte, dass die Gauge-Anzeigen im gleichen Look wie die CV erscheinen?
    Bisher sehen die Anzeigen für mich wie ein Fremdkörper aus, daher habe ich mich auch noch nicht näher damit bbeschäftigt.
    Liegen bei den Anzeigen einzelne Elemente als Grafik vor und lassen sich austauschen, oder passiert das alles direkt im Code?

    Einen Kommentar schreiben:


  • DonGyros
    antwortet
    Bei Verwendung des Parameters 'threshold' ist es ja normalerweise so das der dort angegebene Wert auch entsprechend visuell hervorgehoben bzw. erkenntlich gemacht wird. Bei Verwendung des Typs RadialBargraph scheint das aber nicht zu greifen. Geht das hier einfach nicht oder muss man hier anders vorgehen?

    Einen Kommentar schreiben:


  • NetFritz
    antwortet
    Hallo
    Hier das HTML-PHP Script:
    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
      <html lang="de">
      <head>
      <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
      
      <link rel="stylesheet" type="text/css" href="http://www.unwetterzentrale.de/css/uwzcommon201106.css" media="all" />
      <font size="2" color="#EFEFEF" face="Verdana">
      
      <script type="text/javascript">
        window.onload = function() {
            document.getElementById("warnung").onclick = function (eve) {
            // this.innerHTML = "Clicked!";
             //alert(" Honey")
             self.location.href='http://wiregatexxxx/myhouse/wetter/unwetterwarnung1.php'
             //location.reload()
          }
        }
       </script>
      
      </head>
      <body>
      
      <?php
      $PLZ = "31628";
      $country = "DE";
      $ort = "Landesbergen";
      $lines = file('http://www.unwetterzentrale.de/uwz/getwarning_de.php?plz='. $PLZ . '&uwz=UWZ-' . $country . '&lang=de');
      #$lines = file('http://www.unwetterzentrale.de/uwz/getwarning_de.php?plz=31628&uwz=UWZ-DE&lang=de');
      // Durchgehen des Arrays und Startstring finden
      for ($i = 1; $i <= 700; $i++) {
         if(trim($lines[$i]) == '<h1>Unwetterwarnungen für '. $ort .'</h1>'){
           $start = $i;
         }
         if (preg_match('/.*"content".*/', $lines[$i])) {
           $linefrom = $i;
    #          //echo $dummy[$c];
         }
         if (preg_match('/.*Right Column.*/', $lines[$i])) {
           $lineto = $i;
         }
      }  
      echo '<div id="warnung"  >';
      for ($i = $start+1; $i <= $start+17; $i++) {
        $lines[$i] = preg_replace("/src=\"/", "src=\"http://www.unwetterzentrale.de", $lines[$i]);
        $lines[$i] = str_replace("..","",$lines[$i]);
        echo $lines[$i];
      }
      echo '</div>';
      //echo "start=" . $start . " linefrom=" . $linefrom . " lineto=" . $lineto ;  
    ?> 
      </body>
      </html>
    In der Variable $PLZ,$country und $ort musst Du noch deine PLZ, county u. ort eintragen.
    Diese Daten findest Du auf der Webseite "http://www.unwetterzentrale.de" wo du in das Suchfeld deine Posleitzahl eingeben musst.
    Wenn Du dann die Seite aufrufst steht oben in der Adresszeile deine Daten.
    In Zeile 14 muss die Adresse der 2.Webseite stehen z.B:
    Code:
    http://wiregatexxxx/myhouse/wetter/unwetterwarnung.php
    Die 2.Seite wird aufgerufen wenn man in der ersten Seite auf einen Link klickt.
    Die 2.Webseite muss im gleichen Verzeichnis stehen.
    Sie sieht dann so aus:
    Code:
    <?php
      # https://knx-user-forum.de/code-schnipsel/16098-unwetterzentrale-2.html
      $PLZ = "31628";
      $country = "DE";
     # $URL = "http://alarm.meteocentrale.de/getwarning_de.php?plz=". $PLZ ."&uwz=UWZ-". $country ."&lang=de";
      $URL="http://www.unwetterzentrale.de/uwz/getwarning_de.php?xpos=278&ypos=294&bland=niedersachsen&lang=de";
      echo '
      <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
      <html lang="de">
      <head>
      <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
      <link rel="stylesheet" type="text/css" href="http://www.unwetterzentrale.de/css/uwzcommon201106.css" media="all" />
      <!-- <link media="screen" type="text/css" href="../css/jquery.smartbanner.css" rel="stylesheet">  -->
      <font size="2" color="#EFEFEF" face="Verdana">
      </head>
      <body>
      ';
    
      $dummy = file($URL);
      $c = 0;
      while ($c < count($dummy)) {
        if (preg_match('/.*"content".*/', $dummy[$c])) {
          $linefrom = $c;
        }
        if (preg_match('/.*Right Column.*/', $dummy[$c])) {
          $lineto = $c;
        }
        $c++;
      }
    
      for ($i = ($linefrom + 1); $i < $lineto; $i++) {
        $dummy[$i] = preg_replace("/src=\"/", "src=\"http://alarm.meteocentrale.ch/", $dummy[$i]);
        echo $dummy[$i];
      }
      echo ' 
      </body>
      </html>
      ';
    ?>
    Die HTML-PHP Webseite steht dann im www Verzeichnis.
    In der CV config habe ich dann folgendes eingetragen.
    Code:
    <web src="http://wiregatexxxx/myhouse/wetter/unwetterwarnung.php" height="205px" frameborder="false" refresh="60">
    Gruß NetFritz

    Einen Kommentar schreiben:


  • mm1804
    antwortet
    Zitat von NetFritz Beitrag anzeigen
    Hallo

    Auf welchen Thread beziehst Du sich da?
    Vielleicht ein Link darauf.
    Gruß NetFritz
    die Bilder aus dem allerersten Post (gelbe Ecke unten rechts)

    Einen Kommentar schreiben:


  • NetFritz
    antwortet
    Hallo
    @mm1804
    etwas offtopic, aber wie hast Du das mit den Unwetterwarnungen hin bekommen?
    Auf welchen Thread beziehst Du sich da?
    Vielleicht ein Link darauf.
    Gruß NetFritz

    Einen Kommentar schreiben:


  • mm1804
    antwortet
    etwas offtopic, aber wie hast Du das mit den Unwetterwarnungen hin bekommen?

    Einen Kommentar schreiben:


  • Chris M.
    antwortet
    Zitat von murelli146 Beitrag anzeigen
    Was muss eigentlich bei LED oder Lightbulb eingestellt werden?
    [...]
    variant habe ich auf setValue gestellt.
    Der Name ist 'Led' und 'LightBulb' - dann kommen die auch.
    ABER: die kannst Du über die CV nicht im Status ändern (also z.B. einschalten...)

    Hintergrund: So cool diese Gauge Widgets auch sind - bei der Ansteuerung nutzt jedes dieser Gauges eigene Varianten. Bei vielen sind die gleich und somit kann man das auch leicht exportieren und folglich in der CV benutzen.
    Aber alleine Led und LightBulb nutzen jeweils eigene Methoden - und die sind auch noch anders als die der "klassischen" Gauges.
    => Wir müssten für jedes dieser Gauges das entsprechende Interface implementieren.
    Das geht natürlich, aber den Aufwand hat halt noch niemand getrieben...

    Einen Kommentar schreiben:


  • murelli146
    antwortet
    Einfach bei Type: LED oder Lightbulb ausgewählt. > leider keine Funktion.

    Ich wollte sie als Statusanzeige auf einer 2D Seite verwenden.

    Aber Danke für die Info.

    Einen Kommentar schreiben:


  • swiss
    antwortet
    Woher hast du die Bezeichnungen? Ich konnte sie auf der gauge Demovisu nicht finden. Bedenke, dass nicht alle Gauge die es gibt auch mit der CV funktionieren. Nur die auf der Demoseite aufgelisteten sind auch wirklich getestet und unterstützt...

    Einen Kommentar schreiben:


  • murelli146
    antwortet
    Was muss eigentlich bei LED oder Lightbulb eingestellt werden?

    Bekomme das nicht zum laufen.

    variant habe ich auf setValue gestellt.

    Einen Kommentar schreiben:

Lädt...
X