Okay, ich versuche es mal. Es ist nur eine rudimentäre Anleitung, da ich selbst nur die Hälfte verstehe.
-
Rainmeter installieren, zusätzlich die Glasses Skin - die habe ich als Vorlage teilweise übernommen. https://vclouds.deviantart.com/art/Glasses-313182310
-
Im Webfront/user einen Ordner erstellen für die php-Skripte.Für einen String z.B.:
<?
echo "<html><head><title>Current IP Check</title></head><body>METAR: ".GetValue(27777)."
".GetValue(31839)."</body></html>";
?>
Beim Aufruf dieses Skripts im Browser sollte dann der Stringinhalt nackig da stehen. Sicherheit nach Geschmack einstellen.
- Im Rainmeter Skin Verzeichnis liegen viele der Glasses-Skin. Ich habe einfach einen Ordner kopiert (von einem Meter, dessen Größe einem etwa gefällt) und die ini-Datei umbenannt. Man sieht das ja noch im Titel
Anschließend den Inhalt anpassen, z.B.:
;[BEGIN CONFIG FILE]==============================
[Rainmeter]
Author=VClouds
Version=1.0
AppVersion=100100
Update=1000
Blur=#Blur#
BlurRegion=2,17,18,211,114,0
[Metadata]
Name=Glasses-Drives
Description=
Instructions=
Version=1.0
Tags=Glasses|VClouds
License=Creative Commons Attribution-Non-Commercial-Share Alike 3.0
Variant=
Preview=
[Variables]
@include=\UserVariables.inc
@include2=#@#Language\#Language#.inc
; MEASURES--------------------
[metar]
Measure=Plugin
Plugin=WebParser.dll
Url=http://chekow/user/Rainmeter/metar.php
UpdateRate=300
RegExp="(?siU)METAR: (.*)</body>"
StringIndex=1
Substitute="":"N/A"
; METERS--------------
; STYLES==============
[styleTitle]
StringAlign=Left
StringCase=UPPER
StringStyle=Normal
StringEffect=BORDER
FontEffectColor=255,255,255,60
FontColor=#colorTitleText#,255
FontFace=#fontName#
FontSize=#textSize#
AntiAlias=1
[styleLeftText]
StringAlign=LEFT
StringCase=NONE
StringStyle=Normal
StringEffect=SHADOW
FontEffectColor=0,0,0,50
FontColor=#colorText#
FontFace=#fontName#
FontSize=#textSize2#
AntiAlias=1
[styleRightText]
StringAlign=RIGHT
StringCase=NONE
StringStyle=Normal
StringEffect=SHADOW
FontEffectColor=0,0,0,50
FontColor=#colorText#
FontFace=#fontName#
FontSize=#textSize2#
AntiAlias=1
[styleBar]
BarColor=#colorBar#
BarOrientation=HORIZONTAL
SolidColor=255,255,255,20
SolidColor2=255,255,255,0
; Background=============
[MeterBackground]
Meter=IMAGE
ImageName=#@#Images\Back2H.png
Hidden=#Background#
ImageTint=#BackgroundColor#,#BackgroundTransparency#
[MeterBoxTop]
Meter=image
BackgroundMode=2
SolidColor=0,0,0,150
SolidColor2=0,0,0,0
X=19
Y=20
W=255
H=22
Hidden=#Shade#
[MeterBoxBottom]
Meter=image
BackgroundMode=2
SolidColor=0,0,0,150
SolidColor2=0,0,0,20
X=12
Y=42
W=370
H=158
Hidden=#Shade#
[MeterBoxLineR]
Meter=image
BackgroundMode=2
SolidColor=0,0,0,0
SolidColor2=255,255,255,70
X=98
Y=40
W=290
H=2
Hidden=#Shade#
[MeterBoxLineR2]
Meter=image
BackgroundMode=2
SolidColor=0,0,0,0
SolidColor2=0,0,0,50
X=98
Y=42
W=290
H=1
Hidden=#Shade#
;---------------------------
[MeterNetTitle]
Meter=STRING
MeterStyle=styleTitle
X=12
Y=12
W=285
Text=METAR & TAF
[METARString]
Meter=STRING
MeterStyle=styleLeftText
MeasureName=metar
X=20
Y=30r
W=360
H=400
Text="%1"
ClipString=2
; Reflection=========
[MeterReflect]
Meter=IMAGE
ImageName=#@#Images\ReflectionGmail.png
Hidden=#Reflection#
Im Measure Abschnitt sieht man beim Parser die Ankopplung an IPS. Natürlich kann man da mit Regex im Parser auch Stringteile rauskopieren, aber ich mache diese Vorarbeit direkt in IPS. In dieser Einstellung wird das Webfront etwa alle 10min aufgerufen, falls man nicht direkt manuell auf dem Meter aktualisiert.
- Für Buttons habe ich das so relaisiert (hier ohne diese Glass-Effekte, die fand ich bei Buttons unschön):
[Rainmeter]
Update=1000
[Variables]
[MeterVolUp]
Meter=String
X=5R
Y=5
FontSize=11
FontColor=255,255,255,255
SolidColor=47,47,47,255
Padding=5,5,5,5
LeftMouseDownAction=["C:\Program Files (x86)\EventGhost\Eventghost.exe" -event RainMeter.IPSButtons.Vol+]
Text=Vol +
AntiAlias=1
[MeterVolDown]
Meter=String
x=5R
Y=5
FontSize=11
FontColor=255,255,255,255
SolidColor=47,47,47,255
Padding=5,5,5,5
LeftMouseDownAction=["C:\Program Files (x86)\EventGhost\Eventghost.exe" -event RainMeter.IPSButtons.Vol-]
Text=Vol -
AntiAlias=1
[MeterSonos]
Meter=String
x=5R
Y=5
FontSize=11
FontColor=255,255,255,255
SolidColor=47,47,47,255
Padding=5,5,5,5
LeftMouseDownAction=["C:\Program Files (x86)\EventGhost\Eventghost.exe" -event RainMeter.IPSButtons.Sonos]
Text=Sonos
AntiAlias=1
Die Buttonaktion läuft über diesen „LeftMouseDownAction“, der bei mir einfach eine Eventghost-Aktion aufruft. Das ist ein Thema für sich, aber leider kann Rainmeter wohl keine POST requests ohne zusätzlichen Firlefanz, den ich nicht kapiert hatte. In Eventghost ist das nicht das Problem, also setze ich dort die POST requests an die json-rpc von IPS ab.
- Bilder anzeigen:
eigentlich genauso wie Strings, nur andere Skripte mit passendem Header:
<?
Header ("Content-type: image/png");
readfile("//chekow/c/IP-Symcon/media/weather_Bremen.png");
?>
also nur eine Datei aus dem Mediaordner auslesen. Sollte im im Vorfeld natürlich auch im Browser erstmal testen. Dann eine mögliche ini-Datei:
[Rainmeter]
Author=VClouds
AppVersion=2001000
Update=1000
[Metadata]
Name=Gafor
Description=
Instructions=
Version=1.0.0
License=Creative Commons BY-NC-SA 3.0
[Variables]
@Include=Variables.inc
@include2=#@#Language\#Language#.inc
; MEASURES ====================================
[mImage]
Measure=Plugin
Plugin=WebParser
Url=http://chekow/user/Rainmeter/weather_Bremen.php
Download=1
DownloadFile=FileName.png
; METERS ======================================
[Image]
Meter=IMAGE
MeasureName=mImage
X=0
Y=11
W=665
H=260
PreserveAspectRatio=#PreserveAspectRatio#
Bei mir läuft alles nur intern - also ohne Passwörter. Da muss man u.U. noch etwas nacharbeiten.