@@ -17,10 +17,20 @@ SocketIOclient::~SocketIOclient() {
17
17
18
18
void SocketIOclient::begin (const char * host, uint16_t port, const char * url, const char * protocol) {
19
19
WebSocketsClient::beginSocketIO (host, port, url, protocol);
20
+ WebSocketsClient::enableHeartbeat (60 * 1000 , 90 * 1000 , 5 );
20
21
}
21
22
22
23
void SocketIOclient::begin (String host, uint16_t port, String url, String protocol) {
23
24
WebSocketsClient::beginSocketIO (host, port, url, protocol);
25
+ WebSocketsClient::enableHeartbeat (60 * 1000 , 90 * 1000 , 5 );
26
+ }
27
+
28
+ /* *
29
+ * set callback function
30
+ * @param cbEvent SocketIOclientEvent
31
+ */
32
+ void SocketIOclient::onEvent (SocketIOclientEvent cbEvent) {
33
+ _cbEvent = cbEvent;
24
34
}
25
35
26
36
bool SocketIOclient::isConnected (void ) {
@@ -83,20 +93,23 @@ void SocketIOclient::loop(void) {
83
93
unsigned long t = millis ();
84
94
if ((t - _lastConnectionFail) > EIO_HEARTBEAT_INTERVAL) {
85
95
_lastConnectionFail = t;
86
- // WebSocketsClient::sendTXT(eIOtype_PING);
96
+ DEBUG_WEBSOCKETS (" [wsIOc] send ping\n " );
97
+ WebSocketsClient::sendTXT (eIOtype_PING);
87
98
}
88
99
}
89
100
90
- void SocketIOclient::runCbEvent (WStype_t type, uint8_t * payload, size_t length) {
101
+ void SocketIOclient::handleCbEvent (WStype_t type, uint8_t * payload, size_t length) {
91
102
switch (type) {
92
103
case WStype_DISCONNECTED:
104
+ runIOCbEvent (sIOtype_DISCONNECT , NULL , 0 );
93
105
DEBUG_WEBSOCKETS (" [wsIOc] Disconnected!\n " );
94
106
break ;
95
107
case WStype_CONNECTED: {
96
108
DEBUG_WEBSOCKETS (" [wsIOc] Connected to url: %s\n " , payload);
97
109
// send message to server when Connected
98
110
// Engine.io upgrade confirmation message (required)
99
111
WebSocketsClient::sendTXT (eIOtype_UPGRADE);
112
+ runIOCbEvent (sIOtype_CONNECT , payload, length);
100
113
} break ;
101
114
case WStype_TEXT: {
102
115
if (length < 1 ) {
@@ -136,6 +149,7 @@ void SocketIOclient::runCbEvent(WStype_t type, uint8_t * payload, size_t length)
136
149
break ;
137
150
}
138
151
152
+ runIOCbEvent (ioType, data, lData);
139
153
} break ;
140
154
case eIOtype_OPEN:
141
155
case eIOtype_CLOSE:
0 commit comments