History und Featurelist

Versionshistorie:

  • v 1.1.46 Geofence/Orte hinzugefügt, Bugfix Darstellung/Hintergrundprozess/Switch beim starten der App
  • v 1.1.45 Hintergrundprozesse für Cortana Sprachdefinition und Pushbenachrichtigung, diverse Bugfixe ModernUI, Alpha für Geofence
  • v 1.1.43 Bugfix Wheel, Slider/Behebung doppelte Einträge unter Instanzen
  • v 1.1.41 Beta für Mobile App Darstellung
  • v 1.1.39 Erweiterung für Cortanaregistrierung falls Sprache nicht Deutsch und erste Alpha für Mobile App Darstellung
  • v 1.1.36 Bugfix Skalierung beim Ändern der Fenstergröße
  • v 1.1.35 diverse Bugfixes (Abfragen der URL in den Settings, „Sprachbefehle einlesen“ war bei IPS V3 ohne Funktion)
  • v 1.1.33 Initiales Reales (ohne Mobile App Darstellung)
offene Punkte die ich noch umsetzen will:
  • Assoziationen für Wheel
  • UI in Mobile App Mode komplett überarbeiten (Icons, Textgrößen, Wheel)
  • Flyout für letzte Variableänderung
  • fehlende Masken: Wochenplan, Eventplanung, TextBox, direkte Texteingabe
  • Darstellung von Graphen (Archivhandler)
  • Nutzung mehrerer IPS Server oder Konfigurationen
  • Bug: im Fullscreen Mode kommt man nicht in die Einstellungen
  • Nutzung des „Digitalen Bilderahmens“ als Bildschirmschoner, wenn nach x Minuten keine Eingabe vorhanden war
  • Animationen beim Überblenden von Seiten und Bildern
  • Senden von Orten (Geofence) an alle Geräte als Default Werte
  • Darstellungsoptimierung für Continum
  • Multisprachen Support
Featurelist (umgesetzt):
  • Einbindung Cortana, LiveTiles, Toast Benachrichtungen
  • Hintergrundprozesse für Geofence/Orte, Cortana, LiveTiles, PushRegistrierung
  • Darstellung Webseiten Modus, Digitaler Bilder Rahmen
  • Darstellung Mobile App Mode

Cortana nutzen mit IPS V3.x

Diese Doku beschreibt die Nutzung von Cortana unter IPS V3.x. Mit IPS V4.x gibt es Module und Webhooks, welche sowohl die Einrichtung als auch die Nutzung dramatisch vereinfachen. Die Doku zur Einrichtung mit IPS V4.x gibt es hier.

Was braucht man?

  • irgendwo im Objektbaum der zur mobilen Konfiguration gehört (ich habe es unter Räume gepackt, siehe oben) eine versteckte Variable vom Typ String anlegen (hier wird die Sprachbefehlkonfiguration gespeichert)
  • irgendwo (kann außerhalb des zur Konfiguration gehörenden Objektbaums sein) ein Script „VoiceControlClass“ anlegen mit dem Inhalt von hier
  • Dann noch ein Script zu erstellen der Sprachkommandos anlegen (auch außerhalb des Objektbaums), Beispiel von hier
hinter …new new VoiceControl(xxx) gibt man die VariableID ein wo die Sprachbefehlkonfiguration geschrieben werden soll.
Der Sprachbefehl auf dem jeweiligen Gerät sieht wie folgt aus:
„Homeconrol oder ips4Windows, schalte/dimme/ändere das „WAS“ in „WO“ [optional] auf „WERT“
Die Zahlen sind jeweils die Instanz bzw. die Variable was geschaltet werden soll (analog z.B. HM_WriteInteger…)Script einmal ausführen, dann wird die Konfig in die Variable geschrieben.
Zum Schluss müssen wir in den Einstellungen der ips4Windows App unter “Interaktionen”, “Cortana verwenden” aktivieren und unter “Sprachbefehle VariableID” die ID der Stringvariable eingeben (falls nicht sichtbar, den Schalter “IPS V4.x” abwählen). Danach einmal „Sprachbefehle einlesen“ drücken oder App neu starten, dann sollte in der App die Anzahl der gefunden Befehle stehen.
settings11

