#include <WiFi.h>
#include <WebSocketsClient.h>
#define WIFI_SSID "Wokwi-GUEST"
#define WIFI_PASSWORD ""
#define WIFI_CHANNEL 6
WebSocketsClient webSocket;
const char* websocket_server = "studybotapi.glitch.me";
const int websocket_port = 5000;
void webSocketEvent(WStype_t type, uint8_t * payload, size_t length) {
switch (type) {
case WStype_CONNECTED:
Serial.println("Connected to WebSocket server");
webSocket.sendTXT("Hello from ESP32"); // Send a message when connected
break;
case WStype_DISCONNECTED:
Serial.println("Disconnected from WebSocket server");
break;
case WStype_TEXT:
Serial.println("Received message:");
Serial.println((char*)payload); // Print the received message
break;
case WStype_BIN:
Serial.println("Received binary data");
break;
}
}
void setup() {
Serial.begin(115200);
// Connect to Wi-Fi
WiFi.begin(WIFI_SSID, WIFI_PASSWORD, WIFI_CHANNEL);
Serial.print("Connecting to WiFi ");
Serial.print(WIFI_SSID);
// Wait for Wi-Fi connection
while (WiFi.status() != WL_CONNECTED) {
delay(100);
Serial.print(".");
}
Serial.println(" Connected!");
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
// Connect to the WebSocket server securely (wss://)
webSocket.beginSSL(websocket_server, websocket_port, "/wss");
webSocket.onEvent(webSocketEvent);
webSocket.setReconnectInterval(1000);
}
void loop() {
// Keep WebSocket connection alive
webSocket.loop();
delay(1000);
}