Comments (2)
Could we rethink mqtt api as it is now?
Generally, no. There was RFC for MQTT implementation: micropython/micropython#2055, people who were interested participated in the discussion and affected how it was implemented. But it's implemented now.
Unfortunately as many other libraries I see that mqtt.simple tries to make it's own 'socket'.
I'm big fun of dependency injection pattern myself, but others don't have to (be fan of it or even understand it), see for example micropython/micropython#2285 (comment) . Also, it has limits on its use to. For MQTT support, there was (implicit) requirement that it was easy to use, and there was "robustness" support (also easy to use), so socket is the part of the controlled state.
you will start to bloat protocol api with socket/ssl options
Addressed by 98c6fb9.
So, what you think?
You can always write your MQTT implementation (and popularize/support it).
from micropython-lib.
I see, missed that, sorry than...
ssl_params seems that as good enough solution
2016-08-24 0:23 GMT+02:00 Paul Sokolovsky [email protected]:
Could we rethink mqtt api as it is now?
Generally, no. There was RFC for MQTT implementation:
micropython/micropython#2055
micropython/micropython#2055, people who were
interested participated in the discussion and affected how it was
implemented. But it's implemented now.Unfortunately as many other libraries I see that mqtt.simple tries to make
it's own 'socket'.I'm big fun of dependency injection pattern myself, but others don't have
to (be fan of it or even understand it), see for example micropython/micropython#2285
(comment)
micropython/micropython#2285 (comment)
. Also, it has limits on its use to. For MQTT support, there was (implicit)
requirement that it was easy to use, and there was "robustness" support
(also easy to use), so socket is the part of the controlled state.you will start to bloat protocol api with socket/ssl options
Addressed by 98c6fb9
98c6fb9
.So, what you think?
You can always write your MQTT implementation (and popularize/support it).
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
#93 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFlRAjZpHGUxOXSdFlYlESvU_1XHK7pXks5qi3LEgaJpZM4JptdL
.
Jan Koniarik
[email protected]
from micropython-lib.
Related Issues (20)
- Deque is not a deque HOT 2
- aiohttp TLS websocket fails for continously sending packages on ESP32 HOT 11
- aiohttp sends Sec-WebSocket-Key with in wrong with b'' envelope HOT 2
- BLE: Bluetooth Low Energy HOT 4
- python-ecosys/requests can not post Chinese, why not add `; charset=UTF-8` to Content-Type? HOT 2
- Why can't I install umqtt? HOT 1
- Handle MemoryError in aioble_central.py scanner event HOT 1
- 'TypeError: can't convert NoneType to int' using aioble on Pico W HOT 1
- Handling the # TODO: Handle failure in the _IRQ_ENCRYPTION_UPDATE event
- Feature request: support for the HTTP Digest authentication on the requests and/or the aiohttp HOT 2
- SX1262 LORA driver error: RuntimeError: Internal radio Status (2, 1) OpError 0x20 HOT 2
- OSError: no SD card HOT 1
- HID keyboard won't release keys when called via schedule HOT 6
- Writing to a second serial connection in a thread has errors HOT 4
- Cannot init USB devices in boot.py HOT 5
- The order of bt_addr passed up in the ScanResult HOT 1
- Serial connections dropping characters, not flushing buffers HOT 2
- Use Emulation to Run RP2 PIO Code on Other Ports HOT 3
- Unable to save service discovery during bonding makes it impossible to get data from some bonded devices on reconnect HOT 3
- Can someone add a mini version of web3.py library to execute some blockchain transactions
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from micropython-lib.