I've added and extra header with command
websockets ws;
websocket.begin(host,80,url);
websocket.setExtraHeader("serialNo: 123456");
It does make connection but it failed frequently. It gives output on serial monitor like:
[WSc] Disconnected!
[WSc] Disconnected!
[WSc] Disconnected!
Code 101[WSc] Connected to url: /api/WebSocket/fridge
[WSc] Disconnected!
[WSc] Disconnected!
[WSc] Disconnected!
[WSc] Disconnected!
[WSc] Disconnected!
[WSc] Disconnected!
Code 101[WSc] Connected to url: /api/WebSocket/fridge
[WSc] Disconnected!
Other method I've tried is tweaking WebSocketClient.cpp
file.
at line 630:
if(ws_header) {
handshake += WEBSOCKETS_STRING(
"Connection: Upgrade\r\n"
"Upgrade: websocket\r\n"
"Sec-WebSocket-Version: 13\r\n"
"serialNo: 123456\r\n" // Added this line
"Sec-WebSocket-Key: ");
handshake += client->cKey + NEW_LINE;
Added that serialNo . . line. It gives me output on serial monitor like :
[WSc] Disconnected!
Code 101[WSc] Connected to url: /api/WebSocket/fridge
[WSc] Disconnected!
Code 101[WSc] Connected to url: /api/WebSocket/fridge
[WSc] Disconnected!
Code 101[WSc] Connected to url: /api/WebSocket/fridge
[WSc] Disconnected!
Code 101[WSc] Connected to url: /api/WebSocket/fridge
[WSc] Disconnected!
Code 101[WSc] Connected to url: /api/WebSocket/fridge
[WSc] Disconnected!
Code 101[WSc] Connected to url: /api/WebSocket/fridge
It shows this alternative behavior.
I'm still trying to figure it out but I don't know how to make stable handshake.