WINCONNECT

Aus FHEMWiki
WINCONNECT
Zweck / Funktion
Dieses Modul dient zur Steuerung eines Windows PCs
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Sonstiges
Modulname 70_WINCONNECT.pm
Ersteller michael.winkler
(Forum / Wiki)
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


WINCONNECT ist ein Modul mit welchem ein Windows PC gesteuert und Informationen angezeigt werden können.

Allgemeines

Funktionsumfang

Aktuell ist folgenden Funktionsumfang vorhanden:

  • check file_dir
  • checkservice
  • checkprocess
  • checkperformance
  • command
  • commandhide
  • Core Temp API Abfragen
  • Erkennung drucken
  • Erkennung Sound
  • FHEM CSRFTOKEN
  • FHEM SSL/HTTPS
  • FHEM Support Netbisoname und FQDN
  • get batterystate
  • get drive information
  • get powerstate
  • GUI update/autoupdate
  • GUI start minimized
  • GUI start with windows
  • Hardwareausrüstung
  • make picture (camera)
  • messagebox
  • microphone detection
  • Monitor on/off (Windows 10 hat beim off noch Probleme)
  • motion detect (camera)
  • notifymsg
  • play sound (ttsmsg/messagebox/make picture)
  • set/get Bildschirm Helligkeit (Notebook & Tablets)
  • set camera on/off (camera)
  • set/get/mute mastervolume
  • set powermode (shutdown/reboot/standby/hibernate)
  • showfile
  • Sprachsteuerung1
  • Support button / collect support information
  • ttsmsg
  • VolumeUp,VolumeDown
  • WMI Abfragen / WMI Wizard

1 Windows muss Spracherkennung unterstützen (Keine Server Betriebsysteme)

FETT = Neue Features

Voraussetzungen

Damit diese Modul verwendet werden kann, muss auf dem entsprechenden Windows PC eine zusätzliche GUI laufen. Diese kann hier heruntergeladen werden. Zusätzlich bestehen für die GUI noch folgende Systemvoraussetzungen:

  • Microsoft .Net Framework 4.5
  • Firewall Port 8183 muss vom FHEM Server aus erreichbar sein

Betriebssystem

Folgende Betriebssysteme wurden schon erfolgreich damit betrieben:

  • Windows Server 2012 R2
  • Windows 10 (Aldi Tablet)
  • Windows 10 Pro (Surface Pro 2017)
  • Windows 10 Home
  • Windows RT 8.1 (Im Testmodus)

Grundkonfiguration

Definition in FHEM

Zum Anlegen des Windows PCs können folgende Definitionen verwendet werden:

define <name> WINCONNECT 192.168.0.10

Standardmäßig prüft der FHEM Server alle 45 Sekunden ob der Windows PC noch erreichbar ist. Dieser Intervall kann wie folgt, z.B. auf 60 Sekunden, geändert werden:

define <name> WINCONNECT 192.168.0.10 60

Installation Windows GUI

Damit der FHEM Server Windows steuern kann, wird auf dem PC WinConnect(GUI) benötigt. Folgende Schritte sind hierfür nötig:

  • Verzeichnis anlegen z.B. "C:\Daten\FHEM\WinConnect"
  • Die heruntergeladene Datei in das Verzeichnis legen und in "WinControl.exe" umbenennen
  • WinControl.exe starten

Nachdem die GUI gestartet wurde kann die Anbindung an den FHEM Server wie folgt konfiguriert werden:

WinConnect FHEM Configuration.png

Name Beispielwert Beschreibung
FHEM IP Adresse fhem_server.home.int Hier kann eine IP-Adresse, Netbiosname oder der FQDN des Servers angegeben werden.
FHEM Port 443 Hier muss der Port des FHEM Servers angegeben werden. Hier im Beispiel wird ein SSL Port verwendet
FHEM Url fhem In einer FHEM Standardumgebung wird hier immer "fhem" verwendet
FHEM Benutzer admin Benutzernamen des FHEM Server
FHEM Kennwort ********* Kennwort des FHEM Server
FHEM SSL aktiviert Wenn dies Option aktiviert ist, findet der Zugriff auf den FHEM Server über HTTPS statt.
SSL Protokolle TLSv12 Wenn SSL aktiviert wurde, muss hier noch das Protokoll aktiviert werden. Standardmäßig sind immer alle aktiv.
SSL Warnung deaktivieren aktiviert Bei selbst erstellten Zertifikaten oder Zertifikaten, die nicht zur URL passen, kommt in der Regel ein Sicherheitshinweis. Damit sich die GUI trotzdem mit dem FHEM Server verbindet, muss dann diese Option aktiviert werden.

Nach erfolgreicher Konfiguration, muss diese noch mit dem Speicherbutton gespeichert werden. Danach sollte sich die GUI wie folgt zeigen

WinConnect FHEM Status.png

Programm Icon

Am Programm Icon lässt sich der Status bezüglich FHEM Verbindung erkennen.

Icon Status Beschreibung
WinConnect FHEM connected.png Verbindung hergestellt, FHEM Device vorhanden Mit dem blauen Icon wird angezeigt, dass die Verbindung zum FHEM Server hergestellt wurde, und das angegeben FHEM Device auch vorhanden ist
WinConnect FHEM disconnected.png Verbindung nicht hergestellt Mit dem roten Icon wird angezeigt, dass die Verbindung zum FHEM Server nicht hergestellt werden konnte
WinConnect FHEM nodevice.png Verbindung hergestellt, FHEM Device nicht vorhanden (nicht gefunden) Mit dem gelben Icon wird angezeigt, dass die Verbindung zum FHEM Server hergestellt wurde, aber das angegebene FHEM Device wurde auf dem FHEM Server nicht gefunden

