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

HTTP endpoint for online content #8334

Closed
a-gierczak opened this issue Oct 30, 2020 · 1 comment
Closed

HTTP endpoint for online content #8334

a-gierczak opened this issue Oct 30, 2020 · 1 comment

Comments

@a-gierczak
Copy link

a-gierczak commented Oct 30, 2020

Hey guys!

Excuse me for not using the template, but I don't really have a bug to report, just want to ask for some technical guidance.
I'm currently developing a web dashboard for managing a dedicated OpenTTD server. Thought it'd be neat to have a feature where one could install NewGRFs directly from the dashboard because as far as I know currently the easiest way to install GFRs involves installing them on the desktop client and copying files & configuration to the server.

I've looked into network_content.cpp and for my understanding, it looks like it's fetched via raw TCP packets. I've been wondering if there's any HTTP version or API exposed by https://content.openttd.org/ or other resources? And are you guys are okay with consuming this content by third-party apps?

@TrueBrain
Copy link
Member

We have an open issue at bananas-api repo (OpenTTD/bananas-api#29), with the request to add download URLs to https://bananas.openttd.org , which would allow you to download BaNaNaS content via de web. This would also allow any third-party to download these files and put them in the right place, if they like.

Sadly, this issue currently isn't being worked on, so there currently is no way of downloading BaNaNaS content over HTTPS in any sane and/or legit way. The OpenTTD client uses both a custom TCP protocol, but also HTTP (without the S), as OpenTTD client doesn't have an SSL library. Using this HTTP for third-party I would strongly advise against; both as it is not meant for third-party apps, but also because it is HTTP-only.

So for now I am going to close this issue; not because I don't agree that this functionality is useful, but because we have an open ticket for this already. You could however, if you like, leave your use-case there so it gets more priority to fix. And, of course, if you feel up to it, we would love contributions on these repositories to add functionality like this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants