Comments (1)
I am also in need of a way to detect if my server is down.
I have a list of servers and I would like to connect to one that is up and running.
I have taken a similar approach to @odesey.
Here is what I have done so far.
const getServer = () => {
const serverUrls = [
"wss://..../websocket",
"wss://...../websocket",
];
let Server: SimpleDDP | null = null;
let isServerHealthy = false;
serverUrls.map(async endpoint => {
try {
if (!Server?.connected) {
const opts = {
endpoint,
SocketConstructor: ws,
reconnectInterval: 500,
autoConnect: false,
autoReconnect: false
};
Server = new SimpleDDP(opts, [simpleDDPLogin]);
await Server.connect()
isServerHealthy = await Server?.call("healthcheck");
}
console.log("url", endpoint, isServerHealthy, Server?.connected); // never called
} catch (err) {
console.log("Error connect server", err); // never called
}
});
console.log("final status", Server?.connected); // called
return Server;
};
Also, none of the event callbacks are called.
if the last endpoint in my array is valid, then the connection is established and everything works.
Do you have any ideas on how I could accomplish this?
Thanks.
from simpleddp.
Related Issues (20)
- Connecting to non-existent / listening endpoint HOT 4
- Use simple-DDP in the browser HOT 1
- Browser DDP call promise never resolves HOT 11
- Handling "connection error" HOT 6
- isReady() returns false right after "await ready()" promise HOT 16
- uncaught error when "nosub" message is received HOT 2
- How to set header? HOT 4
- server.on('event') HOT 2
- Custom Login Handler
- Meteor.loggingIn() equivalent HOT 4
- Struggling to get data from ddp endpoint HOT 2
- [Feature request] Set custom timeout for an specific server.call()
- Reactive subscribe args? HOT 2
- Empty data on fetch, and onChange does not work either HOT 1
- WebpackError: Unsafe builtin usage https.get
- Session disconnected and loginSessionLost event is not called
- can you add status check manually?
- Is there any solutions or workaround to connect with Android?
- Can use the methods, publish to custom login in another server with meteor?
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 simpleddp.