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 offen0– Stop2– Pause3– Rennen läuft9– 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.