Wie kann direkt auf Daten eines gameME Stats Accounts zugegriffen werden?

Themen

Überblick

Die gameME Client-API liefert direkten Zugriff auf einen gameME Stats Account und damit die Möglichkeit Server- und Spielerinformationen auszulesen. Die Rückgabe erfolgt "utf8"-kodiert und steht beispielsweise unter folgender URL zur Verfügung:


Der Aufruf erfolgt über die oben genannte URL, der Aufbau der API-Befehle ist dann wie folgt:

CommandArgument 1Argument 2Argument 3
serverlistFilter1Filter1-Value-
serverinfoFilter1-WertFilter2Filter2-Wert
playerlistFilter1-WertFilter2Filter2-Wert
playerinfoFilter1-WertFilter2-
voiceserver---
awardsFilter1-WertFilter2Filter2-Wert
ribbonsFilter1-Wert--
ribboninfoFilter1-WertFilter2Filter2-Wert
ranksFilter1-Wert--
rankinfoFilter1-WertFilter2Filter2-Wert

Zusätzlich existieren "GET"-Parameter, welche die Ausgabe und Übertragung der Ergebnisse steuern:

NameBeschreibungParameter
limitBegrenzt die Rückgabeliste auf die gewünschte Anzahl (Standard: 100 Einträge)Numerische Werte
pageAuswahl der Seite für Rückgabelisten mit mehreren SeitenNumerische Werte

Beispiel-Aufruf: http://disc-ff.gameme.com/api/playerlist/tf3?limit=10

Folgende verschiedene Informationen sind abrufbar:

  • serverlist - Aktuelle Serverliste
  • serverinfo - Detailinformationen eines Gameservers
  • playerlist - Aktuelle Spieler-Rangliste
  • playerinfo - Detailinformationen eines Spielers
  • voiceserver - Status des Voiceservers
  • awards - Zugriff auf Awards
  • ribbons - Aktuelle Ribbon-Statistiken
  • ribboninfo - Detailinformationen eines definierten Ribbons
  • ranks - Aktuelle Rank-Statistiken
  • rankinfo - Detailinformationen eines definierten Ranks

Wichtige Informationen

  • Standardmäßig werden die ersten 100 Einträge (Maximum 1.000 Einträge) geliefert. Wenn keine Einträge gefunden werden, wird beispielsweise (anhand des Befehls "serverlist") folgende Antwort zurückgesendet:

     1 <gameME>
     2  <vendor>
     3   <label>gameME</label>
     4   <webpage>http://www.gameME.com</webpage>
     5   <license>personal, non-commercial use only</license>
     6   <copyright>Copyright © gameME 2022 - TTS Oetzel & Goerz GmbH. All rights
     6 reserved.</copyright>
     7  </vendor>
     8  <account>
     9   <webpage>http://disc-ff.gameme.com</webpage>
     10  </account>
     11  <serverlist>
     12  </serverlist>
     13  </gameME>

    Wenn mehr Ergebnisse existieren als aktuell angezeigt werden können (Limit), wird automatisch eine Seitenbehandlung hinzugefügt (z.B.: Spielerliste):

     1   <pagination>
     2    <totalcount>2207</totalcount>
     3    <totalpages>442</totalpages>
     4    <currentpage>2</currentpage>
     5    <pageentries>5</pageentries>
     6    <prevpagelink>
     7     <![CDATA[http://disc-ff.gameme.com/api/playerlist/tf3?limit=5&page=1]]>
     8    </prevpagelink>
     9    <nextpagelink>
     10     <![CDATA[http://disc-ff.gameme.com/api/playerlist/tf3?limit=5&page=3]]>
     11    </nextpagelink>
     12   </pagination>

    Die Bedeutung der "pagination"-Definitionen wie folgt:

    DefintionDatentypBedeutung
    totalcountNumberGesamtanzahl der zurückgegebenen Liste
    totalpagesNumberGesamtanzahl der verfügbaren Seiten
    currentpageNumberAktuelle Seite
    pageentriesNumberAngezeigte Einträge pro Seite
    prevpagelinkNumberLink zur vorigen Ergebnisseite
    nextpagelinkNumberLink zur nächsten Ergebnisseite

  • Falls ein Fehler auftritt (zum Beispiel durch falsche Parameterübergabe) erfolgt die folgende Rückgabe:

     1  <error>
     2   <type>syntax</type>
     3   <description>http://www.gameme.com/docs/api/clientapi</description>
     4  </error>

  • Um valides XML auszuliefern werden Einträge mit Sonderzeichen automatisch mit dem "CDATA"-Tag markiert. Diese Tags werden von XML-Parsern ignoriert und gewährleisten, dass das Dokument richtig verarbeiten werden kann. Beispiel:

     1 <name><![CDATA[Bad@ze]]></name>

  • Die Anzahl der Aufrufe der API sind limitiert. Es werden pro 30 Minuten maximal 3.000 Requests pro IP-Adresse beantwortet.
  • Leere Werte (NULL-Werte) und Werte mit der Zahl "0" werden als Tag ohne Wert übertragen. Beispiel: Ein Spieler ohne Kills wird mit dem Tag "<kills />" übertragen.
© 2022 TTS Oetzel & Goerz GmbH. Alle Rechte vorbehalten. Alle Marken sind Eigentum ihrer jeweiligen Besitzer. Warum gameME? | Datenschutz | Impressum