Hallo OPSI-Community,
ich bin auf der Suche nach einer Möglichkeit von einem Windows-Client aus das Update eines installierten Produktes via Skript zu starten.
Ich dachte an etwas wie das Event "On Demand" vom Client aus für sich selber auszulösen.
Hintergrund ist, dass viele Nutzer ihren Laptop immer im Ruhezustand lassen und nicht neu starten, sodass auf "Setup" gesetzte Produkte nicht installiert werden. Da ich mit den Hostparametern opsiclientd.event_gui_startup{user_logged_in}.working_window, opsiclientd.event_on_shutdown.working_window und opsiclientd.event_sync_completed{cache_ready_user_logged_in}.working_window sowie dem WAN-Modul arbeite, vermute ich dass der Nutzer über anstehende Installationen nur Gelegentlich informiert wird, wenn er grade zufällig außerhalb des Zeitfensters den Client aus dem Ruhezustand weckt.
Hier suche ich nach einer Möglichkeit den Nutzer Updates über ein Desktop Icon anstoßen lassen zu können.
Ja, im Softwarekiosk gäbe es diese Möglichkeit auch, aber da schaut der Nutzer in der Regel nicht nach und würde eher hin und wieder mal die Verknüpfung ausführen.
Möglicherweise auch einfach nur die Visualisierung der anstehenden Installationen wie bei Rechtsklick auf den Client-Agent "Prüfe auf Installationen".
Vielleicht hat hier jemand auch eine andere Idee, wie ich besser dafür Sorge tragen kann, dass die Produkte auf diesen Clients aktuell sind. Den freundlichen Hinweis "Ein Boot tut gut" habe ich des Öfteren gegeben, fruchtet aber nicht.
Vielen Dank im Voraus!
Fire Event "On Demand" von Client auslösen
Re: Fire Event "On Demand" von Client auslösen
Moin,
tja, ich denke das spannende Problem hier ist die Authentifizierung. Es gibt mehrere Wege auf denen sich ein Event auslösen lässt.
1. Per "opsi-cli client-action --clients=<myclient> trigger-event", aber dafür braucht man einen account, der in der Gruppe "opsiadmin" ist, damit das erlaubt ist.
2. Per POST-request an die opsiclientd rpc-Schnittstelle, aber dafür braucht man zumindest hostID und opsi-host-key (an den ein user, der kein lokaler admin ist, nicht rankommt)
3. Per POST-request an die opsiclientd kiosk-Schnittstelle, sofern diese aktiv ist. Das geht ohne Authentifizierung, wenn auch nur von localhost aus und ist recht eingeschränkt in seinen Möglichkeiten. Aber es gibt den endpoint "processActionRequests", was hierfür ja ausreichen sollte. Das würde letzten Endes das gleiche tun, wie der button im kiosk.
tja, ich denke das spannende Problem hier ist die Authentifizierung. Es gibt mehrere Wege auf denen sich ein Event auslösen lässt.
1. Per "opsi-cli client-action --clients=<myclient> trigger-event", aber dafür braucht man einen account, der in der Gruppe "opsiadmin" ist, damit das erlaubt ist.
2. Per POST-request an die opsiclientd rpc-Schnittstelle, aber dafür braucht man zumindest hostID und opsi-host-key (an den ein user, der kein lokaler admin ist, nicht rankommt)
3. Per POST-request an die opsiclientd kiosk-Schnittstelle, sofern diese aktiv ist. Das geht ohne Authentifizierung, wenn auch nur von localhost aus und ist recht eingeschränkt in seinen Möglichkeiten. Aber es gibt den endpoint "processActionRequests", was hierfür ja ausreichen sollte. Das würde letzten Endes das gleiche tun, wie der button im kiosk.
Vielen Dank für die Nutzung von opsi. Im Forum ist unser Support begrenzt.
Für den professionellen Einsatz und individuelle Beratung empfehlen wir einen Support-Vertrag und eine Schulung.
Gerne informieren wir Sie zu unserem Angebot.
uib GmbH
Telefon: +49 6131 27561 0
E-Mail: sales@uib.de