Comments (2)
Hi, @altjz! Thanks!
Please use server's connection
event to get the socket and set events on it.
https://github.com/elpheria/rpc-websockets/blob/master/API.md#event-connection
For example:
server.on('connection', (socket, request) => {
socket.on('close', () => {
// do some cleanup job
})
})
websockets/ws is the backend library underneath rpc-websockets, so this applies:
https://github.com/websockets/ws/blob/master/doc/ws.md#event-close-1
from rpc-websockets.
thanks @mkozjak for quick response.
I tried this before, but is it possible to do some cleanup job after all sockets disconnect from specific namespace?
server.on("connection", (socket, request) => {
socket.on("close", () =>
{
const u = url.parse(request.url, true);
const ns = u.pathname;
console.log('client.size: ', server.namespaces[ns].clients.size); // this won't be 0
if (server.namespaces[ns].clients.size === 0) {
console.log('clean up');
}
})
});
from rpc-websockets.
Related Issues (20)
- Publish 7.4.13 to NPM HOT 1
- How to get the Emit response ?
- Dependency Vulnrabilities HOT 3
- Ignore null in result/error HOT 2
- Help! Run ws on the same port as a http Express? HOT 2
- Access connected clients HOT 4
- Is this the proper way to close the socket? HOT 1
- The Map type cannot be returned using the Server registration method HOT 2
- `fn` type bound in `Server.register` might be slightly off HOT 2
- Migrate from request
- Resolve tough-cookie vulnerability
- How to handle exceptions on server? HOT 3
- Q: namespaces HOT 1
- process is hanging after calling client.close HOT 3
- Whether there is an interest in providing an extensible encoder and decoder? HOT 5
- call results in -32602 Invalid params when no params are given cause it sents null HOT 3
- When sents message without params it is ignored HOT 1
- Any reason emit events on namespace level will be broadcasting instead of only to subscribers like on top level HOT 1
- Sending ArrayBuffer is very awkward
- Target `esnext` when building releases
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 rpc-websockets.