Anleitung aus docs/ — 2026-08-11 22:53

2026-08-11 22:53:32 +02:00
parent 4fca0cf805
commit f1e9968e4c
+52
@@ -85,6 +85,58 @@ dann bleibt es beim Original.
--- ---
## Umziehen von Fivemanage — ohne Lua anzufassen
Auf einem laufenden Server stecken die Fivemanage-Aufrufe in einem Dutzend
Ressourcen: Kamera, Handy, MDT, Fahrzeugstudio. Sie alle umzuschreiben heißt,
fremde Skripte anzufassen — und beim nächsten Update wieder.
**Der Dienst spricht deshalb ihre Sprache.** Der Umzug ist eine Zeile je Skript:
`api.fivemanage.com``fivemanage.d4rkst3r.de`. Der Schlüssel bleibt derselbe
Kopf, die Antwort dieselbe Form. Als Schlüssel setzt du einen **Token dieses
Dienstes** ein.
| Fivemanage | hier | Feld | Antwort |
|---|---|---|---|
| `POST /api/image` | ✅ gleich | `image` (oder `file`) | `{ "url": …, "id": …, "path": … }` |
| `POST /api/video` | ✅ gleich | `video` | dito |
| `POST /api/audio` | ✅ gleich | `audio` | dito |
| `POST /api/v3/file` | ✅ gleich | `file`, `path?`, `filename?` | `{ "status": "ok", "data": { "id", "url" } }` |
Der Schlüssel steht **nackt** im `Authorization`-Kopf, ohne `Bearer` — genau so
wie bei Fivemanage. `Bearer …` geht weiterhin auch.
```lua
-- vorher
exports['screenshot-basic']:requestScreenshotUpload(
'https://api.fivemanage.com/api/image', 'image',
{ headers = { Authorization = apiKey } }, cb)
-- nachher — eine Zeile
exports['screenshot-basic']:requestScreenshotUpload(
'https://fivemanage.d4rkst3r.de/api/image', 'image',
{ headers = { Authorization = apiKey } }, cb)
```
**Wo die Dateien landen:** unter dem Präfix des Tokens (sonst `uploads/`), mit
dem Anfang des SHA-256 im Namen — `screenshots/shot-841814b4089b.png`. Das ist
Absicht: Bildschirmfotos heißen alle `screenshot.png`, und ohne eigenen Namen
je Aufruf überschriebe das zweite das erste. Gleicher Inhalt ergibt denselben
Namen, verschiedener Inhalt einen anderen — dieselbe Eigenschaft, die
Fivemanages ID auch hat.
**Was NICHT übernommen wird:** `metadata` wird angenommen und ignoriert (es gibt
hier keine Spielerdaten an einer Datei), `retentionExempt` ebenso — dieser
Dienst löscht nichts von selbst. Presigned URLs gibt es nicht: der Upload geht
direkt hierher.
> Beide Formen sind **aus echtem Code abgelesen**, nicht geraten:
> [fivemanage/sdk](https://github.com/fivemanage/sdk) für v3 und
> [Awleks/Devm-Camera](https://github.com/Awleks/Devm-Camera) für den älteren
> Weg über `screenshot-basic`.
---
## Anmeldung: Token ## Anmeldung: Token
Alle Skript-Wege brauchen einen Token im Kopf: Alle Skript-Wege brauchen einen Token im Kopf: