Closed xspanger3770 closed 11 months ago
Thanks for the response!
Adding support for more protocols such as ringserver
is definitely one of my considerations for future updates, although I haven't tested them yet. It might be needed to upgrade the code handling the processing of incoming data to accept more generic inputs than just seedlink packets and actually it needs upgrade anyways because it is not capable to accept data in varying order, which even the seedlink protocol sometimes does.
The other issue I noticed was that even though for example eida.bgr.de
seedlink network reports many available stations, when selecting them, data only for one or two stations is arriving and I didn't really dig deeper into why...
And once again thanks for the help! Any further ideas appreciated.
Update: I tried running the following code:
SeedlinkReader reader = new SeedlinkReader("eida.bgr.de", 18000);
reader.select("SX", "SCHF", "", "HHZ");
reader.select("GE", "RUE", "", "HHZ");
reader.startData();
while (reader.hasNext()) {
SeedlinkPacket slp = reader.readPacket();
System.out.println(slp.getMiniSeed().getHeader().getStationIdentifier()+", "+slp.getMiniSeed().getHeader().getChannelIdentifier()+", "+slp.getMiniSeed().getHeader().getLocationIdentifier());
}
But every time the SeedlinkReader sends data for only the last station selected (RUE). This only happens to some seedlink hosts and idk why
Workaround will be in 0.9.4, full fix when library updates
I noticed that
rtserve.iris.washington.edu
does not want to work for the NC network along with many other networks.NCEDC has both a fdsnws-dataselect and a service called BARD. Both of which cover the NC network along with many other networks that iris does not want to serve from there seedlink server.
It would be possible to use
ringserver
from Earthscope/IRIS which has a feature which scans a directory for mseed files which it can make available through its seedlink server. This is slightly hacky and would require a program watching ringserver logs for channel stream requests and to start downloading that data and saving it in the dir.It would also be possible to implement a stream-over-dataselect thread/process which runs in globalquake and works alongside the current seedlink method. One issue here is i have read IRIS does not want there dataselect service to be used for realtime, while NCEDC does not seem to care.