Alternative für "getClientIds_list" & "getClientsWithActionRequest"

Antworten
JMS
Beiträge: 99
Registriert: 22 Nov 2010, 12:05

Alternative für "getClientIds_list" & "getClientsWithActionRequest"

Beitrag von JMS »

Hallo zusammen,

bislang nutzte ich in einem Cron-Job den Aufruf

Code: Alles auswählen

opsi-admin -dS method getClientIds_list null null null null null '["uninstall","setup","update"]'
um zunächst eine Liste aller Clients zu erhalten, die auf eine Verteilung warten, um im zweiten Schritt die betreffenden Kisten per WOL starten zu können.

Diese Funktion ist leider "deprecated"!

Die Alternative via

Code: Alles auswählen

opsi-admin -dS method getClientsWithActionRequest '["uninstall","setup","update"]'
ist ebenfalls "deprecated"!

Hat jemand eine Idee, wie ich diese Abfrage künftig realisieren kann?

Vorab Danke & viele Grüße
JMS
Beiträge: 99
Registriert: 22 Nov 2010, 12:05

Re: Alternative für "getClientIds_list" & "getClientsWithActionRequest"

Beitrag von JMS »

Sorry, Thema steht in falscher Rubrik und gehört in "Freier Support"
busabernhardg
Beiträge: 152
Registriert: 07 Jul 2008, 16:53

Re: Alternative für "getClientIds_list" & "getClientsWithActionRequest"

Beitrag von busabernhardg »

Hallo,

schau die mal opsi-cli an.
Mit
opsi-cli jsonrpc execute productOnClient_getObjects '["clientId","productId"]' '{"actionRequest":"setup"}' | grep -E '(clientId)'
solltest du eine Liste aller Clients bekommen, bei der ein Produkt auf Setup steht.

lg
Bernhard
JMS
Beiträge: 99
Registriert: 22 Nov 2010, 12:05

[GELÖST] Alternative für "getClientIds_list" & "getClientsWithActionRequest"

Beitrag von JMS »

Perfekt, Danke!

Und wenn ich alle Arten von anstehenden Jobs auslesen will:

Code: Alles auswählen

opsi-cli jsonrpc execute productOnClient_getObjects '["clientId","productId"]' '{"actionRequest":["setup","once","uninstall"]}' | grep -E clientId
Und weil die Methode "powerOnHost" ebenfalls "deprecated" ist:

Code: Alles auswählen

for i in $(opsi-cli jsonrpc execute productOnClient_getObjects '["clientId","productId"]' '{"actionRequest":["setup","once","uninstall"]}' | grep -E clientId  | cut -d '"' -f4 | sort -u ); do
        echo "**********************************************************"
        echo "[INFO] PC-System $i hat offene Jobs..."
	opsi-cli jsonrpc execute hostControl_start ${i} >/dev/null
done
Nochmals Danke & viele Grüße
Benutzeravatar
j.schneider
uib-Team
Beiträge: 2042
Registriert: 29 Mai 2008, 15:14

Re: Alternative für "getClientIds_list" & "getClientsWithActionRequest"

Beitrag von j.schneider »

Kleiner Hinweis an dieser Stelle:
Über die Optionen --output-format, --no-header, --attributes kann man die Ausgabe so formatieren, dass man sie in einfachen Skripten besser weiterverarbeiten kann:

Code: Alles auswählen

opsi-cli --output-format csv --no-header --attributes clientId jsonrpc execute productOnClient_getObjects '["clientId","productId"]' '{"actionRequest":["setup","once","uninstall"]}'
Grüße
Jan Schneider


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


Benutzeravatar
j.schneider
uib-Team
Beiträge: 2042
Registriert: 29 Mai 2008, 15:14

Re: Alternative für "getClientIds_list" & "getClientsWithActionRequest"

Beitrag von j.schneider »

Eine weitere Ergänzung.
Mit opsi-cli 4.3.23.0 ist jetzt auch Folgendes möglich:

Code: Alles auswählen

opsi-cli client-action --clients all --where-action-request setup,once,uninstall wakeup
opsi-cli 4.3.23.0 befindet sich aktuell in unserem experimental-Repo.

Code: Alles auswählen

opsi-cli self upgrade --branch=experimental
Grüße
Jan Schneider


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


Benutzeravatar
n.doerrer
uib-Team
Beiträge: 408
Registriert: 23 Okt 2020, 16:11

Re: Alternative für "getClientIds_list" & "getClientsWithActionRequest"

Beitrag von n.doerrer »

Und noch eine Ergänzung

Code: Alles auswählen

opsi-cli jsonrpc methods
zeigt verfügbare Methoden und ihre Parameter an. Im Fall von deprecated methods wird dort eine Alternative vorgeschlagen.


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


Antworten