Hallo Leute,
wie installiert man unter Kubuntu Trusty das Modul Net:MQTT?
Versuch 1: apt-get
apt-get install libnet-mqtt-perl
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libnet-mqtt-perl
Versuch 2: CPAN
cpan install Net:MQTT
Reading '/root/.cpan/Metadata'
Database was generated on Wed, 18 Mar 2015 17:41:02 GMT
Warning: Cannot install Net:MQTT, don't know what it is.
Try the command
i /Net:MQTT/
to find objects with matching identifiers.
cpan[1]> i /NET::MQTT/
Reading '/root/.cpan/Metadata'
Database was generated on Wed, 18 Mar 2015 17:41:02 GMT
Module < Net::MQTT::Constants (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::ConnAck (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::Connect (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::Disconnect (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::JustMessageId (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::PingReq (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::PingResp (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::PubAck (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::PubComp (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::PubRec (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::PubRel (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::Publish (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::SubAck (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::Subscribe (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::UnsubAck (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Message::Unsubscribe (BEANZ/Net-MQTT-1.143260.tar.gz)
Module < Net::MQTT::Simple (JUERD/Net-MQTT-Simple-1.20.tar.gz)
Module < Net::MQTT::Simple::SSL (JUERD/Net-MQTT-Simple-1.20.tar.gz)
Module < Net::MQTT::TopicStore (BEANZ/Net-MQTT-1.143260.tar.gz)
20 items found
und jetzt?
Ratlos: muellthos
Versuche mit cpan und paket net::mqtt:simple und constants, aber die groß und Kleinschreibung so wie in deinem Output.
Gruß
Karl
Sent from my iPad using Tapatalk
Danke schka17,
das würde gehen, anscheinend brauche ich es aber nicht, da sich das MQTT Device problemlos definieren lässt. Wahrscheinlich ist das Modul bereits bei der Installation des FHEM Debian Pakets mitgekommen.
Paralleler Versuch auf meiner Synology DS 212: Dort lässt sich das MQTT device nicht definieren:
Cannot load module MQTT
und im Log:
2015.03.18 20:19:57 1: reload: Error:Modul 00_MQTT deactivated:
Can't locate Net/MQTT/Constants.pm in @INC (@INC contains: /usr/local/perl/lib/5.16.0/armv5tel-linux /usr/local/perl/lib/5.16.0 /usr/local/perl/lib/site_perl/5.16.0/armv5tel-linux /usr/local/perl/lib/site_perl/5.16.0 /usr/local/perl/lib/site_perl/5.16.0/armv5tel-linux /usr/local/perl/lib/site_perl/5.16.0 /usr/local/perl/lib/5.16.0/armv5tel-linux /usr/local/perl/lib/5.16.0 . /volume1/@appstore/FHEM/share/fhem/FHEM /volume1/@appstore/FHEM/share/fhem/FHEM/lib) at /volume1/@appstore/FHEM/share/fhem/FHEM/00_MQTT.pm line 72.
BEGIN failed--compilation aborted at /volume1/@appstore/FHEM/share/fhem/FHEM/00_MQTT.pm line 72.
2015.03.18 20:19:57 0: Can't locate Net/MQTT/Constants.pm in @INC (@INC contains: /usr/local/perl/lib/5.16.0/armv5tel-linux /usr/local/perl/lib/5.16.0 /usr/local/perl/lib/site_perl/5.16.0/armv5tel-linux /usr/local/perl/lib/site_perl/5.16.0 /usr/local/perl/lib/site_perl/5.16.0/armv5tel-linux /usr/local/perl/lib/site_perl/5.16.0 /usr/local/perl/lib/5.16.0/armv5tel-linux /usr/local/perl/lib/5.16.0 . /volume1/@appstore/FHEM/share/fhem/FHEM /volume1/@appstore/FHEM/share/fhem/FHEM/lib) at /volume1/@appstore/FHEM/share/fhem/FHEM/00_MQTT.pm line 72.
BEGIN failed--compilation aborted at /volume1/@appstore/FHEM/share/fhem/FHEM/00_MQTT.pm line 72.
Dummerweise kann ich da das Modul nicht nachinstallieren, da dort keine vollständige Entwicklungsumgebung da ist. CPAN "meckert", das make fehlt... :(
Beste Grüße muellthos
Sorry, mit Synology kenn ich mich nicht aus, und einen gcc nachinstallieren geht auch nicht?
Sent from my iPad using Tapatalk
Hallo schka17
Nee, ich wollte kein ipkg- Manager und kein OpenWRT zusätzlich zum Synology Betriebssystem auf der Synobox. Deshalb kein Make, kein GCC, keine Entwicklungsumgebung. Ausserdem kann ich nicht programmieren und das kryptische Perl verstehe ich erst recht nicht. Ich bin mir zwar fast sicher, dass Net:MQTT ohne lowlevel C auskommt. Ich habe keine Ahnung, weder wo ich die Perl-Dateien herbekomme, noch wohin ich sie "implantieren" ;) müsste. Und Cross-Kompilieren von Perl ist laut Martin Fischer überhaupt nicht trival. Ist auch en Grund, warum ich FHEM über eher kurz als lang wieder von der Synology Box schmeißen und auf ODROID-C1 bringen werde. Der erste läufz schon testweise...
muellthos
Das verstehe ich, habe leider auch keine andere Möglichkeit als CPAN gefunden, habe leider einen Raspi bei dem das installieren über CPAN nicht funktioniert, mal schauen vielleicht habe ich am WE etwas Zeit dafür.
Gruß
Karl
Sent from my iPad using Tapatalk
wie ist das gelöst ? Ich find auch keine Möglichkeit aufm Raspi mqtt support zu installieren.
Hallo Chris,
Ich habe es bei dem störrischen Raspi dann manuell Schritt für Schritt erledigt, also zuerst den Download, dann unzippen, da gibts ein perl script, dann make, make install, und das wars. Ich muss morgen mal in die command history schauen, kann mich nicht mehr an alle Schritte im Detail erinnern.
Gruß
Karl
edit: hier die Schritte im Detail
Download der Pakete, cpan -i aufrufen, installation schägt fehl aber die Pakete sind runtergeladen.
dann in die Verzeichnisse wechseln und diese kommandos ausführen
cpan -i Net::MQTT::Simple
cd /root/.cpan/sources/authors/id/J/JU/JUERD/
unzip und tar Net-MQTT-Simple-1.20
cd Net-MQTT-Simple-1.20
perl Makefile.PL
make
make test
make install
cpan -i Net::MQTT::Constants
cd /root/.cpan/sources/authors/id/B/BE/BEANZ/
gunzip Net-MQTT-1.143260.tar.gz
tar -xvf Net-MQTT-1.143260.tar
cd Net-MQTT-1.143260/
perl Makefile.PL
make
make test
make install
Sent from my iPad using Tapatalk
OK damit scheidet das für mich aus, ich werd dann mal nen eigenen Client schreiben der FHEM Narichten in MQTT umwandelt, dann muss ich auch nicht extra für jedes Device ne Bridge anlegen.
funktioniert. BEANZ hat cpan bei mir automatisch korrekt installiert
Übrigends hier ist der kleien Service der FHEM Nachrichten automatisch als MQTT Nachrichten publisht
https://github.com/cutec-chris/fhem2mqtt
Hallo Chris,
Der link ist nicht komplett, ich nehme an da fehlt das t. Was macht denn das genau?
Gruß
Karl
Sent from my iPad using Tapatalk
Ja sry, korrigiert.
Das ist ein kleines Kommandozeilentool das sämtliche FHEM Nachrichten an einen MQTT Brooker verschickt. Habich mir gebaut weil ich auf lange Sicht sämtliche Daten über einen MQTT Brooker verteilen will und ne separate Web-GUI/Frontend direkt auf MQTT Nachrichten aufsetzen will. So hab ich dann ein schön modulares verteiltes System, und spar mit FHEM2FHEM, kann separate Automationen einfach anbinden (OpenHab z.b. kann auch MQTT) und kann mir eigene Logik einfach anbinden (Die FHEM Logik (DOIF,NOTIFY...) ist mir etwas zu durcheinander und wirkt unzuverlässig ausserdem wird fhem sehr schnell ziemlich lahm mit vielen Logikkomponenten).
Das habe ich mir fast gedacht, das gefällt mir. Ich möchte auch in diese Richtung weiterarbeiten, vor allem da Openhab auch stabiler läuft und multithreaded ist, dafür halt auch mehr Resourcen benötigt. Sobald ich ein bischen Zeit finde probiere ich das mal aus.
Gruß
Karl
Sent from my iPad using Tapatalk
Ich hab im moment noch ekine Executables hochgeladen, meld dich dann einfach bei mir dann schick ich dir kompiliertes wenn dus nicht selbst kompilieren willst.
Hallo Chris,
ich würde das auch gerne einmal ausprobieren.
Könntest du bitte auch die kompilierte Datei zu Verfügung stellen?
Danke & Gruß
Thomas
https://github.com/cutec-chris/fhem2mqtt/releases/tag/0.1
Die armhf Version ist fürs Raspbberry
Für diejenigen die sich, wie ich, erst später für MQTT entschieden haben.
Inzwischen ist Debian Stretch draußen, nun ist mosquitto mit an board und muss nicht gleich in den Sourcen von apt hinzugefügt werden. Das führt dann nur zu Fehlermeldungen.
Also gleich abkürzen mit:
sudo apt install mosquitto mosquitto-clients
WICHTIG! Erst danach die Sourcen ergänzen, da sonst die Anbindung an FHEM nicht funktioniert.
Beschrieben im FHEM Wiki
https://wiki.fhem.de/wiki/MQTT_Einführung#Installation_in_FHEM (https://wiki.fhem.de/wiki/MQTT_Einf%C3%BChrung#Installation_in_FHEM)
Nach den Befehlen:
sudo cpan install Net::MQTT:Simple
sudo cpan install Net::MQTT:Constants
muss noch FHEM neugestartet werden, wie bekannt, mit "shutdown restart"
und zum Schluss noch
define Mosquitto MQTT 127.0.0.1:1883
Gruß Marco
Bei Debian Strech muss auch noch Python Pip installiert werden.
sudo apt-get install python-pip
dann läuft alles.
Mfg