Standardmäßig springt Cortana später auf das Wort “Homecontrol” oder “ips4Windows” an, wobei der Name der App am Anfang oder am Ende eines Befehls stehen kann. Z.B. “ips4Windows schalte das Licht im Wohnzimmer an” oder “schalte das Licht im Wohnzimmer an ips4Windows”. Über den Schalter eigener “App Name” ist es möglich, den Rufname der App zu ändern.

Zum testen startet man jetzt Cortana und fragt als ersten, “Was kann ich sagen?”

Cortana.PNG

In der Liste erscheint meine App jetzt unter dem Wort “Haus” (meinem “eigenen App Namen”), damit hat die Registrierung bei Cortana funktioniert.

Pushbenachrichtigungen mit IPS V3

Diese Doku beschreibt die Nutzung von Pushbenachrichtigungen und LiveTiles unter IPS V3.x. Mit IPS V4.x gibt es Module und Webhooks, welche sowohl die Einrichtung als auch die Nutzung dramatisch vereinfachen. Die Doku zur Einrichtung mit IPS V4.x gibt es hier.

Es gibt drei Arten von Benachrichtigungen welche man nutzen kann.

  1. “Toastbenachrichtigungen” – jedem bekannt von WhatsApp und Co. Man findet Sie im Benachrichtigungsfenster
  2. “Bagdebenachrichtigungen” – jedem bekannt von der Mailkachel, man kann dort z.B. eine Zahl zwischen 0 und 99+ darstellen (z.B. Anzahl der offenen Fenster im Haus) oder spezifische Symbole (diese findet man in dieser Tabelle)
  3. “Tilebenachrichtigungen” – das sind Einträge die direkt auf der Kachel dargestellt werden
Bevor es los geht, muss eine Verbindung zum IP-Symcon Server hergestellt werden, dies ist hier beschrieben.

Um die PushNotifications zu nutzen muss das folgende getan werden:

  • Anlegen einer String Variable (Beschreibung ist egal) pro Gerät, welches man benachrichtigen möchte (hier schreibt das jeweilige Gerät später seine Kommunikations URL und den Schlüssel rein)
  • Diese Variable muss nicht sichtbar sein, sollte aber im Bereich des IPS Objektbaums liegen, welcher in den Mobilen Einstellungen im Webfront freigegeben wurde
  • in den Einstellungen der ips4Windows App unter „Interaktionen“, „Pushbenachrichtigungen verwenden“ aktivieren und unter „Remotekanal VariableID“ der Stringvariable anlegen (falls nicht sichtbar, den Schalter „IPS V4.x“ abwählen)

settings10

Als nächstes müssen wir in IPS noch ein wenig Arbeit erledigen:

  • Erstellen eines Script „WindowsNotificationClass“ mit dem Code von hier
  • Erstellen eines Scripts zum Ausführen einer Toastbenachrichtigung mit dem Code von hier
  • Erstellen eines Scripts zum Ausführen der LiveTile Benachrichtigung mit dem Code von hier

 

Konfiguration für Cortana mit IPS V4

Als erstes müssen wir dem IP-Symcon Server ein wenig Basiswissen über die App beibringen 🙂

  • IP-Symcon Verwaltungskonsole starten
  • zur “Logischen Baumansicht” wechseln
  • zu “Kern Instanzen” navigieren
  • Modules öffnen
  • “hinzufügen” klicken
  • das Modulerepository “git://github.com/Seb0815/ips4Windows” hinzufügen
  • “übernehmen” klicken
  • dann im Objektbaum unter “Kern Instanzen” eine neue Instanz vom Typ “ips4WinCortana” hinzufügen
ips4
Unterhalb von ips4WinCortana“ gibt es jetzt zwei Skripte und eine Variable. „ips4WinCortanaHook“ wird bei einer Aktion von Cortana angesprochen und ist die Verarbeitung der Daten. „ips4WinCortanaSprachbefehle“ definiert die Befehle auf welche Cortana reagieren soll. Dieses Skript wird am ende einmal gestartet und schreibt dann seine Definition in die Variable „CortanaVoiceCommands“, von wo sie allen Geräten zur Verfügung steht.
Um jetzt nicht jeden einzelnen Befehl mit allen möglichen Füllwörtern schreiben zu müssen, gibt es eine „Metasprache“
Bsp: „Schalte das Licht im Wohnzimmer an“
Wenn man jetzt diesen Befehl für mehrere Räume haben möchte, müsste man eigentlich folgendes definieren:
Schalte das Licht im Wohnzimmer an
Schalte das Licht im Wohnzimmer aus
Schalte das Licht auf der Terrasse an
Schalte das Licht auf der Terrasse aus

