Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Science responder? (Using the in-development Canonn API?) #1340

Open
Tkael opened this issue Jun 4, 2019 · 8 comments
Open

Science responder? (Using the in-development Canonn API?) #1340

Tkael opened this issue Jun 4, 2019 · 8 comments
Labels
9. enhancement The behaviour is as specified, but we would like to modify or extend the spec. on hold significant work Just sayin'

Comments

@Tkael
Copy link
Member

Tkael commented Jun 4, 2019

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)
  • /bodies (body POI data)
  • /regions (codex region ref.)
  • /systems (system and body POI data)
  • /excludefsses (fss signal sources to exclude from reporting)
  • /excludeusses (uss signal sources to exclude from reporting)

POST endpoints for consideration:

  • /apreports
  • /axczfssreports
  • /bmreports
  • /btreports
  • /csreports
  • /fgreports
  • /fmreports
  • /gvreports
  • /gyreports
  • /hdreports
  • /lcfssreports
  • /lsreports
  • /nhssreports
  • /twreports

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.

@Tkael Tkael added the 9. enhancement The behaviour is as specified, but we would like to modify or extend the spec. label Jun 4, 2019
@Tkael
Copy link
Member Author

Tkael commented Sep 2, 2019

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/

@Tkael Tkael added the on hold label Sep 2, 2019
@Tkael
Copy link
Member Author

Tkael commented Sep 2, 2019

Placed on hold for the time being - Canonn's API is in too much flux to implement this right now.

@jwvanderbeck
Copy link

As an Explorer I'm curious how you see this new API benefiting exploration? I know nothing about Canonn.

@Tkael Tkael changed the title Science monitor? (Using the in-development Canonn API?) Science responder? (Using the in-development Canonn API?) Sep 7, 2019
@Tkael
Copy link
Member Author

Tkael commented Sep 7, 2019

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.

@vnttr
Copy link

vnttr commented Jan 22, 2020

Is this more viable now? I am not a C# guy but would love to contribute if the APIs are stable enough.

@Tkael
Copy link
Member Author

Tkael commented Jan 28, 2020

TBH, I'm not certain. We'll need to re-evaluate and see where they are at.

@derrickmehaffy
Copy link

derrickmehaffy commented Feb 9, 2020

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:

  • AP (Amphora Plants) => /apreports
  • BM (Bark Mounds) => /bmreports
  • BT (Brain Trees) => /btreports
  • FG (Fungal Gourds) => /fgreports
  • TW (Tube Worms) => /twreports

(Not counting TB here as it is a very specific data set)

All of the Geology endpoints:

  • CS (Crystalline Shards) => /csreports
  • FM (Fumaroles) => /fmreports
  • GV (Gas Vents) => /gvreports
  • GY (Geysers) => /gyreports
  • LS (Lava Spouts) => /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.

@Tkael
Copy link
Member Author

Tkael commented Jun 15, 2020

Possibly also submit data to https://elite-igau.github.io/.

@Tkael Tkael added the significant work Just sayin' label Apr 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
9. enhancement The behaviour is as specified, but we would like to modify or extend the spec. on hold significant work Just sayin'
Projects
None yet
Development

No branches or pull requests

4 participants