A simple and flexible WebSocket server library that extends `EventEmitter` to handle custom events. This library allows you to easily create and manage WebSocket servers, either by providing a port number or using an existing `WebSocketServer` instance.
npm install @999-cs/websocket-itEventEmitter to handle custom events. This library allows you to easily create and manage WebSocket servers, either by providing a port number or using an existing WebSocketServer instance.
bash
npm install @999-cs/websocket-it
`
Usage
$3
You can create a new WebSocket server by providing a port number:
`javascript
const { websocketIt } = require("@999-cs/websocket-it");
const port = 8080;
const server = websocketIt.createServer({ port });
server.on("connection", (ws) => {
console.log("A new client has connected");
});
server.on("messageCreate", (data) => {
console.log("messageCreate event received with data:", data);
//server.wss.clients -> Get all clients
//server.WebSocket -> try it by yourself and discover what this property do
});
server.on("close", () => {
console.log("A client has disconnected");
});
server.on("error", (error) => {
console.error(An error occurred: ${error});
});
console.log(WebSocket server started on port ${port});
`
$3
You can also use an existing WebSocketServer instance:
`javascript
const { WebSocketServer } = require("ws");
const { websocketIt } = require("@999-cs/websocket-it");
const existingWss = new WebSocketServer({ port: 8081 });
const server = websocketIt.createServer({ wss: existingWss });
server.on("connection", (ws) => {
console.log("A new client has connected");
});
server.on("messageCreate", (data) => {
console.log("messageCreate event received with data:", data);
});
server.on("close", () => {
console.log("A client has disconnected");
});
server.on("error", (error) => {
console.error(An error occurred: ${error});
});
console.log(WebSocket server is using an existing instance on port 8081);
`
$3
To connect to the WebSocket server from the frontend, you can use the WebSocket API available in modern browsers. Below is an example of how to connect to the WebSocket server and handle events.
`html
WebSocket Test
WebSocket Test
`
Note: It is important to send an object with the correct structure:
`javascript
{
eventName: "messageCreate",
data: { text: message,author : "someone" }
}
`
The correct structure includes two properties:
- eventName: A string representing the name of the event.
- data`: An object containing the data associated with the event.