In der Metasprache würde man jetzt folgendes definieren:
{action} [das] {actor}  [im] {room} {status}
Für {action} legt man dann „schalten, ändern, dimmen, …“ fest
Für {actor} legt man dann „Licht, Heizung, ….“ fest
Für {room} legt man dann „Wohnzimmer, Bad, Terrasse, ..“ fest
Für {status} legt man dann „an, aus, 10-100%, …“ fest

Vorteil dieser Methode, man bekommt später wenn Cortana eine Aktion für die App erkannt hat, alle diese Informationen von Cortana auch zurück geliefert und nicht nur den erkannten Satz – was die Auswertung deutlich erleichtert.

Besonderheiten Metasprache:

  • Alle definierten Elemente bekommt man bei einem erkannten Kommando im ips4WinCortanaHook“ später bei der Bearbeitung übergeben
  • Man kann Sätze für Cortana in Abschnitte packen (Commands)
    • Max. 100 Commands mit jeweils 10 Sätzen
    • Jeder Command hat ein Example (Beispiel für die Cortana Übersicht „Was kann ich sagen“) und Feedback (Rückmeldung von Cortana während der Befehl ausgeführt wird) Eintrag
      – Je Command sind max. 10 PhraseList Definitionen (Bsp. {room} {actor}..) vorhanden sein
      – Es können max. 2000 PharseList Einträge vorhanden sein
Damit die App mit all diesen Informationen etwas anfangen kann,
muss nach der Definition des Sprachfiles das Skript einmal ausgeführt werden.
Dabei werden alle Inhalte kodiert und in die Variable  „CortanaVoiceCommands“ geschrieben. Nach jeder Änderung der Sprachdefinition, muss das Skript einmal gestartet werden! Falls man die Pushbenachrichtigung aktiviert hat, bekommt jedes Gerät (unterhalb „Kern Instanzen – ips4WinDeviceRegistration“) eine automatische Nachricht zur Abholung und Verarbeitung der neuen Daten Sprachdaten.
Hier das Beispiel einer  Sprachdefinition:
ips5
ips6
Es ist natürlich auch möglich die Erstellung zu automatisieren z.B.:

$action =array(„öffne“,“schliesse“,“aktiviere“,“starte“,“ein“,“aus“,“an“,“ab“);
foreach ($action as $keyword) {
$ips4WinCortana->AddActionPhraseCommand(„action“,$keyword);
}

Um jetzt zu testen wie das mit Cortana funktioniert, muss im nächsten Schritt die App konfiguriert werden. Dazu in der App in den Einstellungen in den Reiter “Interaktionen” wechseln und “Cortana verwenden” aktivieren.

settings9

Standardmäßig springt Cortana später auf das Wort „Homecontrol“ oder „ips4Windows“ an, wobei der Name der App am Anfang oder am Ende eines Befehls stehen kann. Z.B. „ips4Windows schalte das Licht im Wohnzimmer an“ oder „schalte das Licht im Wohnzimmer an ips4Windows“. Über den Schalter eigener „App Name“ ist es möglich, den Rufname der App zu ändern. Ein Druck auf „Sprachbefehle einlesen“ sollte dann als Ergebnis die Anzahl gefundenen „Commands“ zurückliefen (in meinem Beispiel 2 – TempFragen und Block1).

Zum testen startet man jetzt Cortana und fragt als ersten, „Was kann ich sagen?“

Cortana.PNG

In der Liste erscheint meine App jetzt unter dem Wort „Haus“ (meinem „eigenen App Namen“), damit hat die Registrierung bei Cortana funktioniert. Ein Klick auf Haus in der Liste von Cortana, zeigt mir jetzt die in meiner Sprachdefinition angegebenen Beispiele.

Der nächste Test ist dann eine komplette Frage „Wieviel Grad haben wir im Wohnzimmer Haus?“, welche Cortana jetzt erkannt hat und an den IP-Symcon Server übergibt. Dort kümmert sich das Skript „ips4WinCortanaHook“ um die Verarbeitung. Hat man dort bisher nicht verändert, so findet man nach dem Absetzen im Log von IPS jetzt folgende Zeile:

ips7

hier findet man jetzt die definierten Elemente wieder. Solle der Befehl nicht bei IPS ankommen und statt dessen eine Suche bei Bing/Google gestartet werden, wurde der Befehl nicht als Bestandteil der App erkannt.

