micropython / micropython/micropython-lib
umqtt subscribe to topic with 23 bytes fails
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 2.9k
- Forks
- 1.1k
- Ø Merge
- 7 T. 6 Std.
- Gemergte PRs (30 T.)
- 3
Beschreibung
Hi,
I can't subscribe to topic longer than 122 bytes. Publishing works fine!
I kindly ask you to verify and hopefully fix it
Thanks a lot
Danny
OK - working:
#122 bytes
mqtt.subscribe(b"/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/2")
but one more character:
#123 bytes
mqtt.subscribe(b"/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/234567890/23")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "test.py", line 169, in <module>
File "umqtt_simple.py", line 154, in subscribe
File "umqtt_simple.py", line 173, in wait_msg
OSError: -1
this might be related to #163 which also deals with 127 bytes
it might be related to https://github.com/micropython/micropython-lib/blob/f20d89c6aad9443a696561ca2a01f7ef0c8fb302/umqtt.simple/umqtt/simple.py#L148 as this is hitting the 128...
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, in umqtt_simple.py die Bereiche um subscribe in Zeile 154 und wait_msg in Zeile 173 zu lesen, und vergleiche sie anschließend mit der referenzierten Implementierung von umqtt.simple in der Nähe von Zeile 148. Reproduziere die Grenze mit den bereitgestellten Topics mit 122 und 123 Bytes und verfolge das daraus resultierende OSError. Erledigt bedeutet, dass die Subscription an der gemeldeten Grenze erfolgreich ist und das Verhalten durch eine Regression-Prüfung abgedeckt ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- embedded-iot, networking
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100