Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MQTT Server erreichbar per IP Adr. und / oder DNS, ON / OFF Feature Request #88

Closed
NDS234 opened this issue Jul 4, 2022 · 10 comments
Closed
Labels
enhancement New feature or request

Comments

@NDS234
Copy link

NDS234 commented Jul 4, 2022

Kopie von https://www.mikrocontroller.net/topic/525778?goto=7116390#7116209

Ist nur ein Vorschlag:

Es spielt doch gar keine Rolle wor ein MQTT Server steht !
Das kann intern oder extern sein.

Mein Vorschlag für die Programmierer wäre:

MQTT ein/aus wählbar

Wenn MQTT ein, dann

A) IP Addr und Timeout in ms angebbar
B) DNS Adr. und Timeout in ms angebbar

Reihenfolge zur Erreichbarkeit Auswahl:
(folgende Optionen nur wählbar, wenn A) bzw. B) auch ausgefüllt)

Nur A)
Nur B)
Erst A) und wenn nicht erreichbar bis Timeout dann B)
Erst B) und wenn nicht erreichbar bis Timeout dann A)

So was in der Art würde vielleicht Sinn machen.

@thinklerde
Copy link

Es wäre ja schon schön, wenn man anstatt einer IP Adresse eine Webadresse eingeben könnte. Z:B: "xyz.ddns.net"

@lumapu
Copy link
Owner

lumapu commented Jul 4, 2022

ja das stimmt, guter Feature-Request. Wie lange URLs sollen wir zulassen - ist immer eine Speicherfrage und die Geschäcker sind bekanntlich verschieden. Die Vorgabe kann natürlich dann wieder in der config.h geändert werden - aber der Default sollte schon für den Mainstream passen finde ich.
Genügen 32 Zeichen oder lieber gleich 64? Es geht natürlich jede beliebige Zahl - ich denke nur gerne in 2er-Potenzen.

@lumapu lumapu added the enhancement New feature or request label Jul 4, 2022
@NDS234
Copy link
Author

NDS234 commented Jul 5, 2022

wenn man z.B. mal nimmt: mqtt.meinhaus.meinestadt.net wären das 28 Zeichen. Ich denke, 32 Zeichen reichen da für den DNS Namen. Ein vielfaches von 2 oder vielleicht besser 4 würde ich vielleicht nehmen wegen dem Alignment im Speicher.
Bevor nun die Frage nach Defaults für die TimeOuts kommen:
MQTT Server Erreichbarkeit TimeOut für DNS viellecht auf 500 ms als Default setzen ? (u16)
MQTT Server Erreichbarkeit TimeOut für IP vielleicht auf 150 ms als Default setzen ? (u16)
Jemand, der damit was anzufangen weiss, kann es ja dann ändern. Ich denke, die beiden Werte sollten auf der Sicheren Seite sein, für die, die damit nicht so richtig was anfangen können.

@stefan123t
Copy link
Collaborator

@lumapu & @NDS234 ja 32 sollten grade so reichen z.B. auch für die verbreiteten "123456789ABCDEF.myfreez.net" Adressen, meine hat zumindest nur 28 chars. Eintragen in der config.h wäre m.E. ausreichend.

@stefan123t
Copy link
Collaborator

Haha den DNS Eintrag in PR #98 wollte @thinklerde als Feature, vielleicht kann er es ja mal testen ?
Müssen wir jetzt eigentlich auch einen DNS Server (1.1.1.1 oder 8.8.8.8, etc.) konfigurierbar machen oder reicht der, den der ESP über DHCP bekommen hat ?

@NDS234
Copy link
Author

NDS234 commented Jul 10, 2022

Da es kein Zwang ist, per DHCP einen DNS Server bekannt zu machen, wäre es optional irgendwann evt. mal sinnvoll, einen von Hand eintragen zu können. Für die, die eine Fritzbox ihr Eigen nennen ist ja normalerweise die Fritzbox der DNS Server. Bei anderen Routern wird es sicher ähnlich sein. Erst mal würde ich da nix machen. Gibt noch Wichtigeres zu tun.

@stefan123t
Copy link
Collaborator

Ja, wenn man einen anderen (externen) DNS im ESP angibt dann findet er evtl. lokale Namen / Adressen nicht mehr. Es wird also ggf. beliebig kompliziert. Ich denke wir verlassen uns erstmal auf DHCP und schliessen diesen Feature Request wenn @thinklerde es getestet hat.

stefan123t added a commit to stefan123t/ahoy that referenced this issue Jul 10, 2022
@lumapu lumapu closed this as completed in 10771d8 Jul 11, 2022
@thinklerde
Copy link

das scheint soweit zu funktionieren. Allerdings aktualisiert er nur noch alle 90sek. lässt sich auch nicht anders einstellen. General Intervall auch nicht kleiner 30sek?

@thinklerde
Copy link

thinklerde commented Jul 11, 2022

das scheint soweit zu funktionieren. Allerdings aktualisiert er nur noch alle 90sek. lässt sich auch nicht anders einstellen. General Intervall auch nicht kleiner 30sek?

ich habe es jetzt erstmal in der config.h bei mir geändert. MIN_SEND_INTERVAL auf 5
die Eingabe bei MIN_MQTT_INTERVALL wird mit der MIN_SEND_INTERVAL anscheinend addiert.
Die habe ich bei mir auf 1 gesetzt und habe nun somit einen MQTT Intervall von 6

Habe den Wert bei MIN_MQTT_INTERVAL auf 0 gesetzt, so scheint das dann erst mal bei mir zu passen. Läuft bisher ganz gut.

Vielen Dank!

@stefan123t
Copy link
Collaborator

stefan123t commented Jul 11, 2022

@thinklerde ja ich habe die Default Minimum Werte mal etwas höher angesetzt um Probleme vor allem bei neuen Nutzern auszuschließen. Wer seinen Inverter im Denial-of-Service Modus 🥲 betreiben / abfragen will, kann das ja wie Du in der config.h jederzeit anpassen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants