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

Support for web-based platforms and connecting to services #10

Open
Solaire opened this issue May 16, 2021 · 3 comments
Open

Support for web-based platforms and connecting to services #10

Solaire opened this issue May 16, 2021 · 3 comments
Labels
enhancement New feature or request question Further information is requested

Comments

@Solaire
Copy link
Owner

Solaire commented May 16, 2021

Should the app be able to connect to online services (such as Humble bundle, Riot games, etc)? I am unsure of the work required and the overall benefit.

Also should the app support signing in into clients such as steam and get a list of all games for the user. This would in theory allow the app to manage all of the user's games and perhaps even allow installation.

Marking this a question since I am unsure what overall benefit there is to this feature as well as the required work (I'm not even 100% sure this is possible with each and every platform, though I think PlayNite does something like that)

@Solaire Solaire added enhancement New feature or request question Further information is requested labels May 16, 2021
@Nutzzz
Copy link
Contributor

Nutzzz commented Jun 21, 2021

For Steam, a quick-and-dirty solution would be:

  1. Only works if the user's profile is public; send them to this URL to change: "https://steamcommunity.com/my/edit/settings"
  2. Request the user's username, and collect the data from this page: "https://steamcommunity.com/id//games/?tab=all"
  3. Send the user to "steam://install/" to launch Steam and install any particular game.

@Nutzzz
Copy link
Contributor

Nutzzz commented Jul 8, 2021

Implemented Steam method above in this commit. Unfortunately, DLCs end up in the list.

EDIT: Note this is a just a start, since the internal databases were sufficient for Amazon, itch, Indiegala, and Paradox [EDIT 2: also GOG], and I figured I'd slap this together since it was easy. Now I'll take a look at the various web APIs, and come back to Steam to do it right.

EDIT 3: In PR #56 , I added a commented-out experiment with the Steam API (via SteamWebAPI2), but it appears to just complicate things (e.g., the user must set up an API key) and it doesn't make a difference from using the website (i.e., profile must still be public).

@Nutzzz
Copy link
Contributor

Nutzzz commented Aug 25, 2022

The Origin API was implemented in PR #56 , as well as an internal database solution for Epic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants