Seite 1 von 1

hostControlSafe_showPopup funktioniert nur einmal

Verfasst: 25 Mär 2019, 15:01
von eicky
Hallo zusammen!

Im Rahmen eines Scripts wollte ich mich der opsi-admin-Methode "hostControlSafe_showPopup" bedienen, um Nachrichten vom OPSI-Server auf OPSI-Clients zu bringen.
Während meiner Tests fiel mir auf, dass die Nachrichtenanzeige genau einmal wie gewünscht funktioniert. Sende ich danach nochmal einen Text an den gleichen Client, wird zwar eine MessageBox angezeigt, allerdings beinhaltet diese keinen Text.

Kann jemand von euch dieses Verhalten nachvollziehen?

Viele Grüße
Eicky

Re: hostControlSafe_showPopup funktioniert nur einmal

Verfasst: 25 Mär 2019, 16:02
von ThomasT
Bei mir tritt das Verhalten dann auf, wenn die vorherige MessageBox nicht geschlossen wird, ist das bei dir auch so?

Re: hostControlSafe_showPopup funktioniert nur einmal

Verfasst: 25 Mär 2019, 16:05
von eicky
Hi Thomas,

ich habe bei mir stets die vorigen Meldungen geschlossen, bevor eine neue Nachricht versendet wurde.

Re: hostControlSafe_showPopup funktioniert nur einmal

Verfasst: 29 Mär 2019, 10:48
von eicky
Hi Thomas,

kurz vor dem Wochenende wollte ich mich des Problems nochmal annehmen.
Es ist jetzt in der Tat so, wie Du schon festgestellt hast: Das Nachrichtenfenster ist nur leer, wenn das vorige noch nicht geschlossen wurde.
Was bei mir am Montag anders lief, kann ich jetzt leider nicht mehr rekonstruieren.

Vielleicht kann ich in dem Zusammenhang eine andere Frage stellen:
Wie kann ich über die Shell eine Nachricht erzeugen, die Umbrüche enthält?

Hiermit habe ich es schon versucht:
opsi-admin -d method hostControlSafe_showPopup "Hallo\n\nTest" "client"

Viele Grüße
Eicky

Re: hostControlSafe_showPopup funktioniert nur einmal

Verfasst: 06 Mai 2019, 17:14
von n.wenselowski
Hi Eicky,

erstmal Danke für den Bugreport!


eicky hat geschrieben:Vielleicht kann ich in dem Zusammenhang eine andere Frage stellen:
Wie kann ich über die Shell eine Nachricht erzeugen, die Umbrüche enthält?

Hiermit habe ich es schon versucht:
opsi-admin -d method hostControlSafe_showPopup "Hallo\n\nTest" "client"

Schuss ins Blaue ist entweder einfache Anführungszeichen zu verwenden oder die Backslashes gleich zweimal hinzuzufügen.


Gruß

Niko

Re: hostControlSafe_showPopup funktioniert nur einmal

Verfasst: 07 Mai 2019, 10:26
von ueluekmen
Hi,

noch mal eine kleine Rückmeldung. Ja das ist definitiv ein Bug und wir konnten das reproduzieren.

Wir kümmern uns um Besserung, allerdings sind wir im Moment etwas Busy und deshalb wird es noch etwas dauern. Sollte es eine Lösung geben melden wir uns noch mal.

Re: hostControlSafe_showPopup funktioniert nur einmal

Verfasst: 13 Mai 2019, 15:43
von eicky
Hi Niko!

n.wenselowski hat geschrieben:Schuss ins Blaue ist entweder einfache Anführungszeichen zu verwenden oder die Backslashes gleich zweimal hinzuzufügen.


Sowohl

Code: Alles auswählen

opsi-admin -d method hostControlSafe_showPopup 'Hallo\n\nTest' "client"

als auch

Code: Alles auswählen

opsi-admin -d method hostControlSafe_showPopup "Hallo\\n\\nTest" "client"

führten am Client zu einer Message-Box mit dem Inhalt

Hallo\n\nTest


:?

Darüber hinaus schon mal Danke für eure Rückmeldungen!

Gruß, Eicky

Re: hostControlSafe_showPopup funktioniert nur einmal

Verfasst: 23 Mai 2019, 18:36
von n.wenselowski
Hi,

nachdem ich es selbst probiert habe und es nicht geklappt hat, habe ich etwas geforscht und einen Bug in opsi-admin entdeckt, welcher die Newlines zerstört.

Als Workaround:

Code: Alles auswählen

python -c "import OPSI.Backend.BackendManager as BM; b = BM.BackendManager(); b.hostControlSafe_showPopup(u'Hallo\nWelt'.encode('utf-8'), 'deine.client.id.hier')"




Gruß

Niko