Als nächsten Schritt passen wir „ips4WinCortanaHook“ an.
In diesem Script findet die Verarbeitung der erkannten Kommandos statt. Anstelle jeden Satz einzeln abzufragen, würde ich auf die Elemente der Metasprach zurückgreifen.
ips8
ips9
Wichtig: Cortana wartet auf ein Ergebnis der Aktion!
Deswegen muss das Script am Ende einen speziell formatieren String zurück liefern.
ips10
Es gibt vier mögliche Antworten, welche zurück geliefert werden können:
  1. „SendFeedbackSuccess($Msg)“ -Es wird die Antwort ($Msg) vorgelesen und Cortana beendet sich wieder
  2. „SendFeedbackFailure($Msg)“  – Es wird die Antwort (Msg) vorgelesen und Cortana bricht die Kommunikation ab
  3. „SendFeedbackVerify($Msg)“ – Es wird ein Ja/Nein Dialog angezeigt und Antwort($Msg) vorgelesen, das Ergebnis der Abfrage wird als Feedback Variable an den Webhook zurück geliefert
  4. „SendFeedbackVerifyDetailed($Msg, ListofOptions as array)“ – Liest die Antwort ($Msg) vor und zeigt die Elemente aus dem Array zur Auswahl an. Das Ergebnis der Abfrage wird als Feedback Variable an den Webhook zurück geliefert. Es können max. 10 Elemente im Array sein.

 

 

Geofences / Orte einrichten

Geofences nutzt eine spezielle Funktion von Windows, um beim betreten oder verlassen einer definierten Zone eine Aktion auszulösen. Dabei wird die GPS Position von ips4Windows nicht ständig überwacht, sondern Windows sendet der App z.B. beim betreten der definierten Zone einen entsprechende Hinweis, welcher dann von der App an IPS übergeben wird. Diese Methode ist sehr gut für den Stromverbrauch von mobilen Geräten!

Geofences funktioniert nur mit einem IP-Symcon Server V4.x, da ein Webhook angesprochen werden muss. Falls noch nicht erledigt, muss als erstes die Verbindung von der App zum IP-Symcon Server konfiguriert werden.

Hat man bereits Pushbenachrichtigungen konfiguriert, braucht man auf der Serverseite nichts weiter machen, da die nötige „ips4WinDeviceRegistration“ Instanz schon angelegt ist. Andernfalls bitte folgende Schritte ausführen:

  • IP-Symcon Verwaltungskonsole starten
  • zur “Logischen Baumansicht” wechseln
  • zu “Kern Instanzen” navigieren
  • Modules öffnen
  • “hinzufügen” klicken
  • das Modulerepository “git://github.com/Seb0815/ips4Windows” hinzufügen
  • “übernehmen” klicken
  • dann im Objektbaum unter “Kern Instanzen” eine neue Instanz vom Typ “ips4WinDeviceRegistration” hinzufügen
Nun können wir in der App in den Einstellungen in den Reiter “Interaktionen” wechseln und „Geofency“ aktivieren.
settings7
Jetzt gibt es eine Frage ob man der App den Zugriff auf die aktuelle Position erlauben möchte, diese sollte man mit ja beantworten – sonst funktioniert Geofency nicht 🙂
In den App Einstellungen in den Reiter „Orte“ wechseln über den Button „Ort hinzufügen“ einen neuen Ort anlegen.
settings8
Geofence Name und einen Radius festlegen und über das „+“ zur Liste hinzufügen. Wenn der Ort zu ungenau ist (in meinem Beispiel 59m) einfach hier abbrechen und nochmal hinzufügen drücken. Der GPS Sensor arbeitet wird mit wiederholter Verwendung genauer, wobei eine GPS Position via WiFi nicht so genau ist wie eine Position per GPS.
Beim betreten oder verlassen der definierten Zone, wird auf dem IP-Symcon Server unter „Kern Instanzen – ips4WinDeviceRegistration – ‚GeräteName‘ – Geofences – ‚Geofence Name‘ die Variable „Status“ entsprechend geändert.
ips3

Konfiguration der Verbindung zum Server für IPS V4

Diese Doku beschreibt die Grundeinstellungen für die Verbindung zum IP-Symcon Server zur Nutzung von Cortana, Pushbenachrichtigungen und Geofence/Orte bei Verwendung von IPS Version 4.x UND der Verwendung des Webseiten oder Digitaler Bildrahmen Modus.

