Support other file formats (other than XML VOEvent) to ingest external events from
Currently we can only ingest VOEvent XMl files to create external events via `gracedb.create_event`. There is already a need ingest events delivered via Kafka that have a `.json` format, which we are currently creating a workaround by converting to a VOEvent packet here (note this code has not been merged yet and subject to change):
https://git.ligo.org/emfollow/gwcelery/-/blob/dfdd84a97dec60257c4d7bd91d6c0c9442ec3de6/gwcelery/tasks/external_triggers.py#L561-626
Example alert:
https://git.ligo.org/emfollow/gwcelery/-/blob/a35b3ba998ab4726f90d5fb3cdf87d365cccbc65/gwcelery/tests/data/kafka_alert_fermi.json
In general we should make a more flexible system to ingest external events as GCN moves towards Kafka, potentially able to add new notice types/formats as needed (e.g. Kamland notices also have a different format, etc.)
I assume we need to make additional parser functions such as [`populateGrbEventFromVOEventFile`](https://git.ligo.org/computing/gracedb/server/-/blob/79c9b1ead0086fc4789a32c597b84c7abaee9513/gracedb/events/translator.py#L646) and add options to use the and determine which schema is being used [here](https://git.ligo.org/computing/gracedb/server/-/blob/79c9b1ead0086fc4789a32c597b84c7abaee9513/gracedb/events/translator.py#L352).
I can personally help with this development if needed, especially after the start of O4.
issue