FHEM Forum

FHEM => Frontends => Thema gestartet von: bullydog1984de am 17 Januar 2013, 21:47:03

Titel: Uhr generieren
Beitrag von: bullydog1984de am 17 Januar 2013, 21:47:03
Hallo zusammen,

besteht eigentlich die Möglichkeit, eine Uhr im FHEM einzubinden (siehe Anhang). Ich bin teilweise so lange mit FHEM beschäftigt, das ich völlig die Zeit vergesse :-)
Z.B. finde ich die Möglichkeit unter http://www.uhr-homepage.de/ (//www.uhr-homepage.de/) echt gut gemacht.

MFG
Bullydog1984de

(siehe Anhang / see attachement)
Titel: Aw: Uhr generieren
Beitrag von: bullydog1984de am 17 Januar 2013, 22:16:14
Habe es bereits halbwegs hinbekommen, die Position ist lediglich fragwürdig und sie erscheint auch nur wenn ich in den selbst angelegten Raum Uhrzeit gehe...


(siehe Anhang / see attachement)
Titel: Aw: Uhr generieren
Beitrag von: UliM am 17 Januar 2013, 23:08:47
M.W. gibt's dazu nen Wili-Beitrag unter fhemwiki.de
Gruß Uli
Titel: Aw: Uhr generieren
Beitrag von: Puschel74 am 18 Januar 2013, 08:43:54
Das hier:

http://www.fhemwiki.de/wiki/Uhr_auf_FHEM-Seite (//www.fhemwiki.de/wiki/Uhr_auf_FHEM-Seite)

Bitte Anhänge vor dem hochladen auf verträgliche Größe prüfen.
Ich "hasse" nichts mehr (doch es gibt noch einiges mehr ;-) ) auf meinem 22" ganz nach rechts zu scrollen nur um den Antwort-Button drücken
zu können.

Grüße
Titel: Aw: Uhr generieren
Beitrag von: broadway am 18 Januar 2013, 13:48:45
Zitatbei Verwendung von pgm2
Was ist das und woher weiß ich ob ichs verwende?

ZitatModifikation der Datei svg.js
Unter edit files finde ich sie nicht.
Titel: Aw: Uhr generieren
Beitrag von: bullydog1984de am 18 Januar 2013, 17:35:13
Hallo UliM,
hallo Puschel 74,

danke für die Info. Ich habe es in FHEM eingebunden... Gibt es eine Möglichkeit, dass ich die Position im FHEM definieren kann? Desweiteren hätte ich auch noch gerne das aktuelle Datum um die Sekunden angezeigt. Besteht die Möglichkeit, dass jemand von euch den Code darauf optimiert;-)
function GetClock(){
 d = new Date();
 nhour  = d.getHours();
 nmin   = d.getMinutes();
 if(nmin <= 9){nmin="0"+nmin}
 document.getElementById('logo').innerHTML=nhour+":"+nmin;
 setTimeout("GetClock()", 1000);
}
window.onload=GetClock;



(siehe Anhang / see attachement)
Titel: Aw: Uhr generieren
Beitrag von: jhohn am 18 Januar 2013, 23:21:44
Kannst Du bitte angehängte Bilder in Zukunft vor dem Upload verkleinern?
Danke.
Titel: Aw: Uhr generieren
Beitrag von: Puschel74 am 19 Januar 2013, 09:29:40
Für eine sekundengenaue Anzeige musst du mal in der ehemaligen Google-Groups die SuFu loslassen.
Dort müsste es einen Beitrag dazu geben.
Titel: Aw: Uhr generieren
Beitrag von: UliM am 19 Januar 2013, 10:08:41
Zitat von: bullydog1984de schrieb am Fr, 18 Januar 2013 17:35d.getHours();
 

]
...und wenn Du mal nach dieser Funktion googelst, sollten sich die entspr. Funktionen für Sekunden und das Datum finden lassen.
Wenn man die mal hat, ist Erweiterung des applets recht einfach, sollte mit etwas trial&error hinzukriegen sein.

Vll hilft Dir ja jemand, wenn Du die entspr. Funktionsnamen hier mal postest?

Gruß, Uli
Titel: Aw: Uhr generieren
Beitrag von: broadway am 19 Januar 2013, 11:12:27
Zitat von: broadway schrieb am Fr, 18 Januar 2013 13:48
Zitatbei Verwendung von pgm2
Was ist das und woher weiß ich ob ichs verwende?

