Befehle "direkt" an fhem

Begonnen von Guest, 19 Juni 2011, 11:32:33

Vorheriges Thema - Nächstes Thema

Guest

Originally posted by: <email address deleted>

Folgende HTML-Testseite namens test.html habe ich in den fhem-Ordner
eingefügt:
------------------------------


Testseite






------------------------------
 
In der fhem.cfg sind folgende zwei Zeilen drin:
------------------------------
define Lampe1_ein notify Lampe1.on  "cp /usr/share/fhem/FHEM/FS20.on.gif  
/usr/share/fhem/FHEM/Lampe1.png"
define Lampe1_aus notify Lampe1.off "cp /usr/share/fhem/FHEM/FS20.off.gif
/usr/share/fhem/FHEM/Lampe1.png"
------------------------------
 
Ich musste noch den User fhem als Owner für den Ordner /usr/share/fhem/FHEM
eintragen (chown), und ich musste mit dem gif/png tricksen, weil die gifs
nicht übertragen wurden.
 
Also es funktioniert prinzipiell so.
In der HTML wird für die Lampe ein
aufgezogen, das absolut platziert
wird. In dem drin kann man sich dann austoben - in meinem Fall zum
ausprobieren halt mal ein Link für EIn und einer für AUS.
Unschön ist, daß jetzt auf die FHEM-Seite gewechselt wird; da muß der Trick
mit Frames und dem Schlüsselwort "target" herhalten...
 
Aber es ist machbar.
Diese Seite jetzt noch per Autorefresh aktualisieren...

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hallo Hans,
vielen Dank nochmals. Der Hinweis mit dem "etage1.png" war der
passende Hinweis. Ich habe immer am "bg.png" gefummelt.
Hätte ich mal richtig mit gelesen wäre das Problem nicht aufgetreten.
Errorlog vom Apache ist ein guter Hinweis, das werde ich mal genauer
prüfen.
Weitere Aktoren werde ich in den nächsten Wochen mal testen.
Vielleicht mache ich ja Fortschritte. Bei Problemen
wirst Du sicher wieder von mir lesen ;-)

Gruss
   Frank

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

On 12 juil, 07:55, "tobias.faust" wrote:
> Hi UliM,
> verfolgst du den Ansatz einer reinen HTML-Seite nicht weiter?

Hi, naja, die Loesung von Hans ist leistungsfaehiger und bedient sich
letztendlich derselben Mechanismen.
Ich hab 'meinen' Anstz nicht weiterverfolgt, weil ich denke
- Wer ne simple Loesung ohne Apache sucht, kann den Weg mit Word
waehlen
- Wer's schick haben moechte, nimmt die Loesung von Hans - die dann
eben einen Apache o.ae. braucht

Wenn Weg 1 mehreren Leuten weiterhilft, kann ich da nochmal 2 Abende
reinstecken - bin kein html-Koenner, muss mir alles muehsam
zusammensuchen, drum auch keine Versprecchungen wann ich wieder dazu
komme..
Wer braeuchte denn das ausser Tobias noch?
Gruss aus Frankreich, Uli

PS: ich HASSE das franzoesische Tastatur-Layout!!!!!

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

> zb. das folgender aufruf anstatt einer Webseite ein zu definierendes
> Bild zurückgibt:
> http://IP_der_FB:8083/fhem/get_image.pl?name=lampe

Habs eingebaut, als
  http://ip:8083/fhem/icons/lampe

Und wenn ich schon dabei war, habe ich zu den weblink Attributen iframes
hinzugefuegt. Und FHEMWEB etwas an die alternativen Mobilbrowser
(Opera/Firefox) angepasst. Update via updatefhem sollte moeglich sein.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi

@Rudi: gerade upgedated - fhemupdate lief reibungslos - die neuen
Glühbirnen-Symbole gefallen mir (nach kurzer Eingewöhnungszeit) sehr
gut.

@Hans: Sehr schön - damit ist der Ansatz zur Positionierung der
Schaltflächen gelöst. In Kombi mit Rudi's http://ip:8083/fhem/icons/lampe
könnte man nun also auch die Icosns darstellen.

Auf Basis des o.g. HTML-Beispiels wäre es doch nun recht
übersichtlich, genau diese HTML-Aufgaben aus perl heraus zu machen.
Entweder die fhemweb erweitern oder ein separates perl-Ausgabescript.
Wenn man die bisherigen Lösungsansätze zusammenfasst, wären durch eine
Implementierung in perl gleich zwei Probleme weg: 1. die Performance-
Probleme, 2. der sonst fehlende Webserver.

Mein Ziel ist, die Ausgabe nicht aus einer separaten Konfig-Datei,
sondern mittels der fhem.cfg zu steuern.
Das stelle ich mir z.B. so vor:

  define WEBF1 FHEMWEB 8085 global
  attr WEBF1 floorplan Etage1
  attr WEBF1 background Erdgeschoss.png

  define WEBF2 FHEMWEB 8086 global
  attr WEBF2 floorplan Etage2
  attr WEBF2 backgroundimage ErsterStock.png

Je Gerät, das angezeigt werden soll, dann zusätzliche Attribute. Also
z.B. für Lampe1:
  attr Lampe1 screen Etage1_X 100
  attr Lampe1 screen Etage1_Y 200
  attr Lampe1 screen Etage1_Typ 1
  attr Lampe1 screen Etage2_X 200
  attr Lampe1 screen Etage2_Y 500
  attr Lampe1 screen Etage2_Typ 2

Bei Screen Etage1 (aufgerufen über :8085) Würde Lampe1 also bei
Position 100,200 angezeigt.
Bei Screen Etage2 (aufgerufen über :8086) Würde Lampe1 also bei
Position 200,500 angezeigt.
*_Typ könnten Darstellungsvarianten sein, z.B.
_Typ 1 : on, Symbol, off
_Typ 2 : Symbol #das selbst als toggle-Schalter dient)
_Typ 3 : Ausgabe Ist-Temperatur bei FHT
_Typ 4 : Anzeige des Value() #z.B. von dummies
_Typ 5 : Weblink

Man muss auch Links darstellen können, um z.B. den Absprung auf ein
anderes Bild oder auf die fhem-Seite platzieren zu können. Hab noch
nicht getestet, ob man fhem-Links auch Attribute mitgeben kann, gehe
aber mal davon aus.
Der Algorithmus in fhemweb wäre also:

$ScreenName # aus define WEB
Loop über alle Geräte
  Wenn das Gerät ein Attribut hat, das den ScreenNamen
enthält          #also z.B. Etage1
       div an angegebener Position gemäß angegebenem Typ

Bzw. in den vorhandenen loop in der fhemweb einbauen.

Erstmal:
- Was haltet ihr von dem Ansatz?
- Sind die o.g. Einträge für fhem.cfg einigermassen vernünftig? (z.B.
die Darstellung Etage1_X gefällt mir nicht - weiss aber
  nicht, ob man auch mehrdimensionale Attribute haben kann, dann wäre
z.B.
    attr Lampe1 Etage1 XY 100 200 1
  viel besser).

Wenn ich nur perl könnte....
Werd mich morgen mal dran versuchen - und wahrscheinlich kläglich
scheitern.

Gruß, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

> Je Gerät, das angezeigt werden soll, dann zusätzliche Attribute. Also
> z.B. für Lampe1:
>   attr Lampe1 screen Etage1_X 100
>   attr Lampe1 screen Etage1_Y 200

Das geht nicht, die zweite Zeile ueberschreibt die Erste.  Aber
  attr Lampe1 screen Etage1_X 100 Etage1_Y 200
geht.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

>   attr Lampe1 screen Etage1_X 100 Etage1_Y 200
> geht.

Ok, danke, werd's versuchen :-)


Hab grad ein wenig rumgetestet. GrundrissStart.html wie im Wiki
http://fhemwiki.de/index.php/Grundriss_mit_fhem-buttons

Grundriss.html z.B. wie folgt:

 
 
 
 Testseite
 
 
 
 

  ON
  :8083/fhem/icons/Lampe1>
  OFF
 

 
 
 


Das geht! Dank Rudi nun auch incl Anzeige des Schaltzustands - ganz
ohne notify und cp.

Der erste div ist eine Anzeige mit on|Symbol|off, der zweite ist nur
das Symbol mit toggle dahinter.
Zugegeben, das refresh alle 2 Sekunden ist nicht schön, erfüllt aber
seinen Zweck.

Morgen also der Versuch der perl-Version :-)

Gruß, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Das kann was.
Sehr schön!
 