Möchtest man die Mobile Darstellung in ips4Windows nutzen, so reicht die hier beschrieben Konfiguration nicht aus. Für diesen Fall bitte der Doku zur Einrichtung von Mobilen App Modus folgen.

Zur Einrichtung muss man die Einstellungen von ips4Windows öffnen und in den Reiter Verbindung wechseln. Die Verbindung zu IPS erfolgt ausschließlich via WebHooks zu den Modulen von ips4Windows, deshalb ist die Konfiguration relativ einfach.
settings6
Was bedeuten die Felder/Buttons?
  • IPS URL – das ist die URL zu eurem Server, es können IPs oder auch DNS Namen sein
  • Benutzername – verwendet man z.B. einen Proxy zum Zugriff auf den Server, kann der Benutzername hier angegeben
  • Passwort – verwendet man z.B. einen Proxy zum Zugriff auf den Server, kann das Passwort hier angegeben
 Fertig! Jetzt könnte man anfangen die Interaktion mit IPS zu konfigurieren.

Konfiguration der Verbindung zum Server für IPS V3 bzw. Mobile App Modus

Diese Doku beschreibt die Grundeinstellungen für die Verbindung zum IP-Symcon Server Version 3.x ODER der Verwendung des Mobilen App Modus.

Verwendet man einen IP-Symcon Server Version 4.x UND nutzt in ips4Windows den Webseiten oder Digitaler Bildrahmen Modus, so bitte der Doku zur Einrichtung von IPS V4.x folgen.

Als erstes müssen wir den IP-Symcon Server vorbereiten.
  • IP-Symcon Verwaltungskonsole starten und den Server auswählen
  • zur „Logischen Baumansicht“ wechseln
  • zu „Konfigurator Instanzen“ navigieren
  • Webfront Konfiguration öffnen (man kann auch eine weitere anlegen, falls die eigene Symcon Lizenz dies zulässt).
ips.png
Im Reiter „Mobile/Retro“ – „Aktiviere Mobile (iOS/Android)“ anhaken und dann den Button „Auswählen“ daneben drücken.
Hier legt man jetzt die Kategorie fest, auf welche die Mobile App Zugriff bekommt und darstellen soll. Ich habe mir im Objektbaum einen eigenen Ordner  „mobile Darstellung“ angelegt und füge hier dann immer nur Links zu den Objekten an, welche ich in der Mobilen Darstellung auf dem Handy sehen möchte.
ips2
Nun müssen wir wieder zurück zur App und die Verbindung zum Server herstellen.
Dazu wieder in die Einstellungen wechseln und diesmal in den Reiter Verbindung wechseln.
settings4.PNG
Was bedeuten die Felder/Buttons?
  • IPS URL – das ist die URL zu eurem Server, es können IPs oder auch DNS Namen sein
  • wenn man in der IP-Symcon Webfront Konfiguration unter dem Reiter Sicherheit ein Passwort eingetragen, so wird dies hier abgefragt (Benutzername / Passwort)
  • Benutzername – IPS erwartet hier eigentlich immer webfront
  • Passwort – das in IPS unter Webfront/Sicherheit eingetragene Passwort
  • Konfigurator – ausgewählte Webfrontkonfigurator
  • Auswahl ändern – hier wird versucht eine Verbindung zum Server herzustellen und anschließend der gewählte Webfront Konfigurator übernommen
Nun den zurück Button drücken und die Mobile App Darstellung sollte sichtbar sein!
Hinweise/Einschränkungen:
  • falls man im Webfrontend unter Sicherheit kein Passwort angibt, so kann jeder der eine Verbindung zum IP-Symcon Server herstellen kann die Haussteuerung steuern!
  • das Auslesen der Verfügbaren Konfiguratoren („Auswahl ändern“) erfolgt immer ohne User/Passwort Abfrage
  • sollte der Zugriff auf den Server von außen nicht via https oder VPN derfolen, kann jeder das Passwort zum Serverzugriff im Klartext mitlesen (z.B. im öffentlichen WLAN)
  • Ich empfehle daher dringend den Zugang zum Server durch ein (Wenfront)Passwort und SSL abzusichern!

Pushbenachrichtigungen mit IPSv4.x