ZitatModifikation der Datei svg.js
Unter edit files finde ich sie nicht.

Hallo zusammen. Ich würde auch gerne die Uhr imtegrieren.
Könnte jemand noch meine Fragen (oben) zum Wiki Beitrag beantworten?
Vielen Dank schonmal.
Titel: Aw: Uhr generieren
Beitrag von: bullydog1984de am 19 Januar 2013, 11:40:27
Hallo zusammen,

ja ich werde in Zukunft auf die Größe der Bilder achten...
Ich werde noch mal ein wenig googeln um die Lösung herauszubekommen.

@broadway
die svg.js Datei verbirgt sich bei mir im Ordnerverzeichniss: \fhem\usr\share\fhem\www\pgm2 dort öffnest du die Datei und setzt einfach ans ende des Dokumentes:
function GetClock(){
 d = new Date();
 nhour  = d.getHours();
 nmin   = d.getMinutes();
 if(nmin <= 9){nmin="0"+nmin}
 document.getElementById('logo').innerHTML=nhour+":"+nmin;
 setTimeout("GetClock()", 1000);
}
window.onload=GetClock;


anschließend speichern und im FHEM ein shutdown restart erzeugen...

sollte dein Style (also deine Oberfläche) wie bei mir aussehen, dann verwendest du pgm2 ;-)

Titel: Aw: Uhr generieren
Beitrag von: broadway am 19 Januar 2013, 16:56:48
Danke Bullydog,

es funktioniert im Default Style. Ich bevorzuge "dark", dort sehe ich es leider nicht.
Titel: Aw: Uhr generieren
Beitrag von: bullydog1984de am 20 Januar 2013, 16:53:41
Hallo zusammen,

habe jetzt einige Zeit die Einträge in verschiedenen Foren studiert. Leider komme ich nicht zu dem gewünschten Ergebnis... Also Datum und Sekunden werden immer noch nicht angezeigt.

Gruß
Bullydog1984de
Titel: Aw: Uhr generieren
Beitrag von: Prof. Dr. Peter Henning am 20 Januar 2013, 17:04:50
Zwar nicht von Willi, aber den Beitrag gibt es...

LG

pah
Titel: Aw: Uhr generieren
Beitrag von: Prof. Dr. Peter Henning am 20 Januar 2013, 17:07:40
Der Wiki-Beitrag stammt von mir - was ist daran nicht klar ?

LG

pah

Titel: Aw: Uhr generieren
Beitrag von: broadway am 20 Januar 2013, 18:25:57
Zitat von: Prof. Dr. Peter Henning schrieb am So, 20 Januar 2013 17:07Der Wiki-Beitrag stammt von mir - was ist daran nicht klar ?

Wie adaptiert man es z.B. für den "dark" Style?
Titel: Aw: Uhr generieren
Beitrag von: bullydog1984de am 21 Januar 2013, 19:37:03
Sehr geehrter Herr Henning,

erstmal vorne weg vielen Dank für den Wiki-Beitrag.
Sie verweisen darauf, dass die Möglichkeit besteht, den Code auf Sekunden auszuweiten. Dieses ist sicherlich für geübte Programmierer eine Leichtigkeit. Für ungeübte stellt dieses eine große Herausforderung dar. Ich würde mich freuen, wenn Sie mir mitteilen würden, wie ich zum einen die Sekunden einbinden kann und zum anderen das aktuelle Datum erzeuge.

MFG
Bullydog1984de  
Titel: Aw: Uhr generieren
Beitrag von: UliM am 21 Januar 2013, 19:57:33
Hi,
nach ca 2 Sekunden googeln habe ich gefunden:
http://de.selfhtml.org/javascript/objekte/date.htm

Habe auch noch nie was in Javascript gemacht, die Funktion um Sekunden zu erweitern dürfte wohl in etwa so aussehen (ungetestet):

