WINCONNECT

Aus FHEMWiki


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


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.

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

Folgende Betriebssystem 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 ein Stück Software 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 in dem 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 die 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

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 angezeicht
  • 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

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


Mikrofon

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


Kamera

Snapshot

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


Motion

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


System

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.

Wichtig!! Die Software muss in den Standardpfad "%ProgramFiles%\Core Temp" installiert sein, damit die GUI diese auch findet.

user_aktiv

FHEM Device

Attribute

Name Mogliche 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 diese Attribut kann das FHEM Device deaktiviert werden.
win_resetreadings
  • 0 = Readings nicht zurücksetzen wenn Offline / Reading zeigt den zuletzt gesendeten Wert
  • 1 = Readings zurücksetzen wenn Offline
Über diese 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 Beschreibung
camera Hier wird das Kamerabild in Großformat angezeigt. Das funktioniert auch mit eingeschaltetem motion detect!
checkperformance Hier können Windowscounter überwacht werden. Je Zeile kann ein Counter überwacht werden.
checkprocess Hier können Windowsprozesse überwacht werden. Mehrere Prozesse werden über ; getrennt eingetragen z.b. explorer.exe;chrome.exe
checkservice Hier können Windowsdienste überwacht werden. Mehrere Dienste werden über ; getrennt eingetragen. Hier den Dienstnamen verwenden. z.b. netlogon;dhcp (Eigenschaften des Dienstest und dort den Dienstnamen)
command Hier können Programme auf dem PC ausgeführt werden. z.b. "notepad.exe c:\info.txt"
commandhide siehe "command" Beim Verwenden von commandhide wird das ausgeführte Programm versteckt.
file_dir 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_order Mögliche Werte (ascending/descending) ascending = älteste Datei descending = neueste Datei
file_filter 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
picture_dir Hier kann der Ablagepfad der Bilder festegelegt werden. Diese Verzeichnis wird für picture make und motion detect verwendet.
picture_make Hier wird ein Bilder der Kamera erzeugt. Das funktioniert auch mit eingeschaltetem motion detect!
Powermode Hiermit kann der PC in folgende Zustände versetzt werden
  • 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)
showfile Hier können Dateien angezeigt werden. Anhand der Dateiendung wird dann das Standardprogramm des PC´s aufgerufen z.B. "C:\Bild.jpg"
speechcommands Hier können Sprachkommandos hinterlegt werden, auf welche das System reagiert. Mehrere Befehle werden durch ein ";" getrennt.
speechquality 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 Windowsapp kann der optimale Wert ermittelt werden.
ttsmsg Text wird auf dem PC gesprochen (Soundkarte wird benötigt)
update Hier kann ein manuelles GUI Update gestartet werden.

Readings

Name Mogliche Werte Beschreibung
audio
  • on = Audio wird auf dem PC abgespielt
  • off = keine Audioausgabe
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 Sytsem installiert ist, und auch dementsprechend Daten liefert
core_temp_temperaturtyp
  • celsius = Temperature Werte werden in Celsius angezeigt
  • fahrenheit = Temperature 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
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..
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
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
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.
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

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)