Als erstes müssen wir dem IP-Symcon Server ein wenig Basiswissen über die App beibringen 🙂

  • zur “Logischen Baumansicht” wechseln
  • zu “Kern Instanzen” navigieren
  • Modules öffnen
  • „hinzufügen“ klicken
  • das Modulerepository „git://github.com/Seb0815/ips4Windows“ hinzufügen
  • „übernehmen“ klicken
  • dann im Objektbaum unter „Kern Instanzen“ eine neue Instanz vom Typ „ips4WinDeviceRegistration“ hinzufügen

Nun können wir in der App in den Einstellungen in den Reiter „Interaktionen“ wechseln.

settings5.PNG

Dort aktivieren wir jetzt IPS V4.x und die Pushbenachrichtigungen. Hat alles funktioniert, werden jetzt unter der Instanz „ips4WinDeviceRegistration“ die Geräte gelistet.

Es gibt drei Arten von Benachrichtigungen welche man nutzen kann.

  1. „Toastbenachrichtigungen“ – jedem bekannt von WhatsApp und Co. Man findet Sie im Benachrichtigungsfenster
  2. „Bagdebenachrichtigungen“ – jedem bekannt von der Mailkachel, man kann dort z.B. eine Zahl zwischen 0 und 99+ darstellen (z.B. Anzahl der offenen Fenster im Haus) oder spezifische Symbole (diese findet man in dieser Tabelle)
  3. „Tilebenachrichtigungen“ – das sind Einträge die direkt auf der Kachel dargestellt werden

Wie sende ich eine Benachrichtigungen?

Grundsätzlich kann man  Benachrichtigungen entweder an alle Geräte oder an ein Gerät versenden. Dazu ein Beispiel mit den Toastbenachrichtigungen welches man z.B. in einem Script nutzt:
  • Nachricht an alle Geräte: ips4WNS_sendToastNotification(0,null,“text1″,“text2″);
  • Nachricht an ein Gerät: ips4WNS_sendToastNotification(0,“Seb Windows Phone“,“text1″,“text2″); – „Seb Windows Phone“ (Gerätname) findet man in der Instanz „ips4WinDeviceRegistration“ unter „deviceName“

Toastbenachrichtigungen (Einfach):

  • ips4WNS_sendToastNotification(0,“Gerät“, „Text1″,“Text2“)
  • erster Parameter bleibt immer 0
  • zweiter Parameter entweder ’null‘ (ohne Hochkomma) für alle oder den jeweiligen Gerätenamen („deviceName“ unter der Instanz „ips4WinDeviceRegistration“)
  • dritter Parameter ist die Überschrift der Nachricht
  • vierter Parameter ist der eigentliche Text
Toastbenachrichtigungen (Erweitert):
  • ips4WNS_sendToastNotificationXML(0,null,“XML Text“) bietet die Möglichkeit, Toasts vollkommen anzupassen. Dabei gibt es kaum Einschränkungen, erfordert aber das man sich an die geforderte Syntax hält!
  • am einfachsten geht das mit der App Notifications Visualizer , diese erzeugt die notwendige XML Struktur und man kann das einfach in eine Script kopieren

Bagdebenachrichtigungen:

  • ips4WNS_sendBagdeNotification(0,“Gerät“, „10“)
  • erster Parameter bleibt immer 0
  • zweiter Parameter entweder ’null‘ (ohne Hochkomma) für alle oder den jeweiligen Gerätenamen („deviceName“ unter der Instanz „ips4WinDeviceRegistration“)
  • dritter Parameter ist die Zahl welche Dargestellt werden soll (0 – 99+) oder spezifisches Symbole (findet man in dieser Tabelle)
  • z.B. ips4WNS_sendBagdeNotification(0,null,“attention“)
  • zum löschen Benachrichtigung kann man ips4WNS_sendBagdeNotification(0,null,“none“) senden

 

Tilebenachrichtigungen (Einfach):

  • ips4WNS_sendTileNotification(0,“Gerät“,“text1″,“text2″,“text3″,“text4″);
  • erster Parameter bleibt immer 0
  • zweiter Parameter entweder ’null‘ (ohne Hochkomma) für alle oder den jeweiligen Gerätenamen („deviceName“ unter der Instanz „ips4WinDeviceRegistration“)
  • Parameter drei – sechs stellen einzelne Zeilen auf dem Tile da. Abhängig von der Größe des Tile werden aber nur einzelnen Zeilen dargestellt.
  • zum löschen Benachrichtigung kann man ips4WNS_sendBagdeNotification(0,null,“none“) senden
