Jump to content

New VATSIM Dataserver


Recommended Posts

We've heard your requests, and we understand that the current, colon-delimited datafile has been a pain to deal with and acts as a barrier to entrance for many new developers. As such, we have rewritten the dataserver which comes with a brand new JSON file that includes a 1:1 field mapping with the colon-delimited file. Documentation for this new file can be found here. This is officially v1.0 and is now considered in production.

We are also doing our best to embrace open-source and community involvement with our technology, so you can find the code for the new dataserver on our GitHub, here. Please feel free to create issues and open pull requests.

Please note that this does not mean we are deprecating the old file! We will continue to maintain that file for years to come to ensure that all of the current VATSIM tools you know and love continue to function properly.

Thanks for reading, and I hope you enjoy!

Regards,

  • Like 6
  • Thanks 4
Aidan Stevens
Vice President Technical Development
## [email protected]
## www.vatsim.net
## ##
Logo
Link to post
Share on other sites

Is there any metadata in the feed as to when it was generated, or is it real-time?

Cheers!

Luke

PS: Do you support TLS on the data server?

Edited by Luke Kolin

... I spawn hundreds of children a day. They are daemons because they are easier to kill. The first four remain stubbornly alive despite my (and their) best efforts.

... Normal in my household makes you a member of a visible minority.

Link to post
Share on other sites

Would love to know it as well, if it's live, or at least close-to-real (as previous data txt distributed is basically too old for some real-time managing apps), it's a game-changer.

Mateusz Zymla - 1131338

Operational Officer Assistant

spacer.png

Link to post
Share on other sites
15 minutes ago, Mateusz Zymla said:

any further reading for now 😉 ?

Basically, write a consumer client for a Kafka server and you will be able to consume a real time feed of data shortly. 

Most languages already have support for Kafka https://cwiki.apache.org/confluence/display/KAFKA/Clients

Nick Harasym
Senior Network Infrastructure Engineer 
## [email protected]
## www.vatsim.net
## ##
Logo
Link to post
Share on other sites

Yeah, we are thinking about introducing an A-CDM plugin/software/website (not decided yet), and for now on there are no publicly available any complete soft for that, so we would be forced to extract data from EuroScope. We don't know how we'd like it to look like, but extracting data directly from VATSIM data servers would make our life easier for sure 😉

Edited by Mateusz Zymla

Mateusz Zymla - 1131338

Operational Officer Assistant

spacer.png

Link to post
Share on other sites
3 hours ago, Nick Harasym said:

The above example works however it was written for our "closed beta" of the Kafka feed. Building up the consumer will be the same however the data will change slightly. 

Is it too late to get access to this?

Cheers!

Luke

... I spawn hundreds of children a day. They are daemons because they are easier to kill. The first four remain stubbornly alive despite my (and their) best efforts.

... Normal in my household makes you a member of a visible minority.

Link to post
Share on other sites

Thanks. Any chance we can get an 'effective date' field in the data server JSON feed?

Cheers!

... I spawn hundreds of children a day. They are daemons because they are easier to kill. The first four remain stubbornly alive despite my (and their) best efforts.

... Normal in my household makes you a member of a visible minority.

Link to post
Share on other sites

+1 for Kafka. Very nice, guys.

Though we have struggled with what seems to be higher than normal CPU consumption of the brokers, we are currently using Kafka at scale in a very large enterprise... and it's super dependable and mostly runs itself.

Link to post
Share on other sites
  • 3 weeks later...
  • Board of Governors
On 4/19/2020 at 12:04 AM, Luke Kolin said:

Any chance we can get an 'effective date' field in the data server JSON feed?

This was pushed up in a new version the other day with a non-breaking change. There is a new top-level bject "general" which contains the following properties

  • version - incremental changes
  • reload - not sure what this was used for in the txt file but we left it there for similarity
  • update - same format as the txt timestamp
  • update_timestamp - UTC timestamp iso format
  • connected_clients
  • unique_users
"general": {
  "version": 1,
  "reload": 1,
  "update": "20200524002549",
  "update_timestamp": "2020-05-24T00:25:49.9636563Z",
  "connected_clients": 1168,
  "unique_users": 1105
}

---

On 4/26/2020 at 8:14 PM, Mario Trunz said:

Is there a way we can get the last 10-15 flights based on the VATSIM User ID?

Please see the API for this: 

 

Matt Bozwood-Davies
 Vice President Technical Development    
## [email protected]
## www.vatsim.net
## ##
Vatsim-color-tagline.png.7b888e6f6d0ad80d1d50939ae0a60bcc.png
Link to post
Share on other sites

Fantastic - thank you!

Cheers

Luke

... I spawn hundreds of children a day. They are daemons because they are easier to kill. The first four remain stubbornly alive despite my (and their) best efforts.

... Normal in my household makes you a member of a visible minority.

Link to post
Share on other sites
  • 2 weeks later...
  • 1 month later...

Is it intended that the resource is blocked by CORS for client side javascript requests as an example? "Access to fetch at 'http://cluster.data.vatsim.net/vatsim-data.json' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled."

@Aidan Stevens

Edited by Joshua Channin
Link to post
Share on other sites
  • 1 month later...

Hey Joshua, what would be the usecase for us to allow CORS requests? I think we’d rather have all requests proxied (and cached) through each application’s server; thus reducing the final load and cost of VATSIM’s free-to-use services.

Néstor Pérez
A Random Platypus
## [email protected]
Facebook Twitter Instagram
VATSIM Logo
Link to post
Share on other sites

That makes sense Nestor. Mostly wanted to confirm the behavior was intended. I do think from a developer advocacy level, this restricts working with VATSIM to those developers able and willing to support their frontend client with an application server caching the data rather than a frontend client only and the caching occurs at the VATSIM level. But all things considered with VATSIM's free-to-use services as you mentioned, I concur with your thoughts.

Edited by Joshua Channin
Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...