Weitere Konfiguration

GUI Optionen

Hier können einige Optionen gesetzt werde, die den Start der GUI beeinflussen.

WinConnect FHEM Configuration Optionen.png

Name Beispielwert Beschreibung
Startscreen verstecken aktiviert WinConnect FHEM Startscreen.png Bei jedem GUI Start wird der Startscreen angezeigt. Dieser kann durch Aktivieren dieser Einstellung deaktiviert werden.
Mit Windows starten aktiviert Durch Aktivieren dieser Einstellung wird die GUI beim Starten von Windows direkt nach der Anmeldung gestartet.
  • Beachte Probleme bekannte BUGs
Ausführen Normales Fenster Hier kann festgelegt werden, wie die GUI beim Start erscheinen soll. Folgende Auswahl ist hier möglich:
  • Normales Fenster = GUI wird ganz normal angezeigt
  • Minimiert = GUI wird minimiert gestartet und kann über das Notifyicon oder ALT-TAB aktiviert werden
  • Versteckt = GUI wird versteckt gestartet und kann nur über das Notifyicon aktiviert werden
Debugmode deaktiviert Durch aktivieren dieser Einstellung werden mehr Informationen im GUI Log abgelegt. Diese Option sollte nur zur Fehleranalyse verwendet werden.

Audio

Spracherkennung

Hier kann aktuell nichts eingestellt werden. Dieses Register ist rein informativ.

WinConnect Audio Spracherkennung.png

Beschreibung Bereich Information:

Punkt Beschreibung
speech state Hier wird angezeigt ob die Spracherkennung aktiv/inaktiv ist
speechmessage Hier wird das zuletzt erkannte Sprachkommando angezeigt
speechqualität in % Hier wird die Qualität des zuletzt erkannten Sprachkommandos angezeigt. Je höher dieser Wert ist, um so besser ist die Erkennung
speechquality Hier wird die Qualität in % angezeigt mit welchem ein Sprachkommando erkannt werden muss damit dies auch akzeptiert wird. Die Qualität kann über ein set <name> speechquality [NUMERIC] festgelegt werden

Beschreibung Bereich ERROR:

Punkt Beschreibung
speechmessage Hier wird das zuletzt erkannte Sprachkommando angezeigt, welches nicht die Anforderung der Qualität entspricht
speechqualität in % Hier wird die Qualität in % angezeigt mit welchem das nicht akzeptierte Sprachkommando erkannt wurde

Damit die Spracherkennung funktioniert, sollte das Mikrofon so konfiguriert werden, dass es sich nicht automatisch anpasst. (siehe Screenshot)

WinConnect Audio Spracherkennung Format.png

Hierfür müssen zwei Konfigurationshaken entfernt werden.

Mikrofon

Hier kann das Erkennen eines Mikrofon-Peaks aktiviert werden.

WinConnect Audio Mikrofon.png

Punkt Beschreibung
Autodetect Durch Aktivieren der Checkbox, wird das Mikrofon und die Erkennung aktiviert.
% Detect Changes > Hier kann die Empfindlichkeit der Erkennung in % angegeben werden. Ist der Ausschlag größer als der angegebene Wert wird das FHEM Reading "microphone_detect" auf "true" gesetzt. Ist der Wert kleiner wird das Reading auf "false" gesetzt.

Kamera

Damit die Funktionen Snapshot und Motion benutzt werden können, muss an dem Windows PC eine Kamera angeschlossen sein. Wenn die Kamera in der GUI erkannt wurde, kann diese wie folgt konfiguriert werden:

WinConnect Kamera Allgemein.png

Punkt Beschreibung
Erstes Combobox Hier kann die Kamera ausgewählt werden welche verwendet werden soll
Zweite Combobox Hier kann die verwendete Auflösung der Kamera ausgewählt werden
FPS Hier kann die FPS festgelegt werden mit welcher die Kameras das Video im Fenster/Vollbild anzeigt
Delay Hier kann ein Delay festgelegt werden um ein Snapshot zu verzögern. Bei einigen USB Kameras wird dies benötigt, da es hier vorkommen kann das nur schwarze Bilder aufgenommen werden.
Button Je nach Zustand wird die Beschriftung des Buttons geändert.
  • Connect = Kamera ist nicht aktiv (Beim Drücken wird Kamera aktiviert)
  • Disconnect = Kamera ist aktiv (Beim Drücken wird Kamera deaktiviert)

Snapshot

Hier kann über die GUI ein Snapshot der Kamera erzeugt werden. Grundvoraussetzung ist, dass die Kamera und der Ablageort der Bilder konfiguriert wurden.

WinConnect Kamera Snapshot.png

Punkt Beschreibung
Große Bildbox Hier zeigt die Kamera Ihr aktuelles Videobild
Kleine Bildbox Hier wird der zuletzt erzeugte Snapshot angezeigt
Saved As Hier wird der Dateiname des zuletzt erzeugten Snapshot angezeigt
Image Size Hier wird die Auflösung des zuletzt erzeugten Snapshot angezeigt
Button Hier kann ein Snapshot erstellt werden.