Jetzt hätt ich da aber doch noch eine kleine Frage:
Wenn man jetzt von Ferne auf seine Automatisation zugreifen will, muss man
seinen Port 8083 nach aussen frei geben, weil ja sonst die Icons nicht
dargestellt werden können - und auch keine Befehle geschalten werden können.
Damit gibt man ja aber den _gesamten_ fhem der Aussenwelt frei, oder?
 
Das kann vermutlich nur durch einen eigenen Webserver gesichert werden, der
die Anfragen vorher verarbeitet. Und dann sind wir wieder bei php...
Oder überseh ich was?
Aber man könnte die Icon-Abfragen auch schön per php vom fhem abrufen und
als Embedded Grafik ins HTML einbinden.... Da wäre der Verbindungsweg zum
fhem komplett verschleiert, wenn man den Source anschauen würde, würde man
für die Icons nur base64 verschlüsselte Zeichenketten sehen....
 
Ach ja noch was fällt mir grad ein:
Könnte man - analog zu den Icons der Lampen - auch die Stati von z.B. FHT8v,
oder Temperaturen rückmelden?
Ich bastel mir das ja in meiner Variante per php und ImageText als Grafik
zusammen... Oder übertreiben wirs jetzt :-) ?
 
Gruß
Hansemann

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

> Könnte man - analog zu den Icons der Lampen - auch die Stati von z.B. FHT8v,
> oder Temperaturen rückmelden?
> Ich bastel mir das ja in meiner Variante per php und ImageText als Grafik
> zusammen... Oder übertreiben wirs jetzt :-) ?

Ja. Dafuer gibts in fhem list und xmllist, in php kann man beides gut parsen.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

On 18 Jul., 09:00, "h...@nendzig.net" wrote:
> Wenn man jetzt von Ferne auf seine Automatisation zugreifen will, muss man
> seinen Port 8083 nach aussen frei geben, weil ja sonst die Icons nicht
> dargestellt werden können - und auch keine Befehle geschalten werden können.
> Damit gibt man ja aber den _gesamten_ fhem der Aussenwelt frei, oder?

Hi Hans,
ich nutze die FB7390. Port 8083 ist nicht nach aussen freigegeben, ist
damit nur im Heimnetzwerk verfügbar. Für das Gerät gibt's auch ne VPN-
Verbindung, die nutze ich wenn ich ausserhalb bin.
Den Port 8083 würde ich auch nicht 'an die ganze Welt' freigeben, da
stimm ich Dir zu.

Übrigens hab ich meinen Anlauf, die fhemweb zu erweitern, erstmal an
den Nagel gehängt.
Vll geh ich erstmal eine separate perl-routine an.  Oder ich bastel
mir 'manuell' eine Version.
Auf jeden Fall hab ich den Wiki-Eintrag aktualisiert mit o.g. Ansatz
für Grundriss.html - hab den Ansatz mit Word rausgeschmissen, um die
Linux-Groupies nicht noch mehr zu nerven ;-)

Grüßle,
Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

xmllist und php ist mirklar, hab ich ja eh so gemacht.
Ich dachte mir halt für die "Nur-HTML"-Variante, da tut man sich eher
schwer, die xmllist zu parsen. Obwohl - vielleicht per javascript? Hmmm...
 
Derzeitiger Zwischenstand:
Für einfache Darstellungen und Schaltungen ist die HTML-Variante schnell,
einfach, und ohne extra Webserver bzw. php umsetzbar, spricht vor allem
Leistungsschwächere Geräte an. Für Fernzugriff wird ein offener Port 8083
oder eine VPN Verbindung benötigt, die auf mobilen Geräten nicht immer
möglich ist.
 
Wers komfortabler und Umfangreicher braucht, benötigt Apache und PHP und
bedient sich meines Lösungsansatzes. Damit ist ein sicherer Zugriff auch
über öffentliche Rechner möglich (Internet-Cafe etc).
 
Man muß einfach abwägen, was man braucht, mit den Ansprüchen wachsen
naturgemäss auch die Ansprüche an die Geräte, die Fritzbox hat halt irgendwo
ihre Grenzen. Wer keinen eigenen Server bauen will, kann auch einen
Sheevaplug oder Derivate davon, oder den TuxRail von busware, oder ein
Alix-Board von PC Engines verwenden; auf den kann dann z.B, der Webserver
ausgelagert werden. Das ist eine Kostenmässig günstige Lösung, die
Leistungsmässig auch noch einiges mehr verträgt.
 
