Moin,
ich weiß, es gibt schon einen Beitrag für eine API (APIs)
Allerdings scheint der Beitrag veraltet und nicht aktualisiert zu werden. Ich habe mind. eine Schnittstelle gefunden, die ich übersehen habe oder nicht erfasst wurde.
https://www.leitstellenspiel.de/api/alliance_buildings/
Wieso? Weshalb? Warum? Dieser Beitrag?
Ich schreibe gerade eine Chrome Extension. Ich benötige bestimmte Daten und möchte das Scraping auf ein Minimum reduzieren.
Gibt es das nicht schon alles?
Der LSS-Manager hat einige gleiche/identische Funktionen. Allerdings ist der LSS-Manager deutlich langsamer, da er Scripte erst mit "doument-end" einfügt. Somit muss erst die gesamte Seite geladen werden, bevor eine Funktion eingefügt wird.
Bei meiner Extension werden alle Funktionen so schnell wie Möglich zur Verfügung gestellt (in der Webseite eingefügt). Das heißt, es wird (im Hintergrund) auf ein (bestimmtes) Element gewartet, (und sobald es möglich bzw. existent ist, das Script ausgeführt.
Vorteile meiner Erweiterung:
Viele der im LSS Manager enthaltenen Scripte werden in deutlich erhöhtem Tempo ausgeführt. Dies ist möglich, sämtliche Funktionen, die im LSS-Manager von mir als wichtig erachtet worden, komplett neu implementier wurden. Hierbei wurde nur die Funktionalität kopiert. Es wurden und werden keine Scripte des LSS-Manager kopiert.
Nachteile meiner Erweiterung:
Es gibt bei weitem nicht so viele Möglichkeiten zur Individualisierung. Farben, Layout sowie die enthaltenen Funktionen entsprechen MEINEM Geschmack.
Hauptgrund für eine eigene Extension:
Da beim LSS-Manager viele Scripts erst mit Verzögerung eingefügt werden, habe ich mich entschlossen, eine Chrome Extension mit den "Für-Mich-Wichtigen-Features" umzusetzen. Ich werde zudem eine "Alpha"-Version für alle Interessenten auf meinem Git-Repo (inkl. Installations-Anleitung) veröffentlichen.
Zu meiner Sicherheit (vor allem zum Schutz vor Piraterie), läuft bei mir vorerst alles über ein verstecktes/privates Git-Repo. Im späteren Verlauf, werde ich ein öffentliches Repo hinzufügen, sodass jeder Interessent einen Zugang zu der Extension hat.
Bevor ich soweit bin, habe ich allerdings ein paar Fragen:
Frage 01: Gibt es evtl. eine Swagger-Info Page o.ä. für die API?
- Ziel: Keine weiteren Fragen zur API.
- Geschätzte Anzahl von Abfragen: Development (eine Abfrage pro Änderung)
Frage/Wunsch 02: Gibt es die Möglichkeit, die aktuelle Position eines Fahrzeuges abzufragen?
- Die Zeitberechnung zwischen zwei Punkten (longitude,latitude) habe ich bereits implementiert
- Positionsberechnungen der Fahrzeuge (für Alarmierung/Rückalarmierungen) würde ich mir gerne ersparen, da diese Informationen bekannt sein sollten
- Probleme: Berechnungen der aktuellen Position sind sehr komplex. Positionen müsseten im system bekannt sein, und daher auch per api abfragbar sein.
- Entity: Position(latitude: Number, longitude: Number);
- Ziel: Berechnung der Zeit von der aktuellen Position bis zum Ziel
- Geschätzte Anzahl von Abfragen: pro Aufruf einer Fahrzeugliste für die entsprechenden Fahrzeuge | pro Aufruf eines Gebäudes für alle Fahrzeuge, des Gebäudes
- Parameter: Liste von FahrzeugID's
Frage/Wunsch 03: Gibt es die Möglichkeit, die minimale/maximale Fahrzeug-Besetzung abzufragen? (Die ein Fahrzeug haben kann/darf)
- Lokale Umsetzung: Relativ einfach, da diese Informationen statisch sind und nicht all zu viele Einträge haben.
- bei lokaler Umsetzung: Probleme der Aktualität
- Ziel: Eine Warnung in der Fahrzeugliste, wenn nicht genug oder zu viel Personal zugeordnet ist.
- Geschätzte Anzahl von Abfragen: pro Aufruf einer Fahrzeugliste für die entsprechenden Fahrzeuge
- Parameter: Liste von FahrzeugTypID's
Frage/Wunsch 04: Gibt es eine Möglichkeit, das Personal (inkl. Lehrgänge/Zuordnung) abzufragen?
- Ziel: Eine Warnung in der Fahrzeugliste, wenn nicht genug oder falsches Personal zu einem Fahrzeug zugeordnet ist
- Geschätzte Anzahl von Abfragen: pro Aufruf einer Fahrzeugliste für die entsprechenden Fahrzeuge
- Parameter: FahrzeugID
Ein Scraper auf */einsaetze/, ist bereits eingeplant, sofern es keine anderen Möglichkeiten gibt und ich dafür ein "OK" von dem Entwicklern bekomme. Diese Daten werden max. 4x pro Tag abgerufen.
P.S. Wenn ich nach Möglichkeiten frage, möchte ich keine Scraper-Vorschläge haben. Diese könnte ich ohne Probleme selber Programmieren.
P.S.2. Wenn meine Ziele der AGB widersprechen, bitte mit einer kurzen Info dazu, widersprechen.