Cockpit-XP API

REST-API Dokumentation
ab Cockpit-XP Version 3.7

REST-API Grundlagen

Basislink: http://cockpit-xp.ip:8080
Die GET-Befehle können in einem Browser direkt getestet werden. Zum testen der POST-Befehle empfehlen wir PostMan.
  

Webserver-Funktionalität

Neben der REST-API stellt Cockpit-XP auch einen kleinen lokalen Webserver bereit,
der z. B. HTML-Seiten und Benutzeroberflächen ausliefert.

Dies ermöglicht die einfache Erstellung eigener Widgets, die direkt auf die API zugreifen können. 

Der entsprechende gehostete Bereich befindet sich bei einer Standartinsallation in folgendem Ordner "C:\ProgramData\Cockpit-V2\www"
  

Daten auslesen (GET)

GET Renndaten
/api/rbs/renndaten

Gibt die aktuellen Renndaten aller Slots zurück.

Antwort

[
  {
    "slot": "1",
    "position": "1",
    "runde": "-1",
    "rundenzeit": "0",
    "tankstand": "100",
    "tankenaktiviert": "0",
    "schnellsterunde": "-1",
    "abstandzeitfuehrenden": "0",
    "abstandzeitvordermann": "0",
    "bestrafung": "0"
  }
]

Slot-spezifisch

/api/rbs/renndaten?slot=ID
{
  Gefiltert auf entsprechender Slot
}
GET Rennstatus
/api/rbs/rennstatus
{
  "rennzeit": "",
  "rennstatus": "9",
  "statusampel": "0",
  "ampel1": "rot",
  "ampel2": "rot",
  "ampel3": "rot",
  "ampel4": "rot",
  "ampel5": "rot"
}

Mögliche Werte für rennstatus

  • -1 – Kein RBS offen
  • 0 – Stop
  • 2 – Pause
  • 3 – Rennen läuft
  • 9 – Startampel läuft
GET Allgemeine Daten
/api/rbs/sAllgemeinedaten
{
  "sollrennrunden": "10",
  "sollzeit": "0",
  "rennmodus": "Rennen: 10 Runden",
  "anzahlfahrer": "2"
}
GET Fahrerdaten
/api/rbs/sFahrer
[
  {
    "slot": "1",
    "namefahrer": "Das Team",
    "shortnamefahrer": "DTM",
    "namefahrzeug": "Audi R8",
    "bildfahrer": "Picture2611201574353.png",
    "bildfahrzeug": "Picture27092018112528.png"
  }
]

Slot-spezifisch

/api/rbs/sFahrer?slot=ID
{
  Gefiltert auf entsprechender Slot
}
GET Rekorde
/api/rbs/rekorde
[
  {
    "slot": "1",
    "anzahlrennen": "34",
    "anzahlsiege": "33",
    "persrundenrekord": "1003",
    "fahrzeugrekordabsolut": "1003",
    "fahrzeugrekordabs...
  }
]

Slot-spezifisch

/api/rbs/rekorde?slot=ID
{
  Gefiltert auf entsprechender Slot
}
GET Bilder
/bilder/BILDNAME

Gibt die Bilder aus dem Verzeichniss "Bilder" in Cockpit-XP aus

Antwort

[
  {
    Bild
  }
    

Steuer- & AddOn-Endpunkte (POST)

POST /api/rbs/cptastenstrafe

Parameter: slot

{
  "slot": 1
}

cURL Beispiel

curl -X POST http://cockpit-xp.ip:8080/api/rbs/cptastenstrafe \
  -H "Content-Type: application/json" \
  -d '{"slot":1}'
        

Details siehe Cockpit-XP AddOn-Dokumentation.

POST /api/rbs/cpsimulatebutton

Parameter: id

{
  "id": 1
}

cURL Beispiel

curl -X POST http://cockpit-xp.ip:8080/api/rbs/cpsimulatebutton \
  -H "Content-Type: application/json" \
  -d '{"id":1}'
        

Details siehe Cockpit-XP AddOn-Dokumentation.

POST /api/rbs/cpaddonapicall

Parameter: id

{
  "id": 1
}

cURL Beispiel

curl -X POST http://cockpit-xp.ip:8080/api/rbs/cpaddonapicall \
  -H "Content-Type: application/json" \
  -d '{"id":1}'
        

Details siehe Cockpit-XP AddOn-Dokumentation.