1. News
  2. Support
    1. Unerledigte Themen
    2. Steam-API-Dokumentation
  3. FAQ
  4. Plugin-Store
    1. Mein Konto
    2. Lizenzen
    3. Bestellungen
    4. Downloads
  5. Discord
  • Anmelden oder registrieren
  • Suche
Produktvorstellungen
  • Alles
  • Produktvorstellungen
  • Artikel
  • Seiten
  • Forum
  • Produkte
  • FAQ
  • Erweiterte Suche
  1. Hanashi Development
  2. Produktvorstellungen

TeamSpeak-Sync

Dieses Plugin ermöglicht die Synchronisierung von Benutzergruppen und Channelgruppen zwischen der WoltLab Suite und deinem TeamSpeak-Server.

Mehr erfahren

Branding Free für alle Plugins

Dieses Plugin berechtigt zur Entfernung des Copyrights aus allen aktuellen und zukünftigen Plugins von Hanashi Development.

Mehr erfahren

Discord-Push (Board)

Discord Synchronisation Board ist eine Erweiterung für Discord Synchronisation. Bei neuen Threads oder Posts kann automatisch eine Vorschau des Posts in Discord gepostet werden.

Mehr erfahren

Neues (kostenfreies) Produkt: Steam-API

  • Hanashi
  • 22. Januar 2020 um 19:03
  • 2.407 Mal gelesen
  • 5 Antworten
Inhaltsverzeichnis [VerbergenAnzeigen]
  1. Wie bekomme ich einen Steam-API-Key?
  2. Wie implementiere ich die API in mein Plugin?
  3. Wie implementiere ich OpenID?
  4. Wo finde ich die möglichen Funktionen für die API?

Steam bietet eine große Auswahl an Möglichkeiten, was Entwickler mit deren API alles anstellen können. Login via Steam ist dabei nur eine Sache. Es geht noch viel mehr. Aus diesem Grund habe ich die Steam-API für das WSC entwickelt. Diese Erweiterung unterstützt alle API-Anfragen, wofür ihr kein Steam-Partner sein müsst.

Wie bekomme ich einen Steam-API-Key?

Dafür benötigst ihr zuerst einmal einen Steam-Account. Dieser kann kostenlos erstellt werden. Danach geht ihr auf folgende Seite und könnt einen API-Key registrieren: https://steamcommunity.com/dev/apikey

Wie implementiere ich die API in mein Plugin?

Füge dev.hanashi.wsc.steam-api mit Mindest-Version 1.0.0 als Abhängigkeit in deiner package.xml ein.

Nun kannst du API-Funktionen aufrufen. Jede Funktion wird wie folgt ausgeführt:

PHP
\wcf\system\steam\SteamAPI::execute($interface, $method, $version, $data);

Wir wollen beispielsweise die News für ein Spiel abrufen. Dafür führen wir folgenden Code aus:

PHP
\wcf\system\steam\SteamAPI::execute('ISteamNews', 'GetNewsForApp', 2, ['appid' => 440]);

Als Rückgabe bekommen wir nun die letzten News für das Spiel mit der ID 440.

Es gibt auch Befehle die keine Parameter entgegen nehmen. Dabei wird $data einfach weggelassen:

PHP
\wcf\system\steam\SteamAPI::execute('ISteamWebAPIUtil', 'GetSupportedAPIList', 1);

In der API wurden weitere optionale Parameter implementiert. Schaue dir dazu die Methode wcf\system\steam\SteamAPI::execute an.

Im Falle eines Fehlers wird eine Exception vom Typ wcf\system\exception\SteamException geworfen.

Wie implementiere ich OpenID?

Zuerst benötigst du die OpenID-URL für Steam. Diese kannst du wie folgt generieren lassen:

PHP
\wcf\system\steam\SteamAPI::getOpenIDUrl($redirectUri, $realm);

$redirectUri ist die URL wo Steam den Benutzer hinleiten soll, nachdem er seinen Account auf der Steam-Seite bestätigt hat. Diese Seite muss im nächsten Schritt implementiert werden.

$realm ist die Domain mit Protokoll der Seite (z.B.: https://example.org).

Im nächsten Schritt muss die angegebene Redirect-URI implementiert werden. Dort reicht es folgende Methode auszuführen:

PHP
\wcf\system\steam\SteamAPI::validateOpenID();

Diese gibt die Steam-ID des Benutzers zurück. Danach kann diese für weitere Login-Versuche benutzt werden.

Wo finde ich die möglichen Funktionen für die API?

Führe dazu einfach den folgenden PHP-Code aus:

PHP
\wcf\system\steam\SteamAPI::execute('ISteamWebAPIUtil', 'GetSupportedAPIList', 1);

Dadurch bekommst du alle für dich nutzbaren Funktionen zurück.

  • Vorheriger Artikel Neues (kostenpflichtiges) Plugin: Sign In With Apple
  • Nächster Artikel Neues (kostenpflichtiges) Produkt: Steam-Integration

Antworten 5

Jake
25. Januar 2020 um 09:11

I am unable to see all plugins except for 'City Festival Dresden Canaletto" and "Stop Monitor Dresden v2"

Hanashi
25. Januar 2020 um 10:33

Hi, check „Deutsch“ and „English“ under „Multilanguism“ on this page: https://hanashi.dev/settings/

PoooMukkel
26. Januar 2020 um 14:12

Und ich wunderte mich schon, dass ein API-Key vorgegeben ist und fragte SoftCreatR , ob ich den mal lieber ersetzen sollte. Das tat ich dann auch direkt. :)

Nun ist er somit eh weg. :thumbup:

Hanashi
26. Januar 2020 um 14:28

Das beste darin war doch eigentlich der Code-Teil vorher:

Code
<!-- TODO: delete key -->

Hatte ich extra reingeschrieben xD

PoooMukkel
26. Januar 2020 um 14:38

Au weia... Den Code habe ich mir aber nicht angeschaut... :D

Diskutiere mit!

Kategorien

  1. News 91
  2. Produktvorstellungen 14
  3. Filter zurücksetzen
Über den Artikel diskutieren 5 Antworten, zuletzt: 26. Januar 2020 um 14:38
  1. Rechtliches
    1. Datenschutzerklärung
    2. Allgemeine Geschäftsbedingungen
      1. Widerrufsbelehrung
    3. Nutzungsbedingungen
    4. Impressum
  2. Lizenzen
    1. Freie Lizenz
    2. Alpha-Lizenz
    3. Kommerzielle Lizenz
  3. Third-Party
    1. Twitter Emoji (Twemoji)

Eingetragene Marke

Hanashi Development ist eine eingetragene Wort-Bildmarke - Registernummer: 302021209882
© Hanashi Development

Oups...

Leider verwenden Sie noch einen veralteten Browser!
Die Seite wird von den folgenden Browsern unterstützt.

Firefox Chrome Safari Edge