5.25. Gleichzeitiger Betrieb von mehreren Clientinstanzen

Nach einer Standardinstallation des IDERI note Client ist der Betrieb einer einzigen Instanz des IDERI note Clients auf dem Desktop des Benutzers konfiguriert. Diese eine Clientinstanz verbindet sich mit einem einzigen IDERI note Server verbinden und zeigt - zusammen mit seiner Instanz des Tickers - nur Nachrichten von diesem Server an. Manche Organisationen haben jedoch mehrere IDERI note Server im Betrieb und haben daher daran Bedarf, auf einigen Benutzerdesktops mehrere IDERI note Clients gleichzeitig zu betreiben, jeder mit einem anderen Server verbunden. Die folgenden Abschnitte beschreiben wie ein Client für derartige Umgebungen konfiguriert wird.

5.25.1. Wie die Standardclientinstanz gestartet wird

Nach der Installation läuft der Client (inotecln.exe) in der Defaultkonfiguration, also den Verbindungseinstellungen vom Installationszeitpunkt. Diese umfassen den IDERI note Servernamen oder die Methode, ihn zu finden, das zu verwendende Protokoll, (TCP oder Named Pipes), eine optionale Portnummer und vieles mehr. Diese Einstellungen resultieren schlussendlich in einer Kommandozeile (siehe Abschnitt 7.1), die dem Client übergeben wird. Diese Kommandozeile steht im Registrierdatenbankwert “DefaultCommandLine” unter dem Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\ideri\inotecln. Damit inotecln.exe mit dieser Kommandozeile gestartet werden kann, bedarf es eines Prozesses, der diese Kommandozeile liest und den Prozess startet. Dies ist die Aufgabe von clientlaunch.exe. Die Standardeinstellungen nach der Installation ergänzen den Aufruf von clientlaunch.exe in den Registrierdatenbankwert (REG_SZ ) “ideriClient” im Schlüssel HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run (siehe Abschnitt 2.1). Damit wird clientlaunch.exe von der Explorershell nach dem Einloggen des Benutzers gestartet. Aber clientlaunch.exe ist nicht nur für das Starten der Standardinstanz des Clients verantwortlich, er zeichnet auch als zentraler Knoten für das Starten weiterer Clientinstanzen verantwortlich, sofern diese korrekt konfiguriert wurden. Dies soll Gegenstand der weiteren Ausführungen in diesem Abschnitt sein.

5.25.2. Das Starten von sekundären Clientinstanzen mit clientlaunch.exe

Sekundäre Clients werden mit dem folgenden Registrierdatenbankschlüssel konfiguriert:

HKEY_LOCAL_MACHINE\SOFTWARE\ideri\inotecln\SecondaryClients.

Im Rest dieses Abschnitts wird dieser Schlüssel als der “Schlüssel für sekundäre Clients” bezeichnet werden. Dieser Schlüssel existiert nicht nach einer Standardinstallation des IDERI note Clients und muss manuell angelegt werden oder durch ein Clientmanagementprodukt. Da das Installationspaket des IDERI note Clients diesen Schlüssel nicht anlegt, wird es ihn auch bei der Deinstallation nicht löschen. Das bedeutet auch, dass ein Update des IDERI note Clients diesen Schlüssel unangetastet lässt, wo ja die Deinstallation der älteren Clientversion notwendiger Bestandteil des gesamten Updateprozesses ist. Jede Clienteinstellung unter diesem Schlüssel “überlebt” also ein Clientupdate. Für jede Instanz eines sekundären Clients ist in diesem Schlüssel ein Unterschlüssel vorgesehen. Der Name dieses Unterschlüssels ist dabei irrelevant, aber er muss die Registrierdatenbankwerte aus Tabelle Registrierdatenbankwerte für sekundäre Clients enthalten, damit die Clientinstanz erfolgreich gestartet werden kann.

Registrierdatenbankwerte für sekundäre Clients
Wertname Datentyp Beschreibung
Server REG_SZ Der Name des IDERI note Servers.
HistoryMenuItem (optional) REG_SZ Zeichenkette, die als Eintrag im Kontextmenü des Clients für die Verlaufsanwendung der Clientinstanz verwendet werden soll.
PollingInterval REG_DWORD Das Pollingintervall des Clients in ms.
TCP REG_DWORD Ist dieser Wert ungleich 0, verbindet sich die Clientinstanz über einen dedizierten TCP Port mit ihrem Server, ansonsten werden Named Pipes verwendet.
Port REG_DWORD Der TCP-Port, der bei Verwendung von TCP als Transportprotokoll zur Verwendung kommen soll.

Das bedeutet jedoch nicht, dass eine sekundäre Clientinstanz nach Angabe dieser Registrierdatenbankwerte von clientlaunch.exe automatisch gestartet wird. Damit die sekundäre Instanz gestartet werden kann, muss der Unterschlüssel, der die Registrierdatenbankwerte aus Tabelle Registrierdatenbankwerte für sekundäre Clients enthält, zuerst freigeschaltet werden. Das geschieht durch Anlegen des Registrierdatenbankwerts “ClientsToStart” (REG_MULTI_SZ) im Schlüssel für sekundäre Clients. Nur wenn dieser Registrierdatenbankwert den Namen des Unterschlüssels unter dem Schlüssel für sekundäre Clients enthält, werden die Parameter aus Tabelle Registrierdatenbankwerte für sekundäre Clients überhaupt evaluiert und der sekundäre Client von clientlaunch.exe gestartet.

5.25.3. Aus dem Kontextmenü des IDERI note Clients auf sekundäre Clients zugreifen

In der Standardkonfiguration zeigt der IDERI note Client ein Icon im Systembenachrichtigungsbereich an, das nach einem Klick mit der sekundären Maustaste (die rechte Maustaste) ein Kontextmenü zur Anzeige bringt. Mit diesem Kontextmenü kann der Benutzer die Verlaufsanwendung starten, den “Nicht-Stören-Modus” starten, den Ticker anzeigen oder verbergen und vieles mehr. Beim Betrieb mit mehreren Clients würde nun jede Clientinstanz ihr eigenes Icon im Systembenachrichtigungsbereich anlegen. Dies wird verhindert mit dem Registrierdatenbankwert “OnlyOneTrayIcon” (siehe Abschnitt 8.1) bzw. seinem Pendant zum Installationszeitpunkt, dem MSI Eigenschaftswert “ONLYONETRAYICON” (siehe Abschnitt 6.3), die beide den Standardwert 1 haben. Mit Standardeinstellungen legt daher nur die Standardinstanz des Clients, die über den Registrierdatenbankwert “DefaultCommandLine” gestartet wird, ein Icon im Systembenachrichtigungsbereich an und steuert damit zu einem gewissen Grad die anderen Clients. Das hat zur Folge, dass sich das Starten des “Nicht-Stören-Modus”, das Beenden des Clients oder das Anzeigen und Verbergen des Tickers aus dem Kontextmenü der Standardinstanz des Clients für alle gleichzeitig laufenden Clientinstanzen auswirkt. Damit aber die Verlaufsanwendung aus diesem einzigen Kontextmenü des Clients für eine spezifische Clientinstanz aufgerufen werden kann, ist weitere Konfiguration erforderlich: Der Registrierdatenbankwert “ClientHistoryMenuOrder” (REG_MULTI_SZ) im Schlüssel für sekundäre Clients gibt hierzu eine ähnliche Liste von Unterschlüsseln an wie der Wert “ClientsToStart”. Jeder Wert in dieser Liste gibt wieder den Namen eines Unterschlüssels unter dem Schlüssel für sekundäre Clients an, nur diesmal wird damit die Reihenfolge der Menüeinträge für die Verlaufsanwendung im Kontextmenü der Standardinstanz des Clients beschrieben. Die maximale Anzahl an Clientinstanzen, deren Menüeintrag im Kontextmenü auftauchen kann ist auf 10 limitiert. Der tatsächlich für die jeweilige Instanz der Verlaufsanwendung verwendete Text im Kontextmenü wird dabei über den Registrierdatenbankwert “HistoryMenuItem” (siehe Tabelle Registrierdatenbankwerte für sekundäre Clients) festgelegt.

Beachten Sie an dieser Stelle, dass die Spezifikation einer Clientkonfiguration durch Abfrage an das Active Directory nach einem Service Connection Point wie in Abschnitt 10.2 beschrieben, für sekundäre Clients nicht zulässig ist. Das ist auch insofern sinnvoll, als dass ja ohnehin nur maximal ein einziger Client eine Abfrage an das Directory nach einem Service Connection Point machen kann - jede nachfolgend gestartete Clientinstanz würde ja bei der Abfrage die exakt gleichen Verbindungsparameter enthalten wie die erste derartige Clientinstanz. Im Umkehrschluss bedeutet das, dass die Standardclientinstanz, die über den Registrierdatenbankwert “DefaultCommandLine” gestartet wird, die einzige Instanz sein kann, die für die Abfrage der Verbindungsdaten nach einem Service Connection Point konfiguriert werden kann.

Achtung

Reihenfolge der Nachrichten beim Betrieb mit mehreren Clients

Eines der wichtigsten Produktmerkmale von IDERI note ist die Klassifizierung von Nachrichten nach Ihrer Wichtigkeit, die sich in der Aufteilung in Alarm, Warnung und Information manifestiert, wobei das Verhalten fuer jede dieser Klassen individuell konfiguriert werden kann. Teil dieses Modells ist auch die Reihenfolge, in der Nachrichten auf dem Desktop des Benutzers erscheinen, wenn mehrere Nachrichten gleichzeitig aktuell sind. So garantiert der IDERI note Client, dass in solch einer Situation Alarmmeldungen immer vor Warnungsmeldungen erscheinen und Warnungsmeldungen immer vor Informationsmeldungen. Beim Betrieb mit mehreren gleichzeitigen Clients kann diese strikte Regelung aber leider nicht mehr aufrechterhalten werden. Dies liegt daran, dass jede Clientinstanz unabhängig von den gleichzeitig laufenden anderen Clientinstanz agiert. Hat also einer der Clients beispielsweise nur eine Informationsmeldung anzuzeigen, so kann diese Informationsmeldung zeitgleich mit einer Alarmmeldung von einem anderen Client angezeigt werden. Mit einem einzigen Client wird jedoch garantiert dass dem Benutzer nicht mehr als eine Meldung zu einem Zeitpunkt angezeigt wird. Beim Betrieb mit mehreren Clients zeigt jede Clientinstanz unabhängig von den anderen zeitgleich laufenden Instanzen ihre Meldungen an, daher können in solch einem Fall maximal soviele Meldungen zeitgleich angezeigt werden wie Clientinstanzen laufen. Eine ähnliche Situation existiert für die Anzeige des Tickers im Betrieb mit mehreren Clients: Jede Clientinstanz startet ihre eigene Tickerinstanz, daher wird es in diesem Fall notwendig, dass die Benutzer die Tickerinstanzen entsprechend an verschiedenen Bildschirmrändern positionieren.