This page will outline efforts to develop a "Hello World" version of Obs. Status Sharing Operational Data Sharing (ODS) by "end of summer" 2023. "end of summer" ~= Autumnal Equinox = September 23, 2023
GBT data sender - will retrieve GBT schedule data and send to Obs Status DB as schedule data becomes available. Schedule data is usually available well in advance of 20 minutes prior to observation, but schedule can change.
VLA data sender - will retrieve VLA schedule data and send to Obs Status DB as schedule data becomes available. VLA schedule is not currently fixed 20 minutes prior to observation. Will require coordination with Science Ops, but if 20 minute commitment can be agreed schedule data is available to send to Obs Status DB.
Obs Status DB - will aggregate GBT and VLA schedule data for query by API process. Will be hosted on VLA database server. Growth is not anticipated to be that large even over a few years. Schema needs finalization, but proposed columns are:
The JSON keys are described in each Observatory data sender.
API process - will expose REST interface to SpaceX. API process will receive request from SpaceX, query Obs Status DB for GBT and VLA observation status data and format and send response to SpaceX. API format to be finalized. Interface security needs to be finalized. API process will be deployed on a VLA web server.
1) Finalize DB schema and deploy DB.
Schema described here: OSSDB schema json v0.1.pdf. Test version deployed.
2) Finalize API process security requirements and document here.
Ticket entered with helpdesk. Awaiting response.
3) Finalize API format and document here.
Described here: ODS Database API Operation Description
4) Develop GBT data sender.
In progress.
5) Develop VLA data sender.
It's described here.
6) Develop and deploy API process.
Demo version deployed internally: http://turing.aoc.nrao.edu:8191/ods_data
1) How will the exposed interface be secured?
answer: We can use forward proxy from obs.vla.nrao.edu. obs.vla.nrao.edu rewrites all http port 80 requests to https port 443. Apache forward proxy can forward external URL (example: obs.vla.nrao.edu/obsstatussharing) to any internal host and port. We do this on obs.vlba.nrao.edu for the CST running on elbow:8000 and know forward proxy passes muster with InfoSec.
2) Which VLA web server will host the API?
answer: See above. We can host anywhere internally and use forward proxy from obs.vla.nrao.edu to expose the API publicly.
3) Will VLA observational data be fixed 20 minutes in advance?
VLA and GBT will update observation data as it is scheduled. API will provide all scheduled observations current and future to the request time.
4) What VLA will send to DB and expose in the API during Maintenance and Test periods (or when OST is not used)?
answer: If test and maintenance observations need protection from RFI they schedule the observations in a way that the "data senders" can forward the schedule to Obs Status DB. Otherwise, and maybe for "Hello World", test and maintenance observations do not need to be forwarded to the Obs Status DB.
5) Will requests from SpaceX be limited to GET requests or would they be able to modify the database?
answer: API process, and by extension SpaceX or other API user, will have read-only access to the DB. However, there may be other information in the API request that warrants POST. Example: security token.