Gruß
Hans
 

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

:-)
 
Ich hab vor ca. 20 Jahren meine ersten HTML Seiten gebastelt, damals auf
Amiga (wenn das noch wer kennt...), und da hat man halt mangels WYSIWIG mit
Notepad-ähnlichen IDE's :-) gearbeitet.
Das Ergebnis sind nicht immer grafisch "geile" Seiten, aber auf jedenfall
Sauschnelle, weil kein bis kaum Overhead - von dem Word z.B. einen Haufen
produziert... Ich denke mal, in dem Beispiel von Dir sind ca. 90% Sachen,
die Word reinschreibt, die aber auf die Darstellung keinen Einfluss haben
(oder vernachlässigbaren).
Das ist halt das Problem an den HTML Editoren: Je einfacher bedienbar, desto
universeller müssen die Templates gestaltet sein, desto größer wird der
Code. Wenn jede Zeile einzeln handgeschmiedet wird, gibts keinen Overhead,
weil kein Programmierer tippt freiwillig unnötig viel Code ein :-)
Mit PHP und Konsorten kommen dann schon eher wieder Overheads dazu, weil da
gern mit Schleifen etc. gearbeitet wird, und dazu universelle Templates
erforderlich sind, die je nach Schleifenelement mit entsprechenden werten
versehen werden.
Aber es wird generell immer Schlanker als mit Word... das hat dafür (fast)
jeder und es geht sehr einfach.
Ich "liebe" solche Seiten, die erstmal 500kB runterladen, bevor man den
ersten Strich sieht. Heutzutage ist das ja egal, weil jeder DSL hat, aber
wenn man mal genötigt ist, per GPRS und 9600 baud ins Internet zu gehen...
 
OT Ende :-)
 
Gruß
Hans

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Hi,
so, mein Grundriss ist fertig.
Meine grafische Fernbedienung (via Grundriss-Lösung plus FS20-IRF)
für's Wohnzimmer auch :-)
Beweise:
http://www.ulimaass.de/fhem/Grundriss.PNG
http://www.ulimaass.de/fhem/Media.PNG

Laut/Leise-buttons habe ich wegen der 1%-Regel weggelassen.

Klappt prima mit dem nun um Wiki beschriebenen Ansatz.

Auf dem iPad (o.g. Lösung via Webserver) zwei Ärgernisse:
1. Der 5-sekündige refresh ist mässig performant, man sieht den
Neuaufbau. Mit 8 Symbolen noch akzeptabel. Beim optischen Eindruck
hilft es, in html dieselbe bgcolor zuzuweisen wie das Hintergundbild
hat. Auch funktioniert das Schalten während des refresh nicht -
erscheint dadurch etwas hakelig.
2. Im Vollbildmodus funktioniert die target="log" Lösung nicht :-
(   Man landet nach dem Klick immer auf :8083   (trotz target="log"
und apple-tag in beiden .html:   )  Von Safari aus (leider mit
Navigationsleiste) funktioniert's aber prima.  Scheinbar ist ein split
in zwei Ausgabeframes nicht "apple-mobile-web-app-capable".

Gruß + merry testing,
Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Sodale.
Hat mich einiges an Googlezeit gekostet, aber jetzt steht eine erste Version
zum Test bereit:
 
http://heimserver.nendzig.net/projekte/HomeMini/ajax.php
 
Das ist im Prinzip dasselbe wie bisher, aber das Hintergrundbild der
ImageMap wird per Ajax aktualisiert.
 
Haken derweil noch: Selbsttätiger Refresh findet keiner statt.
Weiss jemand, ob man in Javascript so ne Art Timer laufen lassen kann? Dass
der Ajax-Update alle 10s oder so durchgeführt wird?
 
Happy ausprobiering!
 
Grüße
Hansemann

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

Da Interesse an dieser Darstellung bei mir geweckt wurde, habe ich das
homemini Projekt in das
WWW Verzeichnis meines Dockstar kopiert. Leider wird durch den Aufruf der
index.php bei
mir keine Grafik im Browser dargestellt. Die Anzeige des gleiche Projekt auf
einem anderen
WEB Server funktioniert einwandfrei.

Hat jemand eine Idee warm das so ist oder was da fehl?

Gruß Klaus

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com