Comments (5)
Best of luck! Let me know if you need help with it (my email is in my profile)
from arduinowebsockets.
Hi.
What kind of interface are you thinking about? You mean being able to do client.send(jsonObj)
?
If you can add some code examples, it might help me understand exactly what you mean 😃
Gil.
from arduinowebsockets.
No, I think I mean being able to do serializeJson(obj, client);
and deserializeJson(doc, client);
like he is able to do with the regular WiFiClient
Why I started to look into this in the first place was that I caused a stack overflow by using that middle storage char[].
from arduinowebsockets.
You don't have to use a middle storage char[], you could use std::string which is returned by msg.rawData()
which will not leak and is much safer.
I don't think it is correct to make WebsocketsClient
a Stream
, because a client is much more than just stream of data. For example, calling serializeJson(obj, client)
, do you expect the message to be sent as binary message or text? Maybe as the content of a ping?
You could try and extend the library by making WebsocketsClient
inherit from the Arduino Stream class, which will give you your desired behavior. Personally, I much prefer the explicit sendJson
you implemented.
Gil.
from arduinowebsockets.
Ok, cool! I will use rawData.
Fair, I understand your points on not modifying this library. But maybe I will give it an attempt to do a subclass as you suggest or try as suggested in arduinojson implementing a CustomWriter
and a CustomReader
. Not very skilled in C++ but I will share my results if I succeed.
Thanks!
from arduinowebsockets.
Related Issues (20)
- poll() disconnects client HOT 7
- How to get a reference of the web socket client that dispatched the msg callback
- Hieromon/AutoConnect & WebSockets Client on ESP8266 - Can't Establish wss
- Secured-ESP8266-Client can't seem to receive any messages while connection is open HOT 1
- Compilation error: 'WebsocketsClient' does not name a type ?? HOT 3
- Getting a error from the TCPServer using the Arduino GIGA R1 WIFI on the ESP-32Client code. HOT 10
- ESP32-CAM WebSocket Server: Failure to Stream Camera Feed after Page Refresh or Multiple Connections
- WSS Connection error
- [ 5236][E][WiFiClient.cpp:313] setSocketOption(): fail on -1, errno: 9, "Bad file number" HOT 2
- Reconnecting after lost connection HOT 2
- Disconnecting almost inmediately
- Random disconnects, fails on binary ping including 0x00 HOT 1
- Issue with WSS and ESP 32 HOT 4
- Esp32 WebSocket Client won't work with WebSocket Node.js server. HOT 3
- Client-Message-Buffer
- ESP32 Server disconnected when receiving messages HOT 1
- Compilation errors with arduino_esp32 version 3.0.0 HOT 6
- wrong username
- Project is dead
- network::TcpServer* _server HOT 1
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 arduinowebsockets.