hostControlSafe_showPopup funktioniert nur einmal

eicky
Beiträge: 9
Registriert: 16 Mär 2018, 08:38

hostControlSafe_showPopup funktioniert nur einmal

Beitragvon eicky » 25 Mär 2019, 15:01

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

Benutzeravatar
ThomasT
uib-Team
Beiträge: 146
Registriert: 26 Jun 2013, 12:26

Re: hostControlSafe_showPopup funktioniert nur einmal

Beitragvon ThomasT » 25 Mär 2019, 16:02

Bei mir tritt das Verhalten dann auf, wenn die vorherige MessageBox nicht geschlossen wird, ist das bei dir auch so?
Kein Support per DM!
_________________________
opsi support - https://www.uib.de/
For productive opsi installations we recommend support contracts.

eicky
Beiträge: 9
Registriert: 16 Mär 2018, 08:38

Re: hostControlSafe_showPopup funktioniert nur einmal

Beitragvon eicky » 25 Mär 2019, 16:05

Hi Thomas,

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

eicky
Beiträge: 9
Registriert: 16 Mär 2018, 08:38

Re: hostControlSafe_showPopup funktioniert nur einmal

Beitragvon eicky » 29 Mär 2019, 10:48

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

Benutzeravatar
n.wenselowski
uib-Team
Beiträge: 3120
Registriert: 04 Apr 2013, 12:15

Re: hostControlSafe_showPopup funktioniert nur einmal

Beitragvon n.wenselowski » 06 Mai 2019, 17:14

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
opsi development - uib gmbh
For productive opsi installations we recommend support contracts.

Benutzeravatar
ueluekmen
uib-Team
Beiträge: 1891
Registriert: 28 Mai 2008, 10:53

Re: hostControlSafe_showPopup funktioniert nur einmal

Beitragvon ueluekmen » 07 Mai 2019, 10:26

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.
opsi support - uib gmbh
For productive opsi installations we recommend support contracts.
http://www.uib.de

eicky
Beiträge: 9
Registriert: 16 Mär 2018, 08:38

Re: hostControlSafe_showPopup funktioniert nur einmal

Beitragvon eicky » 13 Mai 2019, 15:43

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

Benutzeravatar
n.wenselowski
uib-Team
Beiträge: 3120
Registriert: 04 Apr 2013, 12:15

Re: hostControlSafe_showPopup funktioniert nur einmal

Beitragvon n.wenselowski » 23 Mai 2019, 18:36

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
opsi development - uib gmbh
For productive opsi installations we recommend support contracts.