Motion

Hier kann die Bewegungserkennung konfiguriert werden.

WinConnect Kamera Motion.png

Beschreibung Bildboxen

Bildbox Beschreibung
1. Bildbox Hier wird der erste Snapshot angezeigt
2. Bildbox Hier wird der zweite Snapshot angezeigt
3. Bildbox Hier wird die Differenz der beiden Snapshots angezeigt
Changes in % Hier wird die Differenz der beiden Snapshots in % angezeigt
Time Hier wird die Zeit in Millisekunden angezeigt, welche der PC zum Berechnen der Differenz benötig.

Über die zusätzliche Parameter kann die Erkennung und die Bearbeitungszeit zum Erkennen der Differenz verändert werden.

Beschreibung zusätzliche Parameter

Bildbox Beschreibung
Farb dif. Beim Vergleich wird jedes Pixel einzeln verglichen. Hier ist der Farbwert das Entscheidende. Da die Kameras, in der Regel, ein Rauschen produzieren, kannst man hier nicht exakt vergleichen. Aus diesem Grund kann hier angegeben werden, bis zu welcher Abweichung von der gleichen Farbe ausgegangen wird. Je besser die Kamera ist, um so kleiner kann der Wert hier sein. Zum Testen kannst man den Wert um jeweils 100000 erhöhen oder verringern. Durch Ändern dieser Option wird die Verarbeitung nicht beschleunigt!
Qualität Der Begriff Qualität ist eigentlich falsch (eventuell fällt Euch ein besserer Begriff ein! Hier kann man die Anzahlt der verworfenen Linien in der x und y Achse einstellen. Dass Bedeutet, wenn der Wert 1 ist wird immer eine Zeile in der x und y Achse nicht ausgewertet. Beim Wert 2 werden immer zwei Zeilen verworfen, usw..... Diese Option wirkt sich auf die Geschwindigkeit zum Ermitteln der Differenz aus. Gleichzeitig verringert sich aber auch die Genauigkeit.
Alle x Sekunden Hier wird definiert in welchem zeitlichen Abstand die Bewegungserkennung durchgeführt wird. Je kürzer der Abstand, umso stärker wird das System belastet. Hier müsst Ihr Euch auch an dem Wert für die benötigte Berechnung orientieren. Wenn hier z.B. schon über 2000 msek. benötigt werden, würde ich den Wert nicht auf 1 Stellen.
Autodetect Wenn diese Option aktiviert ist, startet die Bewegungserkennung direkt nach dem Start der GUI.
Detect Changes Hier kann eingestellt werden ab wie viel % eine Bewegung erkannt wurde. Dies wird dann in dem FHEM Reading "motion_detect" mit dem Wert "True" festgehalten.
Save Picture Hier kann eingestellt werden ob bei einer Bewegungserkennung auch ein Bild abgelegt werden soll. Die Bilder werden dann in dem Verzeichnis abgelegt das Ihr über das Reading "picture_dir" gesetzt habt.
Button Hier ist es möglich die Bewegungserkennung manuell zu starten oder zu stoppen

System

Checkperformance

Je Counter wird im Bereich "Checkperformance" eine Zeile benötigt. Dabei ist wichtig, dass hier nur englische Begriffe verwendet werden. Anbei zwei Beispiele:

CPU_Time;Processor;% Processor Time;_Total

DISK_Bytes;PhysicalDisk;Disk Bytes/sec;_Total


Eine genauere Anleitung folgt noch!


Clock - Under Construction.svg An dieser Seite wird momentan noch gearbeitet.


Core Temp

Damit in FHEM Werte der CPU Temperatur angezeigt werden können, muss auf dem Windows PC noch die Software "Core Temp" installiert sein. Diese könnt Ihr hier vom Hersteller herunterladen. Damit die GUI die Daten auch in FHEM schreiben kann, muss die Software ausgeführt sein.

Standardmäßig wird alle 45 Sekunden, bei einer Änderung, die Temperatur übertragen. Dieser Intervall kann mit dem Reading "checkperformance_interval" angepasst werden.

Wichtig!! Die Software muss in den Standardpfad "%ProgramFiles%\Core Temp" installiert sein, damit die GUI diese auch findet. Wenn alles richtig installiert wurde sieht das in der GUI wie folg aus:

WinConnect FHEM CoreTemp.png

user_aktiv

Hier kann aktuell nichts eingestellt werden. Dieses Register ist rein informativ .

WinConnect useraktiv.png

Punkt Beschreibung
Idle Time Hier wird die Zeit in Sekunden angezeigt, welche die Zeitspanne anzeigt, ab wann das System das Reading "user_aktiv" auf false setzt
Detect last action Hier wird die letzte Aktion angezeigt, die das Reading "user_aktiv" auf true gesetzt hat

WMI

Hier gibt es die Möglichkeit WMI Abfragen einzurichten und die Ergebnisse als FHEM Reading darzustellen. Die WMI Anfragen können nur in der GUI angelegt und konfiguriert werden.

WinConnect WMI.png

Beschreibung der Menüleiste: Die Beschreibung der Menüleiste geht von links nach rechts.

  • Button zum Speichern der Änderungen (Muss bei jeder Änderung verwendet werden)
  • Button zum erneuten Einlesen der WMI Abfragen (Kann verwendet werden, wenn man die aktuell Änderungen speichert möchte. Dadurch wird der alte Zustand wiederhergestellt.)
  • Button zum Starten des WMI Wizard (Beschreibung siehe weiter unten)
  • Button zum Löschen der aktuell markierten WMI Abfrage
  • Button zum Testen der aktuell ausgewählten WMI Abfrage (Ergebnis siehe Messagebox)

Alle konfigurierten WMI Abfragen werden in der Tabelle angezeigt. Hier ist auch eine manuell Anpassung möglich. Hierfür einfach eine Zelle doppelt klicken und den Wert dementsprechend ändern. Achtung! Speichern danach nicht vergessen.

Beschreibung der Tabelle:

Spaltenname Beschreibung
Aktiv Nur WMI-Abfragen die hier aktiviert sind werden abgefragt und als FHEM Reading dargestellt
Ergebnis Hier erscheint das letzte Ergebnis der WMI-Abfrage (Nur wenn die Checkbox Aktiv aktiviert ist!)
Namespace Hier ist der WMI Namespace angegeben, welcher für die Abfrage verwendet wird
Reading-Name Hier wird das FHEM Reading angegeben, in welchem das Ergebnis der WMI Abfrage angezeigt wird. ACHTUNG!! Hier muss darauf geachtet werden, dass das FHEM Reading nur einmal vorkommt. Wenn Ihr ein FHEM Reading zweimal verwendet, kann immer nur eines gewinnen. Jedes FHEM Reading erhält noch das Präfix "wmi_"
WMI-Wert Hier wird das WMI Propertie von der WMI Abfrage angegeben.
WMI-Query Hier wird die eigentliche WMI Abfrage angegeben.

Jeder Zeiler der Tabelle wird dann in der GUI in folgende WMI Query übersetzt, mit welcher der [NAMESPACE] abgefragt wird.

[ERGEBNIS] = select [WMI-Wert] from [WMI-Query]

Für die Grundkonfiguration der WMI Abfrage kann der integrierte WMI Wizard benutzt werden. Dieser ist über die Menüleiste abrufbar.

Beschreibung des WMI Wizard

Die Wichtigen Punkt sind im Screenshot mit Nummern markiert.

WinConnect WMI RunQuery.png

Punkt Beschreibung
1 Wert der z.B. abgefragt werden soll
2 Hier werden alle WMI Namespaces des PCs aufgelistet
3 Hier werden alle WMI Klassen des ausgewählten WMI Namespaces aufgelistet
4 Starten einer WMI Abfrage
5 Hier werden alle WMI Properties der ausgewählten Klasse aufgelistet
6 In diesem Bereich werden die WMI Informationen der gesamten Klasse aufgelistet. Die zwei blau markierten Bereich dienen später als WMI Filter
7 Hier kann getestet werden ob die ausgewählte WMI Abfrage auch den entsprechenden Wert zurückliefert
8 Hier wird das Ergebnis vom Punkt 7 angezeigt. Mit der Auswahl "Ja" wird die WMI Abfrage übernommen und das Fenster wieder geschlossen

Wie kann man eine neue WMI abfrage hinzufügen?

  • Den markierten Wert[1] (Value=40) wollen wir in FHEM als Reading hinzufügen
  • Namespace root\OpenHardwareMonitor[2] auswählen
  • Classes Sensor[3] auswählen
  • Button Query[4] drücken, danach sollte im unteren Bereich eine Tabelle mit allen werten aus dieser Klasse erscheinen
  • WMI-Wert Value[5] auswählen (Das ist die Spalte wo unser Wert steht)
  • Da die Tabelle mehrere Zeilen beinhaltet müsst Ihr hier weitere Filter setzen. Das erreichst Ihr in dem Ihr eine oder mehrere Zellen markiert. z.B. (GPU Fan)[6] und (/nvidiagpu/0)[6]
  • Danach könnt Ihr über den Button Test[7] testen ob die Auswahl so passt
  • Das Ergebnis wird Euch in einer Messagebox angezeigt. Mit ja[8] könnt Ihr dann das ganze übernehmen.

Spezial Konfiguration

Bei den SET Befehlen ttsmsg, messagebox, und picture_make kann, bevor die Aktion ausgeführt wird, eine WAV Datei abgespielt werden. Hierzu ist es nötig in das Verzeichnis, in welchem die WinControl.exe liegt, zusätzlich die Dateien ttsmsg.wav, messagebox.wav und picture.wav zu legen.

ACHTUNG!! Die WAV Dateien für ttsmsg und messagebox werden erst in voller Länge abgespielt, bevor die Aktion ausgeführt wird!

FHEM Device

Attribute

Name Mögliche Werte Beschreibung
autoupdategitlab
  • 0 = Automatischer Download deaktiviert
  • 1 = Automatischer Download der WinConnect.exe
Das WINCONNECT Modul läd standardmäßig die aktuelle WinControl.exe vom entsprechenden gitlab herunter. Dies kann über diese Attribut verhindert werden
disable
  • 0 = FHEM Device aktiv
  • 1 = FHEM Device deaktiviert
Über dieses Attribut kann das FHEM Device deaktiviert werden.
volumeStep [NUMERIC] Über dieses Attribut kann die Schrittweite für den Aufruf von volumeUp und volumeDown definiert werden
win_resetreadings
  • 0 = Readings nicht zurücksetzen wenn Offline / Reading zeigt den zuletzt gesendeten Wert
  • 1 = Readings zurücksetzen wenn Offline
Über dieses Attribut kann gesteuert werden ob die Readings (os_RunTime_days, os_RunTime_hours, os_RunTime_minutes, printer_aktiv und printer_names), wenn der PC Offline ist, zurückgesetzt werden sollen.

Set

Name Mögliche Werte Beschreibung
brightness [NUMERIC] Hier kann die Bildschirm Helligkeit geändert werden. Bereich 0 bis 100
camera
  • on = Kamera wird im Vollbildmodus gestartet
  • off = Kamera wird beendet
Hier wird das Kamerabild in Großformat angezeigt. Das funktioniert auch mit eingeschaltetem Motion Detect!
checkperformance [STRING] Hier können Windows Performance Counter überwacht werden. Je Zeile kann ein Counter überwacht werden.
checkperformance_interval [NUMERIC] Hier kann der Intervall für die Performance Überwachung angegeben werden
checkprocess [STRING] Hier können Windows Prozesse überwacht werden. Mehrere Prozesse werden über das Trennzeichen ; getrennt eingetragen z.b. explorer.exe;chrome.exe
checkservice [STRING] Hier können Windows Dienste überwacht werden. Mehrere Dienste werden über das Trennzeichen ; getrennt eingetragen. Hier den Dienstnamen verwenden. z.b. netlogon;dhcp (Eigenschaften des Dienstes und dort den Dienstnamen)
command [STRING] Hier können Programme auf dem PC ausgeführt werden. z.b. "notepad.exe c:\info.txt"
commandhide [STRING] siehe "command" Beim Verwenden von commandhide wird das ausgeführte Programm versteckt.
file_dir [STRING] Hier kann ein Verzeichnis angegeben werden welches überwacht werden soll. Das Ergebnis wird dann über die zwei Readings "file_name" und "file_fullname" angezeigt
file_filter [STRING] Durch das Setzen des Filters kann die Anzeige der gefunden Dateien geändert werden. Folgende Filter können hier gesetzt werden:
  • *.* oder Leer = Alle Dateien (default)
  • *.txt = Dateie mit der Endung .txt
  • *rechnung.doc = Dateie mit der Endung rechnung.doc
  • win*.xml = Dateie die mit win anfängt und eine Endung xml hat
  • Rechnung*200?.xls = Dateie die mit Rechnung anfängt und aus den Jahren 2000 bis 2009 sind und mit der Endung xls enden.
  • Rechnung.doc = Nur Datei die genau Rechnung.doc heißt
file_order
  • ascending = älteste Datei wird angezeit
  • descending = neueste Datei wird angezeigt
Hier kann die Sortierreihenfolge angepasst werden
messagebox [STRING] Hier kann ein Text in einer Messagebox am PC angezeigt werden
mute
  • on = Lautsprecher ist Stumm
  • off = Lautsprecher ist nicht Stumm
Hier kann der Lautsprecher Stumm geschalten werden
notifymsg [STRING] Hier kann ein Text als Notify Nachricht (Icon in der Infobar) am PC angezeigt werden
picture_dir [STRING] Hier kann der Ablagepfad der Bilder festegelegt werden. Diese Verzeichnis wird für picture make und motion detect verwendet.
picture_make [NULL] Hier wird ein Bilder der Kamera erzeugt. Das funktioniert auch mit eingeschaltetem motion detect!
Powermode
  • shutdown = Windows wird normal heruntergefahren
  • restart = Windows wird neu gestartet
  • standby = Windows wird in den Ruhezustand gefahren (Suspend-to-RAM)
  • hibernate = Windows wird in den Ruhezustand gefahren (Suspend-to-DISK) / Wenn das System hibernate nicht unterstützt macht er automatisch wieder (Suspend-to-RAM)
Hiermit kann der PC in folgende Zustände versetzt werden
screenOff [NULL] Hier kann kann der Bildschirm abgeschalten werden
ScreenOn [NULL] Hier kann kann der Bildschirm wieder angeschalten werden
showfile [STRING] Hier können Dateien angezeigt werden. Anhand der Dateiendung wird dann das Standardprogramm des PC´s aufgerufen z.B. "C:\Bild.jpg"
speechcommands [STRING] Hier können Sprachkommandos hinterlegt werden, auf welche das System reagiert. Mehrere Befehle werden durch ein ";" getrennt.
speechquality [NUMERIC] Hier kann die Qualität der Spracherkennung definiert werden. Bei meinem Windows RT Tablet hat sich der Wert 70 als ganz brauchbar erwiesen. Über die GUI kann der optimale Wert ermittelt werden.
statsuRequest [NULL] Hier übermittelt die GUI alle Readings
ttsmsg [STRING] Text wird auf dem PC gesprochen (Soundkarte wird benötigt)
update [NULL] Hier kann ein manuelles GUI Update gestartet werden.
user_aktividletime [NUMERIC] Hier kann die Zeit in Sekunden eingestellt werden, mit der bestimmt wird, ab wann ein PC keine aktive Benutzereingabe mehr erkannt hat
volume [NUMERIC] Hier kann die Lautstärke geändert werden. Bereich 0 bis 100
volumeDown [NULL] Hier kann die Lautstärke um einen bestimmten Wert verringern werden (siehe Attribut volumeStep)
volumeUp [NULL] Hier kann die Lautstärke um einen bestimmten Wert erhöht werden (siehe Attribut volumeStep)

Readings

Name Mögliche Werte Beschreibung
audio
  • on = Audio wird auf dem PC abgespielt
  • off = keine Audioausgabe
Hier wird angezeigt ob der Windows PC gerade Sound abspielt
audio_devicename [STRING] Hier wird der Name des Gerätes angezeigt, welcher für die Audio Erkennung verwendet wird
battery_ChargeStatus
  • Charging = Gibt an dass die Batterie gerade geladen wird
  • Critical = Ladezustand der Batterie kritisch
  • High = Ladezustand der Batterie hoch
  • Middle = Ladezustand der Batterie mittel
  • Low = Ladezustand der Batterie gering
  • NoSystemBattery = Gibt an dass kein Akku vorhanden ist
  • Unknown = Gibt eine unbekannte Ladezustand der Batterie an
Hier wird der aktuelle Ladezustand der Batterie angezeigt
battery_LifePercent [NUMERIC] Hier wird der Batterieladung in % angezeigt
battery_LifeRemainingsMin [NUMERIC] Hier wird die ungefähre verbleibende Akkulebensdauer in Minuten angezeigt
battery_PowerLineStatus
  • online = Stromversorgung ist angeschlossen
  • offline = Stromversorgung ist nicht angeschlossen
Hier wird der Status der Stromversorgung angezeigt
bios_* [STRING] Hier werden die Bios Informationen in den jeweiligen bios_* Readings angezeigt.
brightness [NUMERIC] Hier wird die Helligkeit in % angezeigt. Der Wert 200 bedeutet, dass das Ändern der Helligkeit nicht unterstütz wird. z.B. RDP Sitzung
checkperformance [STRING] Hier werden die Performancecounter angezeigt welche die GUI überwacht.
checkprocess [STRING] Hier werden die Prozesse angezeigt, welche die GUI überwacht
checkservice [STRING] Hier werden die Windowsdienste angezeigt, welche die GUI überwacht
core_temp_X_X_temperature [NUMERIC] Hier wird die CPU Temperatur angezeigt. Das erste X steht für die Nummer der physikalischen CPU. Das zweite X steht für die Nummer des jeweiligen Kernes.
core_temp_cors_per_CPU [NUMERIC] Hier wird die Anzahl der jeweiligen Kerne der physikalischen CPU angezeigt
core_temp_name [STRING] Hier wird der Name der CPU angezeigt
core_temp_physical_CPUs [NUMERIC] Hier wird die Anzahl der verfügbaren physikalischen CPUs angezeigt
core_temp_state
  • not_installed = Software "Core Temp" ist auf dem System nicht installiert
  • present = Software "Core Temp" ist auf dem System installiert und liefert Daten
  • absent = Software "Core Temp" ist auf dem System installiert und liefert aber keine Daten
Hier wird angezeigt, ob die Software "Core Temp" auf dem System installiert ist, und auch dementsprechend Daten liefert
core_temp_temperaturtyp
  • celsius = Temperatur Werte werden in Celsius angezeigt
  • fahrenheit = Temperatur Werte werden in Fahrenheit angezeigt
Hier wird angezeigt in welcher Einheit die Temperaturwerte dargestellt werden. Diese Einstellung kann in der Software "Core Temp" angepasst werden
cpu_X_mhz [NUMERIC] Hier wird die Geschwindigkeit der CPU angezeigt. Das X steht für die jeweilige CPU Nummer
cpu_X_name [STRING] Hier wird der Name der CPU angezeigt. Das X steht für die jeweilige CPU Nummer
drive_X_xxxxxx Dient nur der Beschreibung der drive_X_..... Readings weiter unten
  • X = Laufwerksbuchstabe
  • xxxxxx = Beschreibung
drive_X_Format
  • FAT
  • NTFS
  • usw.
Dateiformat des Laufwerkes
drive_X_Label [String] Beschriftung des Laufwerkes
drive_X_Space_AvailableFree [Numeric] Freier Speicher in MB
drive_X_Space_Total [Numeric] Gesamter Speicher in MB / Änderungen werden nur erkannt wenn diese größer 10MB sind!
drive_X_Space_Used [Numeric] Benutzter Speicher in MB / Änderungen werden nur erkannt wenn diese größer 10MB sind!
drive_X_Space_Type [String] Typ des Speichers z.B. Fixed(lokale HDD)/Network/CDRom usw..
file_dir [String] Hier wird das Verzeichnis angezeigt, welches die GUI überwacht
file_filter [String] Hier wird der Datei Filter angezeigt, welcher bei der Überwachung verwendet wird
file_fullname [String] Hier wird die gefundene Datei inkl. Dateipfad angezeigt
file_name [String] Hier wird der Datei Name ohne Dateipfad angezeigt
file_order [String] Hier wird die Sortierung angezeigt, welche bei der Überwachung verwendet wird
memory_available [Numeric] Hier wird der noch verfügbare Arbeitsspeicher in MB angezeigt
memory_total [Numeric] Hier wird die Größe des erkannten Arbeitsspeichers in MB angezeigt
messagebox [String] Hier wird die zuletzt verwendete Messagbox Nachricht am PC angezeigt
microphone_detect
  • True = Wenn das Mikrofon einen bestimmten Peak erkennt wird der Wert auf true gesetzt.
  • False = Wenn länger als zwei Sekunden keine Peak mehr erfolgte
Hier wird angezeigt ob der Windows PC eine Änderung über das Mikrofon feststellt / Schwellwerte können über die GUI eingestellt werden
microphone_devicename [String] Hier wird der Name des erkannten Mikrofons angezeigt
model [String] Hier wird der Name des erkannten Betriebssystem angezeigt z.B. Windows 10 Home
motion_autodetect
  • True = Motion Erkennung wird beim Start der GUI automatisch gestartet
  • False = Motion Erkennung wird beim Start der GUI nicht automatisch gestartet
Hier wird angezeigt ob der Windows PC automatisch beim GUI Start die Motion Erkennung aktiviert.
motion_detect
  • True = Wenn die Kamera bei eingeschalteten Moniton eine Bewegung erkennt die % technisch höher ausfällt als der eingestellte Wert in der GUI
  • False = Wenn die Kamera bei eingeschalteten Moniton keine Bewegung erkennt! Bewegung ist % technisch kleiner als der eingestellte Wert in der GUI
Hier wird angezeigt ob der Windows PC eine Änderung über die Kamera feststellt / Schwellwerte können über die GUI eingestellt werden
motion_last_picture [String] Hier wird das zuletzt abgespeicherte Bild angezeigt. Das gespeicherte Bild ist im Verzeichnis des Readings "picture_dir" zu finden.
mute
  • True = Lautsprecher ist Stumm
  • False = Lautsprecher ist nicht Stumm
Hier wird angezeigt, ob der Lautsprecher Stumm geschalten wurde, oder nicht
notifymsg [String] Hier wird die zuletzt verwendete Notify Nachricht(Icon in der Infobar) am PC angezeigt
os_Domainname [String] Hier wird der Name der Domainname des PC angezeicht, in welcher er sich befindet. Ist der PC in keiner Domain dann wird der Computername hier angezeigt
os_Hostname [String] Hier wird der Computername angezeigt
os_InstallDate [String] Hier wird das Datum und die Uhrzeit des Installationszeitpunktes von Windows angezeigt
os_Name [String] Hier wird der Name des erkannten Betriebssystem angezeigt z.B. Windows 10 Home
os_RunTime_days [Numeric] Hier wird die Laufzeit in Tagen angezeigt. Bei einer Laufzeit von 23 Stunden und 59 Minuten wird hier eine 0 angezeigt
os_RunTime_hours [Numeric] Hier wird die Laufzeit in Stunden angezeigt. Bei einer Laufzeit von einer Stunde und 59 Minuten wird hier eine 1 angezeigt
os_RunTime_minutes [Numeric] Hier wird die Laufzeit in Minuten angezeigt.
os_StartTime [String] Hier wird das Datum und die Uhrzeit von Windowsstart angezeigt
os_Type [String] Hier wird der Typ des Betriebssystems angezeigt z.B. Server oder Client
os_Username [String] Hier wird der Benutzername angezeigt, mit welchem die WinControl.exe gestartet wurde
os_Version [String] Hier wird die Versionsnummer des Betriebssystems angezeigt
picture_dir [String] Hier wird das Verzeichnis angegeben, in welchem Snapshots und Bilder der Bewegungserkennung abgelegt werden.
printer_aktiv
  • True = Ein Drucker ist gerade aktiv
  • False = Kein Drucker ist gerade aktiv
Hier wird angezeigt, ob der Windows PC gerade druckt
printer_names [String] Hier werden die Drucker angezeigt, welche aktuell auf dem System drucken
process_* [String] Hier werden die Windows Prozess Informationen in den jeweiligen Readings angezeigt
service_* [String] Hier werden die Windows Dienst Informationen in den jeweiligen Readings angezeigt
speechcommands [String] Hier werden die verfügbaren Sprachkommandos angezeigt
speechcontrol
  • on = Spracherkennung aktiviert
  • off= Spracherkennung nicht aktiviert
Hier wird angezeigt, ob die Spracherkennung aktiv ist
speecherrormessage [String] Hier wird das zuletzt erkannte Sprachkommando angezeigt welches nicht die Anforderung der Qualität entspricht
speecherrormessagequality [String] Hier wird die Qualität in % angezeigt, mit welchem das nicht akzeptierte Sprachkommando erkannt wurde
speechmessage [String] Hier wird das zuletzt erkannte Sprachkommando angezeigt
speechmessagequality [String] Hier wird die Qualität des zuletzt erkannten Sprachkommandos angezeigt. Je höher dieser Wert um so besser ist die Erkennung
speechquality [String] Hier wird die Qualität in % angezeigt mit welchem ein Sprachkommando erkannt werden muss, damit dies auch akzeptiert wird
state
  • on = GUI ist auf dem PC aktiv
  • off= GUI ist auf dem PC nicht aktiv
Hier wird angezeigt ob die GUI auf dem Windows PC läuft.
ttsmsg [String] Hier wird die zuletzt verwendete Sprachnachricht am PC angezeigt
user_aktiv
  • True = Benutzer macht Eingaben über Tastatur & Maus
  • False = Wenn länger als user_aktividletime keine Eingaben über Tastatur & Maus erfolgt
Hier wird angezeigt ob der Windows PC innerhalb der gesetzten [user_aktividletime] eine Eingabe via Maus oder Tastatur stattgefunden hat
user_aktividletime [Numeric] Hier wird die Zeit in Sekunden angezeigt, welche die Zeitspanne anzeigt, wenn das System das Reading "user_aktiv" auf false setzt.
volume [Numeric] Hier wird die Lautstärke in % angezeigt
wincontrol [String] Hier wird die Versionsnummer der aktiven GUI angezeigt
wincontrol_gitlab [String] Hier wird die Versionsnummer der GUI auf dem gitlab angezeigt
wincontrol_gitlab_url [String] Hier wird der Donwloadpfad der GUI auf dem gitlab angezeigt
wincontrol_starttime [String] Hier wird das Startdatum und die Startzeit der GUI angezeigt
wincontrol_update [String] Hier wird die Update Information der GUI angezeigt
wincontrol_user [String] Hier wird der Benutzername angezeigt mit welchem die GUI gestartet wurde.
wmi_* [String] Hier werden die WMI Informationen in den jeweiligen Readings angezeigt

Probleme

Support Informationen

Support- und Problemfragen bitte immer im Forum. Über die Menüleiste kann man weiterführende Supportinformationen anzeigen lassen. Diese werden dann im Forums Format dargestellt und können für einen Threadeintrag verwendet werden.

WinConnect FHEM SupportButton.png

Folgende Daten werden hier gesammelt:

  • Allgemeine System Informationen
  • Die ersten und die letzten 50 Zeilen des GUI Logs
  • GUI Registry Informationen HKEY_CURRENT_USER\Software\Michael Winkler\WinControl
  • FHEM Device Infolist

WinConnect FHEM SupportInformationen.png

Folgende Aktionen können über die Buttons ausgeführt werden

Name Beschreibung
Aktualisieren Alle Daten werden erneut gesammelt und dargestellt
Zwischenablage Alle Daten werden in die Zwischenablage kopiert
Beenden Fenster wieder schließen

Log Informationen

Für die normalen Logeinträge gibt es in der GUI eine eigene Registerkarte. In diesem werden die zur Laufzeit generierten Logeinträge angezeigt.

WinConnect FHEM Log.png

Folgende Aktionen können über die Buttons ausgeführt werden

Name Beschreibung
Leeren Alle Daten werden aus dem Fenster geleert
Zwischenablage Alle Daten werden in die Zwischenablage kopiert

Weiterführende Informationen

Die Konfigurationsinformation der GUI werden in der Registry des Benutzer, der die GUI ausführt, abgelegt. Diese sind hier zu finden:

HKEY_CURRENT_USER\Software\Michael Winkler\WinControl

Im Programmverzeichnis liegen zwei LOG Dateiene

Name Beschreibung
wincontrol.log Diese LOG Datei wird zur Laufzeit der GUI verwendet. Hier sind die aktuellen LOG Einträge zu finden
wincontrol.log.bak Diese LOG Datei wird beim Starten der GUI erzeugt. Hier sind die LOG Einträge der letzten GUI Laufzeit enthalten.

Bekannte BUGs

GUI starte nicht automatisch mit Windows

Wenn nach der Aktivierung der Option "Mit Windows starten" die GUI nicht automatisch gestartet wird, und die Option nach dem Start der GUI wieder deaktiviert ist, kann das an folgenden Dingen liegen:

  • Keine Schreibberechtigung in der Registry unter HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
  • Aktivierte UAC
  • Sicherheitssoftware verhindert Änderung an der Registry

Damit die GUI automatisch mit Windows starte muss dann folgender Registrykey manuell angelegt werden:

Name Beschreibung
PFAD HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
Type REG_SZ (Zeichenfolge)
Name FHEM_Winconnect
Wert Dateipfad\WinControl.exe z.B. C:\Daten\FHEM\WinConnect\WinControl.exe

Virenscanner

Einige Antivirenprogramme scheinen die Anwendung zu blocken. Anbei eine Anleitung für den Avira Virenscanner (Danke für die Anleitung EnderPhilipp)

  1. Avira öffnen
  2. F8 drücken
  3. Beim Punkt "System-Scanner" auf das "+" klicken
  4. Auf das "+" bei „Suche“ klicken
  5. "Ausnahme" mit der Maus anwählen
  6. Dort auf die " ..." drauf klicken und den Pfad zur EXE angeben
  7. Mit der Maus "Hinzufügen" anwählen
  8. Das gleiche beim "Echtzeit-Scanner" wiederholen, der Pfad zur EXE muss in beiden Feldern (Prozesse und Dateiobjekte) angegeben werden
  9. Abschließend noch auf "Übernehmen" gehen
  10. Fertig !

Probleme mit screenOn / WLAN

Standardmäßig schalten sich ein Tablet automatisch in den Standbymodus beim ausschalten des Bildschirmes. Dasselbe kann auch passieren wenn sich der Sperrbildschirm aktiviert. Dieses Verhalten kann wie folgt geändert werden:

Unter: Alle Einstellungen -> Netzwerk und Internet -> WLAN -> Erweiterte Optionen habe ich "Dieser PC soll gefunden werden" aktiviert. Dann bleibt auch das WLAN an!

Sollte das bei Euch nicht funktionieren könnt Ihr auch folgenden Workaround ausführen (Infos im FHEM Forum)