GOTO-OBS / gtecs-alert

GOTO Telescope Control System: code for VOEvent alert processing
3 stars 2 forks source link

Add Einstein Probe alerts #80

Closed martinjohndyer closed 4 months ago

martinjohndyer commented 6 months ago

https://gcn.nasa.gov/missions/einstein-probe

Note that page suggests they are only being published as JSON over Kafka.

SEE: https://einsteinprobe.feishu.cn/docx/EQOkdbjssoh8BsxqMZ5cQ8DPnvh

https://gcn.nasa.gov/docs/schema/v4.0.0/gcn/notices/einstein_probe/wxt/alert.schema.json

martinjohndyer commented 5 months ago

This is more annoying than I thought. It seems new GCN projects will only be publishing EP notices using the new JSON schema (https://gcn.nasa.gov/docs/notices/schema) with an example shown here: https://gcn.nasa.gov/docs/schema/v4.0.0/gcn/notices/einstein_probe/wxt/alert.schema.json. These will come via the gcn.notices stream. Previously the gcn.classic stream was publishing "classic" alerts as XML VOEvents, and when I looked at moving to SCiMMA HOPSKOTCH (https://scimma.org/hopskotch) they repackage these as JSON. But that's different from the new "Unified GCN" schema, which currently SCiMMA doesn't publish (I've sent them a ticket).

I do really like the Hop client (https://github.com/scimma/hop-client) over the "official" GCN client (https://github.com/nasa-gcn/gcn-kafka-python), and I've been working to convert the sentinel over (ISSUE NEEDED). But until they add the newer GCN alerts then I'll have to hold off.

martinjohndyer commented 4 months ago

84 adds EP alerts into the system, at last.

However, one major annoyance is that the alerts don't include a unique ID, so we have to refer to them just using the timestamp. Apparently EP are going to add a Trigger ID (Paul O'Brien, personal communication), but there's no update to the GCN schema yet (see https://github.com/nasa-gcn/gcn-schema/issues/159). Until that comes in and we start receiving the new alerts I'm tempted to hold off deploying anything.

martinjohndyer commented 4 months ago

GCN schema 4.1.0 added in an ID field for EP alerts (https://github.com/nasa-gcn/gcn-schema/pull/160/commits/1ebc420a3e1ef1040438f653be9f4321b4c4c086). It's an array for some reason, but it's better than nothing!