function GetClock(){
 d = new Date();
 nhour  = d.getHours();
 nmin   = d.getMinutes();
 nsec   = d.getSeconds();
 if(nmin <= 9){nmin="0"+nmin}
 if(nsec <= 9({nsec="0"+nsec}
 document.getElementById('logo').innerHTML=nhour+":"+nmin+":"+nsec;
 setTimeout("GetClock()", 1000);
}
window.onload=GetClock;
Titel: Aw: Uhr generieren
Beitrag von: Prof. Dr. Peter Henning am 21 Januar 2013, 20:21:44
Das, was UliM unten gemacht hat, führt hier tatsächlich am schnellsten zum Ziel - ich bin leider derzeit etwas in Zeitnot.

Eingeben "Javascript Clock" liefert 64,800,000 Links bei Google.

LG

pah
Titel: Aw: Uhr generieren
Beitrag von: Prof. Dr. Peter Henning am 21 Januar 2013, 20:22:13
Passt.

Ich habe hier schon ein Handbuchkapitel über Perl zur Verfügung gestellt, ich könnte auch noch eins über JavaScript hinzufügen.

LG

pah
Titel: Aw: Uhr generieren
Beitrag von: bullydog1984de am 22 Januar 2013, 20:11:33
DANKE UliM hat funktioniert. Es musste lediglich die Klammer bei if(nsec <= 9([/b]{nsec="0"+nsec} gedreht werden.
Titel: Aw: Uhr generieren
Beitrag von: bullydog1984de am 27 Januar 2013, 16:25:01
Hallo zusammen,

ich habe jetzt auch das Datum mit folgenden Code einbinden können:
function
GetClock()
{
 datum = new Date();
 std = datum.getHours();
 min = datum.getMinutes();
 sec = datum.getSeconds();
 if(std < 10){std = '0'+std;}
 if(min < 10){min = '0'+min;}
 if(sec < 10){sec = '0'+sec;}
 zeit = std+':'+min+':'+sec;
 tag = datum.getDate();
 monat = datum.getMonth() +1;
 jahr = datum.getFullYear();
 zeit += '\n' +tag+ '.' +monat+ '.' +jahr;
 document.getElementById('logo').innerHTML = zeit;
 setTimeout("GetClock()", 1000);
}
window.onload=GetClock;


Gruß
Bullydog1984de
Titel: Aw: Uhr generieren
Beitrag von: broadway am 05 Februar 2013, 19:14:04
Leider habe ich gerade festgestellt, dass der code die Uhrzeit des Systems anzeigt, mit dem ich über Netzwerk auf FHEM zugreife.

Viel interessanter wäre doch die Systemzeit der FHEM Hardware, oder?
Titel: Aw: Uhr generieren
Beitrag von: Prof. Dr. Peter Henning am 05 Februar 2013, 21:23:49
Erst einmal war das klar - JavaScript läuft im Browser.

Zweitens ist es schwierig, sich die Zeit des FHEM-Systems _genau_ zu holen - da gibt es nämlich Netzwerklatenzen ...

Drittens aber: Wieso eigentlich ? Sowohl der FHEM-Server, als auch der mit dem Browser sollten sich über NTP mit einem Zeitserver synchronisieren, haben damit dieselbe Zeit. Und NTP bezieht die Netzwerklatenz mit ein.

Also, ich sehe das Problem nicht.

LG

pah
Titel: Aw: Uhr generieren
Beitrag von: broadway am 06 Februar 2013, 20:59:28
Erstens ist das bestimmt nicht jedem klar und

zweitens ist das keine Kritik am code für die Uhr, sondern ein Hinweis.

Und dank meinem Beitrag und Ihrer Antwort machen sich vielleicht mehr Leute Gedanken, wie sie Ihre Zeiten synchronisieren. Bei mir ist der NAS synchronisiert, am PC besteht aber keine Notwendigkeit.
Titel: Aw: Uhr generieren
Beitrag von: Otto am 15 September 2013, 10:38:32
Hallo,

also bei mir geht es nicht:
Logobilddatei wird nicht angezeigt, also css wird richtig ausgeführt.

Javadatei svg.js wird geladen und Änderungen sind vorhanden.


Bin planlos.

Gruß Otto
Titel: Aw: Uhr generieren
Beitrag von: prime1009 am 17 September 2013, 18:29:11
Hi,

bei mir wird die Uhr nicht angezeigt, wenn ich in der fhem.cfg "longpoll" eingeschaltet habe.

Schalte das doch mal ab und schau dann, ob die Uhr angezeigt wird.

Villeicht findet ja jemand eine Lösung, das beides funktioniert. Ohne "longpoll" werden die Schaltzustände immer erst nach einem "refresh" richtig angezeigt.