Skip to content

Latest commit

 

History

History
238 lines (146 loc) · 11.5 KB

README.md

File metadata and controls

238 lines (146 loc) · 11.5 KB

IPSymconHarmony

Version Version

Modul für IP-Symcon ab Version 5. Ermöglicht die Kommunikation mit einem Logitech Harmony Hub und das Senden von Befehlen über den Logitech Harmony Hub.

Dokumentation

Inhaltsverzeichnis

  1. Funktionsumfang
  2. Voraussetzungen
  3. Installation
  4. Funktionsreferenz
  5. Anhang

1. Funktionsumfang

Mit Hilfe des Logitech Harmony Hub sind Geräte bedienbar, die sonst über IR-Fernbedienungen steuerbar sind oder auch neuere Geräte wie FireTV und AppleTV die über Bluetooth angesteuert werden. Nähere Informationen zu ansteuerbaren Geräten über den Logitech Harmony Hub unter Logitech Harmony Elite

Mit Hilfe des Moduls können die Geräte die im Logitech Harmony Hub hinterlegt sind in IP-Symcon importiert werden und dann von IP-Symcon über den Logitech Harmony Hub geschaltet werden. Harmony Aktivitäten können von IP-Symcon aus gestartet werden. Wenn der Harmony Hub eine Aktivität ausführt wird die aktuelle laufende Aktivität an IP-Symcon übermittelt.

IR Code Senden:

  • Senden eines IR Signals über den Logitech Harmony Hub an dem Hub bekannte Geräte

FireTV: (Bluetooth)

  • Senden von Befehlen an einen FireTV

Aktivität anzeigen:

  • Anzeige der momentanen aktiven Harmony Activity des Harmony Hub

Aktivität starten

  • Starten einen Harmony hub Aktivität

2. Voraussetzungen

  • IPS 5.x
  • Logitech Harmony Hub im gleichen Netzwerk wie IP-Symcon

3. Installation

a. Laden des Moduls

Die Webconsole von IP-Symcon mit http://:3777/console/ öffnen.

Anschließend den Objektbaum Öffnen.

Objektbaum

Die Instanz 'Modules' unterhalb von Kerninstanzen im Objektbaum von IP-Symcon (>=Ver. 5.x) mit einem Doppelklick öffnen und das Plus Zeichen drücken.

Modules

Plus

ModulURL

Im Feld die folgende URL eintragen und mit OK bestätigen:

git://github.com/Wolbolar/IPSymconHarmony.git 

b. Einrichtung in IPS

Wenn Skripte angelegt werden sollen werden diese unterhalb einer Kategorie abgelegt. Zunächst legen wir eine Kategorie im Objektbaum Rechte Maustaste -> Objekt hinzufügen -> Kategorie an, dieser geben wir einen beliebigen Namen wie z.B. Harmony Geräte. Unter dieser Kategorie werden später alle Skripte für Geräte des Logitech Harmony Hub angelegt werden.

Danach in IP-Symcon 5.x unter Splitter eine Instanz hinzufügen.

Add_Splitter

Hier nun als Hersteller Logitech eingeben und Logitech Harmony Hub auswählen.

Add Logitech Hub

Im dem sich öffnenden Fenster zunächst bei Erstinstallation folgende Dinge auswählen:

Logitech Hub 1

1. Slider auf Aktiv setzten. Dies ist notwenig damit die I/O Instanz später aktiv ist.

2. IP Adresse des Logitech Harmony Hub eintragen

3. Email Adresse (entspricht Anmeldename) für MyHarmony

5. Passwort für MyHarmony

6. Anschließend ÄNDERUNGEN ÜBERNEHMEN drücken.

Accept Changes

7. Konfiguration auslesen drücken und ein paar Sekunden abwarten.

Logitech Hub 2

8. Nachdem die Variable Harmony Config aktualisiert wurde auf Setup Harmony drücken, danach kann die Instanz geschlossen werden.

Anschließend wird ein Konfigurator anlegt.

Konfigurator 1

Konfigurator 2

Im Konfigurator steht jetzt folgendes zur Auswahl:

Konfigurator 3

  • Kategorie Harmony Skripte ist die Kategorie unter der Skripte angelegt werden
  • Harmony Variablen wenn nicht aktiv wird nur die Instanz angelegt, es können dann dennoch Skripte genutzt werden. Aktivieren um über Variablen im Webfront schalten zu können. Achtung! Bei vielen Geräten können viele Variablen verbraucht werden. Optional Wenn diese Option gewählt wird werden für jede Befehlsgruppe eines Logitech Harmony Geräts eine Variable zum Schalten aus dem Webfront angelegt. VORSICHT: Diese Option sollte nur gewählt werden wenn noch ausreichend Variablen in IP-Symcon verfügbar sind oder die Variablenanzahl unbegrenzt ist, da eine hohe Anzahl an Variablen je nach angelernten Geräten im Harmony Hub verbraucht werden kann. Es werden bei jedem Harmony Hub Gerät für jede im Harmony Hub hinterlegte Controllgroup eine Variable zum Schalten im Webfront angelegt. Hier können je nach Anzahl der im Harmony Hub konfigurierten Geräte eine hohe Anzahl an Variablen anfallen. Die Option ist für IP-Symcon Nutzer gedacht die noch genügend Variablen zur Verfügung haben und Befehle aus dem Webfront absetzten wollen.
  • Harmony Skript wenn dies aktiviert wird, wird für jede bereits angelegte Instanz mit Setup Harmony die zugehörigen Skripte angelegt. Optional Dies Option kann gewählt werden als Alternative oder Ergänzung zu Variablen. Es werden für jede im Harmony Hub hinterlegte Controllgroup eine Subkategorie mit Scripten angelegt. Das einzelne Script sendet dann denn jeweiligen Befehl (Skriptname) an den Logitech Harmony Hub.

