-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Update WiFiServer docs for ::write(all clients) #6338
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
Conversation
Fixes esp8266#5116 Fixes esp8266#2743 The Arduino WiFiClient object allows sending the same packet to all connected clients of a WiFiServer. In their implementation it may make sense, but on the 8266 with things like SSL it doesn't. Update the docs to note that WiFiServer::write() is a no-op, and that the app should use the WiFiCliebnt::write() on all connected clients as appropriate.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This call is impossible to cleanly implement in any environment without a heavy infrastructure (even glibc doesn't have it).
addition:
Why is multicast existing with UDP and not TCP ?
That would be the answer to wifiserver.write() implementation complexity
why implement Arduino Server class at all? there is no use case where a server object is useful as Server. |
@JAndrassy |
I recently made a generic ArduinoOTA library for AVR, SAMD, nRF5, esp8266, esp32 for many different networking libraries (for example to upload to esp8266 over Ethernet). The code of the library interacts with client object as Client class. And there is a server to receive the binary, but there was no use for Server base class. it has only Now I write a new WiFiEsp library (Arduino WiFi API over AT commands of connected esp8266). I decided not to derive the WiFiServer class from Server class in this library. Then I don't need to add dummy TL;DR Arduino API Server class is useles |
Fixes #5116
Fixes #2743
The Arduino WiFiClient object allows sending the same packet to all
connected clients of a WiFiServer. In their implementation it may make
sense, but on the 8266 with things like SSL it doesn't.
Update the docs to note that WiFiServer::write() is a no-op, and that
the app should use the WiFiCliebnt::write() on all connected clients as
appropriate.