NEWS
[Tutorial] wioBrowser - Windows Desktop `popup messages`
-
Teil 3
Anwendung:
In diesem Teil wenden wir uns den Objekten zu.
Auch hier werde ich nur auf die Objekte eingehen, welche für die Funktionpopup messages
relevant sind.
Bevor wir etwas "Spielen", kurz eine Übersicht, was die einzelnen Objekte bedeuten, bzw. bewirken.
(wie ein Wert geändert werden kann, sehe ich jetzt als Voraussetzung an)"message"
- Hier kann eine Nachricht eingegeben werden, wenn nötig auch mit Zeilenumbruch
(einfachEnter
bei der Eingabe des Textes drücken)
"messagenumber"
- Über dieses Objekt können die jeweiligen Favoriten der Nachrichten aufgerufen werden.
"messagestyle"
- Durch dieses Objekt wird festgelegt, welchen Style die Nachricht haben soll,
welche man unter "message" absetzt.
OK, lasst uns etwas "Spielen"
In Teil 2 hatten wir ja schon ein paar Favoriten angelegt.
Favorit 1 hat die Hintergrundfarbe GreenYellow (#ADFF2F
),
und Favorit 2 die Hintergrundfarbe Silver (#C0C0C0
).
Angenommen wir möchten eine Nachricht mit der Hintergrundfarbe Silver absetzen.
Dann ändern wir zuerst den Wert bei "messagestyle" auf2
.
Und im Anschluss setzen wir die Nachricht unter "message" ab.
Angenommen wir möchten eine Nachricht mit der Hintergrundfarbe GreenYellow absetzen.
Dann ändern wir zuerst den Wert bei "messagestyle" auf1
.
Und im Anschluss setzen wir die Nachricht unter "message" ab.
Ich denke das Prinzip ist verstanden.
Folgende Einstellungen der Favoriten werden bei "messagestyle" berücksichtigt.
Titel
,Time
undColor
. - Hier kann eine Nachricht eingegeben werden, wenn nötig auch mit Zeilenumbruch
-
Teil 4
Automatik:
Folgendes Szenario, wir sitzen vor dem Rechner, und haben kein Telefon in der Nähe,
bzw. bekommen es nicht mit wenn das Telefon klingelt.
Damit wir auf dem Desktop eine Nachricht, mit dem Inhalt, auf welcher Rufnummer wird angerufen,
zu welchem Zeitpunkt und von wem, erhalten, hab ich euch ein kleines Beispiel in Blockly erstellt.Voraussetzung, für diese Beispiel, sind ein installierter "TR-064" Adapter,
und selbstverständlich die in Teil 1-3 eingerichtete Umgebung.
(wie immer, gilt auch hier, ihr müsst das Blockly an eure Umgebung anpassen)Was macht dieses Blockly nun?
Es wartet auf einen externen Anruf, und reagiert folgendermaßen darauf, wenn ein Anruf ankommt.
Zuerst wird der vorhandene Wert unter "messagestyle" in eine Variable (messagestyle
) geschrieben,
und die Variable (calleetext
) zurückgesetzt.
Anschließend wird geprüft, auf welcher Anschlussrufnummer der externe Anruf ankommt.
Dementsprechend, wird diese Nummer dann in der Variablecalleetext
durch einen Text ersetzt.
Dann wird der gewünschte "messagestyle" an das Objekt übergeben.
(in dem Fall mit4
, da wir ja in Teil 2 einen entsprechenden Favorit angelegt haben,
jetzt wird vielleicht klarer, warum der Favorit unter "Caption" keinen Eintrag enthält)
Der an dieser Stelle eingefügte Timer ist notwendig, da sonst der "messagestyle" noch nicht gesetzt ist,
bevor die Nachricht gesendet wird.
Jetzt fängt die eigentliche Zusammenstellung der Nachricht an.
Wir haben uns ja weiter vorne schon darauf geeinigt, wie die Nachricht aussehen soll.
Also wird der Text aus folgenden Parametern zusammengesetzt.
Zuerst die Variablecalleetext
mit abschließendem Zeilenumbruch.
Dann der Zeitstempel aus dem Objekt "tr-064.0.callmonitor.inbound.timestamp",
wieder mit abschließendem Zeilenumbruch.
Damit die zwei Werte von "tr-064.0.callmonitor.inbound.caller" und "tr-064.0.callmonitor.inbound.callerName"
in einer Zeile erscheinen, wird noch einmal ein Text im Text erstellt, welcher die Werte mit Leerzeichen als Trenner einsetzt.
Mit diesem komplett zusammengesetzten Text, wird das Objekt "wiobrowser.0.messages.message" angesteuert.
Zum Schluss noch das Objekt "wiobrowser.0.messages.messagestyle" mit der Variablemessagestyle
,
welche am Anfang des Blockly gespeichert wurde, ansteuern.Hier noch das Ergebnis, wie es bei euch aussehen könnte
Schlusswort:
Ich hoffe, es hat euch einigermaßen Spaß gemacht, mit mir durch dieses Tutorial zu gehen.
Solltet ihr Kritik, Anregungen oder anderweitige Vorschläge haben, dann gerne her damit.
(Schreibfehler dürft ihr behalten, die schenke ich euch )Großer Dank gebührt Walter ( @Wal )
Er hat diese Funktion (Stand: 18.01.2022), welche nicht eingeplant war, innerhalb einer Woche umgesetzt.
Wer ihn unterstützen möchte, hier noch einmal der Link zu seinem Thread.Ansonsten wünsche ich euch allen eine angenehme Zeit
Gruß, Karsten -
Wow, genau was ich immer gesucht habe.
Du überforderst mich grad, kam noch nicht mal dazu das NC Script zu installieren, jetzt sowas.Super, danke.
Frage: Wenn es installiert wird, werden die Popups dann jedem Benutzer des PCs angezeigt?
Ich bin wg. teilweise HO oft mit einem anderen Benutzer angemeldet, der nur eingeschränkt Rechte hat (von mir so eingestellt). Dann noch Benutzer Frau und manchmal Kids. -
@csr
Nachrichten werden auf den Rechner gesendet, welcher bei ioBroker unter den Einstellungen angegeben ist.
Und dieWioBrowser.exe
muss ja auch gestartet sein.
Wie es sich verhält, wenn ein Benutzer angemeldet ist, bei dem die Nachrichten erscheinen sollen,
und dann ein Benutzerwechsel vollzogen wird, hab ich nicht getestet.
Das bleibt jetzt dir überlassen
Kann es mir nicht vorstellen, das dies Benutzerübergreifend funktioniert, aber wer weiß. -
@csr ,
wenn du das Teil in den Autostart schiebst und bei jedem Windowsstart automatisch starten lässt, könnte ich mir gut vorstellen das das funktioniert. -
@wal
Ja so hätte ich es vor.hätte, hätte, gebt mir Zeit am PC , hier Schreiben geht fast immer, aber am PC sitzen leider nicht so.
-
@wal sagte in [Tutorial] wioBrowser - Windows Desktop `popup messages`:
@csr ,
wenn du das Teil in den Autostart schiebst und bei jedem Windowsstart automatisch starten lässt, könnte ich mir gut vorstellen das das funktioniert.Es wird nicht Terminalserver bzw. Multiuser-fähig sein das ja der Port in der
Config.ini
festgelegt ist und die erste gestartete Instanz sich diesen krallt. Solange nur ein Benutzer es pro Rechner startet sollte es kein Problem geben. -
@bananajoe ,
wenn ich das als Admin in den Taskmanager Autostart mache, müsste es doch für alle User gelten, oder ? -
bin mir nicht zu 100% sicher, doch ich meine das es zwei Arten von Autostartordnern gibt.
Einen für den aktuellen Benutzer, und einen Systemübergreifend.
Muss noch einmal nachschauen. -
@wal sagte in [Tutorial] wioBrowser - Windows Desktop `popup messages`:
@bananajoe ,
wenn ich das als Admin in den Taskmanager Autostart mache, müsste es doch für alle User gelten, oder ?Öhm, den Weg bin ich noch nie gegangen ...
Für alle Benutzer müsste es dieser Ordner sein:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
würde auch gehen. Also dort eine Verknüpfung reinlegen
-
Über den Taskmanager Autostart geht es nicht, eben probiert.
Mal die von @BananaJoe testen. -
Gefunden
Hier steht es zum Nachlesen.
Autostart-Ordner für den angemeldeten Nutzer
%appdata%\Microsoft\Windows\Start Menu\Programs\Startup
Autostart-Ordner für alle Benutzer
%programdata%\Microsoft\Windows\Start Menu\Programs\Startup
Einfach eine Verknüpfung zu
WioBrowser.exe
dort (je nachdem was man möchte) reinlegen. -
Funktioniert einwandfrei, danke dir für das Tutorial