Sollte etwas an der Konfiguration im Harmony Hub verändert worden sein ist Konfiguration auslesen zu drücken und nach einer Pause dann Liste aktualisieren. Im Konfigurator können nun einzelne Geräte ausgewählt werden und mit Erstellen wird das Gerät in IP-Symcon angelegt.

Konfigurator 4

Mit Setup Harmony wird für jedes in IP-Symcon angelegte Gerät abhänig von den Einstellungen (s.o.) Skripte angelegt, des Weiteren werden Skripte für die Aktivitäten erzeugt.

Im Webfront von IP-Symcon sieht das z.B. dann so aus: Webfront

Es lassen sich über das Webfront oder die Skripte dann Befehle absetzten. Die Aktivität wird im Webfront angezeigt. Sobald ein Gerät oder Harmony Fernbedienung eine Harmony Aktivität auslöst wird diese auch in IP-Symcon aktualisiert. Die aktuelle Aktivität wird in der Variable Harmony Activity, diese liegt unter dem Logitech Harmony Splitter, angezeigt. Es wird automatisch ein Link unter der oben gewählten Kategorie zu dieser Variable angelegt.

Die Variablennamen und die Bezeichnung der Befehle werden so angelegt wie diese von der Bezeichnung im Harmony Hub hinterlegt sind. Für jede angelegte Variable wird auch das Beschreibungsfeld genutzt, hier steht der eigentliche Befehl drinnen der an den Harmony Hub gesendet wird. Daher darf das Beschreibungsfeld der Variable nicht geändert werden. Die Bezeichnung der Variable sowie die Befehlsnamen die im Variablenprofile der Variable hinterlegt sind können individuell vom Nutzer angepasst werden. Dabei darf nur nicht die Reihenfolge im Variablenprofil verändert werden.

4. Funktionsreferenz

Logitech Harmony Hub:

Harmony Devices

Die Harmony Devices sind über den Konfigurator anzulegen An jedes Device kann ein Befehl geschickt werden

Liest die verfügbaren Funktionen des Geräts aus und gibt diese als Array aus

LHD_GetCommands(integer $InstanceID) 

Parameter $InstanceID ObjektID des Harmony Hub Geräts

Sendet einen Befehl an den Logitech Harmony Hub

LHD_Send(integer $InstanceID, string $Command)

Parameter $InstanceID ObjektID des Harmony Hub Geräts Parameter $Command Befehl der gesendet werden soll, verfügbare Befehle werden über LHD_GetCommands ausgelesen.

Harmony Hub

Es können Aktivitäten des Logitech Harmony Hub ausgeführt werden. Die aktuelle Akivität des Logitech Harmony Hub wird in der Variable Harmony Activity angezeigt und kann im Webfront geschaltet werden.

Wenn die Aktivität über Funktionen aktualisiert werden soll oder über ein Skript geschaltet sind die folgenden Funktionen zu benutzten: Fordert die aktuelle Aktivität des Logitech Harmony Hub an. Der Wert wird in die Variable Harmony Activity gesetzt.

HarmonyHub_getCurrentActivity(integer $InstanceID) 

Parameter $InstanceID ObjektID des Harmony Hub Splitters

Liest alle verfügbaren Aktivitäten des Logitech Harmony Hub aus und gibt einen Array zurück.

HarmonyHub_GetAvailableAcitivities(integer $InstanceID) 

Parameter $InstanceID ObjektID des Harmony Hub Splitters

Liest alle verfügbaren Device IDs des Logitech Harmony Hub aus und gibt einen Array zurück.

HarmonyHub_GetHarmonyDeviceIDs(integer $InstanceID) 

Parameter $InstanceID ObjektID des Harmony Hub Splitters

Schaltet auf die gewünschte Logitech Harmony Hub Aktivität

HarmonyHub_startActivity(integer $InstanceID, integer $activityID)

Parameter $InstanceID ObjektID des Harmony Hub Splitters Parameter $activityID ID der Harmony Aktivität, verfügbare IDs können über HarmonyHub_GetAvailableAcitivities ausgelesen werden

5. Konfiguration:

Logitech Harmony Hub:

Eigenschaft Typ Standardwert Funktion
Open boolean true Verbindung zum Logitech Harmony Hub aktiv / deaktiv
Host string IP Adresse des Logitech Harmony Hub
Email string Email Adresse zur Anmeldung MyHarmony
Passwort string Passwort zur Anmeldung MyHarmony
ImportCategoryID integer ObjektID der Import Kategorie
HarmonyVars boolean Aktiv legt Variablen pro Controlgroup an
HarmonyScript boolean Aktiv legt für jeden Befehl ein Skript an

Logitech Harmony Device:

Eigenschaft Typ Standardwert Funktion
Name string Name des Geräts
DeviceID integer DeviceID des Geräts
BluetoothDevice boolean false Bluetooth Gerät

6. Anhang

b. GUIDs und Datenaustausch:

Logitech Harmony Hub Splitter:

GUID: {7E03C651-E5BF-4EC6-B1E8-397234992DB4}

Logitech Harmony Device:

GUID: {C45FF6B3-92E9-4930-B722-0A6193C7FFB5}

Credits: Logitech Harmony Ultimate Smart Control Hub Library Zapp