Tilebenachrichtigungen (Erweitert):
  • ips4WNS_sendTileNotificationXML(0,null,“XML Text“) bietet die Möglichkeit, Tiles vollkommen anzupassen. Dabei gibt es kaum Einschränkungen, erfordert aber das man sich an die geforderte Syntax hält!
  • am einfachsten geht das mit der App Notifications Visualizer , diese erzeugt die notwendige XML Struktur und man kann das einfach in eine Script kopieren
Bilden von Benachrichtigungsgruppen:
  • mit dem Funktionsaufruf „ips4WNS_SetWNSTileTag(0,“Nr1“) kann man Gruppen definieren, welche dann nacheinander auf dem Tile durchlaufen (weiterführende Erklärung findet man hier unter „X-WNS-Group“)
  • der erste Parameter bleibt wie immer 0
  • der zweite Parameter bildet den Gruppennamen
  • z.B.:
    • ips4WNS_SetWNSTileTag(0,“Nr1″);
    • ips4WNS_sendTileNotification(0,null,“text1″,“text2″,“text3″,“text4″);
    • ips4WNS_SetWNSTileTag(0,“Nr2″);
    • ips4WNS_sendTileNotification(0,null,“text1-2″,“text2-2″,“text3-2″,“text4-4″);
  • SetWNSTileTag kann sowohl für Toast- als auch für Tilebenachrichtigungen genutzt werden. Es lassen sich dadurch z.B. auch Nachrichten einer Gruppe wieder überschreiben wenn z.B. ein Ereignis nicht mehr vorhanden ist

 

Änderungshistorie:

  • 27.03.2016:
    • Funktion für erweiterte Tiledarstellung korrigiert (richtig muss es ips4WNS_sendTileNotificationXML sein, war fälschlicher weise ips4WNS_sendRawNotification )
    • Funktion für erweiterte Toastdarstellung ergänzt (erfordert Modul Update in IPS)

 

Konfiguration Mobile App Modus

Als ersten müssen wir in die Einstellungen der App:

  • In der App auf das Hamburger Menü klicken
  • dann auf das Zahnrad
openSettings
In den Einstellungen dann den Mobilen App Modus aktivieren.
settings3.PNG
Als nächstes müssen wir den IP-Symcon Server vorbereiten.
Dies ist im Eintrag „Wie richte ich die Verbindung zum Server ein?“ beschrieben.
Nun den zurück Button drücken und die Mobile App Darstellung sollte sichtbar sein!

Konfiguration Digitaler Bilderrahmen Modus

Als ersten müssen wir in die Einstellungen der App:

  • In der App auf das Hamburger Menü klicken
  • dann auf das Zahnrad
openSettings
In den Einstellungen dann den Digitalen Bilderrahmen Modus aktivieren.
settings2
Was bedeuten die Felder/Buttons?
  • Vollbild Modus – die App wird im Vollbildmodus gestartet, ohne Titel- und Statusleiste
  • Bilderpath – über den Button Verzeichnis wählen, kann ein beliebiger Ordner ausgewählt werden
  • EXIF Filter (Bewertung) – jedem Bild kann man eine Dateieigenschaft Bewertung geben, hier kann man auswählen welche Bilderauswahl genutzt werden sollen (0-5 Sterne)
  • Bilder einlesen – der Prozess zum einlesen der Bilder wird gestartet
Nun den zurück Button drücken und die Webseite sollte sichtbar sein!
Hinweise/Einschränkungen:
  • das Einlesen der Bilder erfolgt im Hintergrund und kann einige Minuten dauern
  • es können maximal 1000 Bilder eingelesen werden, danach stoppt der Prozess automatisch
  • beim Beenden der App merkt wird die Bilderliste gespeichert
  • alle 10 Sekunden wird zufällig ein Bild aus dem Pool geladen
  • werden Bilder in den Ordner hinzugefügt, werden diese nicht automatisch erkannt – es muss erst nochmal „Bilder einlesen“ verwendet werden
  • verliert die App den Fokus (ist nicht mehr aktiv) z.B. Bildschirmschoner oder läuft im Hintergrund, werden keine neuen Bilder geladen (das soll die Netzwerklast reduzieren, weil z.B. nicht ständig auf ein NAS zugegriffen wird). Bekommt die App wieder in den Fokus startet das Bilderupdate wieder