Open Tkael opened 5 years ago
Additionally, Canonn has cloned EDDN to create a science-specific EDDN-style reporting tool. https://github.com/canonn-science/CEDDN/tree/master/schemas https://ceddn.canonn.tech/
Placed on hold for the time being - Canonn's API is in too much flux to implement this right now.
As an Explorer I'm curious how you see this new API benefiting exploration? I know nothing about Canonn.
This would allow you to contribute data to support Cannon research efforts as you explore. Data about biological and geological surface sites you discover or new codex entries, for example, would be sent to Cannon. Cannon could then use the data to map known locations and make that data available to other commanders, to study trends and discover patterns correlated with the distribution of phenomena, etc.
Is this more viable now? I am not a C# guy but would love to contribute if the APIs are stable enough.
TBH, I'm not certain. We'll need to re-evaluate and see where they are at.
So I just wanted to directly provide an update to the Canonn API. We are still going strong, I do have a number of planned updates that are currently pending (Waiting on EDMC and likewise our plugin to move over to Python 3).
To reiterate on how reports should be sent and which ones I think would be easy to implement (after talking with @Tkael on discord):
All of the Biology endpoints:
/apreports
/bmreports
/btreports
/fgreports
/twreports
(Not counting TB here as it is a very specific data set)
All of the Geology endpoints:
/csreports
/fmreports
/gvreports
/gyreports
/lsreports
Optionally you could support the reporting of GR/GS however as of right now the journal doesn't provide enough information for me to accept these reports automatically (all the geo/bio are accepted and verified automatically).
With the Geo/Bio the data structure you need to send is fairly straight forward (I have clipped this to the data that pertains only to senders such as EDDI)
{
"userType": "pc",
"reportType": "new",
"systemName": "HD 63154",
"bodyName": "HD 63154 B 3 A",
"latitude": -20.7562, # Pull from status.json
"longitude": -177.1881, # Pull from status.json
"type": "codex_ent_seed", # Please use the codex name
"cmdrName": "Criddles", # Required to be exactly how it is in game
"cmdrComment": "If you support user interaction for comments, this is where they go",
"isBeta": false, # This should be changed if you support using your client in a beta release of the game
"clientVersion": "yourclient-0.0.1",
"reportStatus": "pending" # MUST be pending, any other string here will be discarded and rejected
}
For reference on some of the enumeration and boolean values in that structure you can also see this on our docs (Docs are still a WIP): https://docs.canonn.tech/report/reporting-to-canonn.html#breakdown-of-report-fields
The other endpoints listed for now I would suggest just avoiding them, I am doing a bit of cleanup and reorganizing of some of those endpoints as they were added for testing/debug purposes to see how we want to handle the data. I'll provide more updates if I have other endpoints to suggest.
Possibly also submit data to https://elite-igau.github.io/.
Servers: https://api.canonn.tech (live server) https://api.canonn.tech:2053 (beta staging / app test server)
Cannon API docs: https://api.canonn.tech/documentation#/ https://docs.canonn.tech/ (WIP, in development)
API request test platform (see schema ref. on right): https://api.canonn.tech:2053/graphql
Additional info about the STRAPI framework: https://strapi.io/documentation/3.x.x/ https://strapi.io/documentation/3.x.x/guides/filters.html#available-operators
Example GET queries: https://api.canonn.tech:2053/systems?systemName=Sol https://api.canonn.tech:2053/apsites?_limit=100&_start=0&system.systemName=PRU%20AED%20XO-R%20D4-50 https://api.canonn.tech:2053/excludefsses
GET endpoints for consideration:
/alerts (Canonn general alerts)(Canonn is deprecating this)POST endpoints for consideration:
Send data using schemas prefixed "New" from https://api.canonn.tech/documentation#/, using report status
pending
.The API repo: https://github.com/canonn-science/CAPIv2-Strapi
The EDMC plugin repo: https://github.com/canonn-science/EDMC-Canonn
Other comments from DMehaffy: See https://api.canonn.tech/reporttypes for a list of the types of reports Canonn compiles. Everything except for these: GEN, GB, GS, GR, TB, and TS sites can be completely automated Kills and hyperdictions are also fairly automated though we have put those on hold until we get authentication sorted out.