FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: erikproper am 24 Januar 2019, 10:16:07

Titel: MQTT2 vom FHEMWEB abhängig ?? ... "$FW_userAgent" requires explicit package name
Beitrag von: erikproper am 24 Januar 2019, 10:16:07
Hallo fhem experten,
   Bei ein frisch installierten FHEM versuch ich MQTT2 ans laufen zu bringen. Bis jetzt nutze ich MQTT_DEVICE, aber weil MQTT2 besser mit JSON umgehen kann (laut die Dokumentation), spiele ich mal mit MQTT2 herum. Aber, es führ bei mir gleich zu ein Fehlermeldung:
-  Global symbol "$FW_userAgent" requires explicit package name (did you forget to declare "my $FW_userAgent"?) at ./FHEM/10_MQTT2_DEVICE.pm line 540.

Was ich gemacht habe.

1: Es lauf bei mir ein Mosquitto MQTT broker, also:
define testbus MQTT2_CLIENT xanadu:1883
attr testbus username proper
set testbus password TopSecret


Wenn ich jetzt ein "list testbus" mache, siehe ich:
Internals:
   BUF       
   CFGFN     
   DEF        xanadu:1883
   DeviceName xanadu:1883
   FD         8
   FUUID      5c497ef7-f33f-2915-ccc2-beb9115b378c6a91
   NAME       testbus
   NR         150
   PARTIAL   
   STATE      opened
   TYPE       MQTT2_CLIENT
   WBCallback
   clientId   testbus
   lastMsgTime 1548320580.37438
   nextOpenDelay 5
   READINGS:
     2019-01-24 09:02:42   state           opened


Also: "so far so good".

2: Jetzt ein MQTT2_DEVICE anliegen, womit ich testen kann.
define testdevice MQTT2_DEVICE IODev=testbus

Schreit aber gleich zurück:
  Cannot load module MQTT2_DEVICE

wobei im log file steht:
  "$FW_userAgent" requires explicit package name (did you forget to declare "my $FW_userAgent"?) at ./FHEM/10_MQTT2_DEVICE.pm line 540.


Okay RTFM, aber ... ein Ctrl-F auf https://www.fhem.de/commandref.html führ nicht zu ein Erklärung im Bereich MQTT2
Und LWP::UserAgent ist installiert.

BG,
   Erik Proper


Titel: Antw:MQTT2 ... "$FW_userAgent" requires explicit package name
Beitrag von: Beta-User am 24 Januar 2019, 10:25:30
Moin,

hast du eine FHEMWEB-Instanz definiert?
(Die Variable stammt m.E. aus FHEMWEB).

Ggf. solltest du noch die "version" der beteiligten Module liefern (MQTT2_CLIENT, MQTT2_DEVICE und FHEMWEB).

Anmerkung: Dein Post wäre etwas leichter lesbar, wenn du code-tags benutzen würdest (das # oben bei den smileys).
Titel: Antw:MQTT2 ... "$FW_userAgent" requires explicit package name
Beitrag von: erikproper am 24 Januar 2019, 11:13:43
Morgen,
   Ein FHEMWeb Instanz have ich nicht laufen. Werde mal checken ob das Einflüss hat. Aber ... wen schon fand ich das irgendwie sonderbar ....

Code-tags  ... werde ich das nächste mal nutzen. Bin eh LaTeX Nutzer ;-)

\begin{code}
   Some code
\end{code}


;-)

BG,
  Erik
Titel: Antw:MQTT2 ... "$FW_userAgent" requires explicit package name
Beitrag von: erikproper am 24 Januar 2019, 11:22:48
Jetzt code-tags in die originele Post ...

Getestet mit FHEMWEB. Kein Fehlermeldung mehr. Aber .... weswegen ist MQTT2 abhängig von FHEMWEB? Finde ich etwas unlogisch ....
Titel: Antw:MQTT2 ... "$FW_userAgent" requires explicit package name
Beitrag von: Beta-User am 24 Januar 2019, 11:36:45
Zitat von: erikproper am 24 Januar 2019, 11:22:48
Aber .... weswegen ist MQTT2 abhängig von FHEMWEB? Finde ich etwas unlogisch ....
Das kann ich dir im Moment nicht beantworten und finde das jedenfalls auf den ersten Blick und ohne nähere Codeanalysw auch nicht optimal.
Es ist halt noch keinem aufgefallen ;D .Vermutlich wird Rudi bei dem Titel und passender Gelegenheit hier drüberlesen und ggf. Änderungen vornehmen oder erklären, wieso das so sein muß.
Titel: Antw:MQTT2 vom FHEMWEB abhängig ?? ... "$FW_userAgent" requires explicit package name
Beitrag von: erikproper am 24 Januar 2019, 11:50:03
OK. Habe deswegen den Topic etwas genauer auf dem Punkt gebracht ...