socket = {
const socket = new WebSocket("wss://atlas-stream.ripe.net/stream/");
socket.onmessage = function (event) {
const r = JSON.parse(event.data)[1];
const rtts = r.result ? r.result.map((r) => r.rtt).filter((r) => r) : [];
const rtt = d3.min(rtts);
if (rtt < 10.0 && Math.random() < chances.get(r.probe.country_code)) {
world.ringsData(
world
.ringsData()
.concat([
{
lat: coordinates.get(r.prb_id)?.lat,
lng: coordinates.get(r.prb_id)?.lon,
maxR: 3,
propagationSpeed: 1,
repeatPeriod: 0
}
])
.slice(-1000)
);
}
};
socket.onopen = function (event) {
this.send(JSON.stringify(["atlas_subscribe", params]));
};
return socket;
}