Springen

Neue Video-Verarbeitungssitzung erstellen

post

Dieser Endpunkt ermöglicht einem Administrator (oder Sub-Admin), eine Videodatei zur Verarbeitung hochzuladen und eine neue "Sitzungs"-Ressource im Namen eines anderen Benutzers zu erstellen. Der Server gibt eine session_id zurück, die zum Abfragen oder Abrufen der Sitzungsdetails/Ergebnisse verwendet werden kann.

Anfragekörper (Multipart/Form-Data)

Sie müssen folgende Felder angeben:

  • user_id (string, erforderlich): Die ID des Benutzers, für den diese Sitzung erstellt wird. - video (file, erforderlich): Die zu verarbeitende Videodatei. - session_name (string, optional): Ein lesbarer Name/Titel für die Sitzung. - exercise (string, erforderlich): Der Name der Übung. Wählen Sie eine der folgenden: 'Countermovement Jump' oder 'Drop Jump'. - body_joint_angles (array[string], optional): Eine kommagetrennte Liste von Gelenknamen (z.B. 'elbow, knee, ankle'). Standardmäßig ['all'], falls nicht angegeben.

Antwortstruktur

Bei Erfolg (HTTP 200) ist die Antwort ein JSON-Objekt mit: - session_id (string): Ein eindeutiger Identifikator für die erstellte Sitzung. - title (string): Der Sitzungstitel (Standardwert, falls session_name nicht angegeben wurde).

Ablauf 1. POST-Anfrage mit multipart/form-data, die die erforderlichen Felder user_id und video sowie optionale Felder enthält. 2. Einen gültigen API-KEY-Token im Authorization-Header bereitstellen. 3. Der Aufrufer muss Administratorrechte haben, um erfolgreich eine Sitzung für einen anderen Benutzer zu erstellen. 4. Bei Erfolg antwortet der Server mit session_id und title. 5. Bei einem Fehler (z.B. fehlende Felder, fehlende Berechtigungen) wird ein JSON-Objekt mit einem error-Schlüssel zurückgegeben.

Beispiel cURL (Firebase Auth): ```bash curl -X POST \

 -H 'Content-Type: multipart/form-data' \
 -H 'Authorization: API-KEY <YOUR_ADMIN_TOKEN>' \
 -F 'user_id=someUserId123' \
 -F 'video=@/path/to/video.mp4' \
 -F 'session_name=Custom Session' \
 -F 'exercise=Countermovement Jump' \
 -F 'body_joint_angles=knee, ankle' \
 https://<backend-link>/jumping/management/sessions/
#### Beispiel cURL (API KEY): ```bash curl -X POST \
     -H 'Content-Type: multipart/form-data' \
     -H 'API-KEY: <YOUR_API_KEY>' \
     -F 'user_id=someUserId123' \
     -F 'video=@/path/to/video.mp4' \
     -F 'session_name=Morning Run' \
     -F 'exercise=Countermovement Jump' \
     -F 'body_joint_angles=knee, ankle' \
     https://<backend-link>/jumping/management/sessions/
Autorisierungen
AuthorizationstringErforderlich

Geben Sie Ihren Bearer-Token (Firebase Auth) im Format ein: Bearer

Body
user_idstringErforderlich

Erforderlich. Die ID des Benutzers, für den diese Sitzung erstellt wird (Formularfeld: Text).

videostringErforderlich

Erforderlich. Die zu verarbeitende Videodatei (Formularfeldtyp: Datei).

session_namestringOptional

Optional. Ein beschreibender Name für die Sitzung (Formularfeld: Text).

exercisestringErforderlich

Erforderlich. Der Name der Übung. Wählen Sie eine der folgenden: 'Countermovement Jump' oder 'Drop Jump'.

body_joint_anglesarrayOptional

Optional. Eine kommagetrennte Liste von Gelenknamen. Verfügbare Werte: 'ankle', 'knee', 'elbow', 'hip', 'shoulder'. Beispiel: ankle,knee,hip

Antworten
200

Video-Verarbeitungssitzung erfolgreich erstellt (HTTP 200).

application/json
session_idstringErforderlich

Der eindeutige Identifikator für die erstellte Sitzung.

titlestringErforderlich

Der Sitzungstitel (Standardwert, falls nicht angegeben).

post
/jumping/sessions/

Sprung-Sitzungsdaten abrufen

get

Ruft detaillierte Informationen über eine bestimmte verarbeitete Sprung-Sitzung anhand ihrer eindeutigen session_id ab. Optional kann ?demo=true gesetzt werden, um die vordefinierte Demo-Sitzung für die Sprungaktivität abzurufen. Verwendungsbeispiel: Senden Sie eine GET-Anfrage mit der session_id als Pfadparameter, um Sitzungsdetails zu erhalten. Parameter: - session_id (string, erforderlich): Der eindeutige Identifikator der abgefragten Sitzung. - demo (boolean, optional): Auf true setzen, um die Demo-Sitzung für Sprung zurückzugeben. Antwortdatentyp: - 200 OK: Ein JSON-Objekt mit folgender Struktur:

  • angles (object): Enthalten Arrays verschiedener Winkelmessungen.

  • whole_report_metrics (object): Enthalten Arrays verschiedener Metriken.

  • all_timestamps (array of numbers): Zeitstempel für jeden Frame.

  • analyzed_video_url (string, URI): URL des analysierten Videos.

  • video_url (string, URI): URL des Originalvideos.

  • created_at (object): Enthält Datum und Uhrzeit der Sitzungserstellung.

  • exercise (string): Art der in der Sitzung analysierten Übung.

  • user_name (string): Name des mit der Sitzung verknüpften Benutzers.

  • activity (string): Art der in der Sitzung analysierten Aktivität.

  • title (string): Titel der Sitzung.

  • end_frames (array of integers): Frame-Nummern, bei denen jedes Segment endet.

  • metrics (object): Enthält verschiedene Leistungsmetriken als Zahlenarrays.

Autorisierungen
AuthorizationstringErforderlich

Geben Sie Ihren Bearer-Token (Firebase Auth) im Format ein: Bearer

Pfadparameter
session_idanyErforderlich
Abfrageparameter
demobooleanOptional

Auf true setzen, um die Demo-Sitzung anstelle der echten abzurufen.

Antworten
200

Sitzungsdaten erfolgreich abgerufen.

application/json
all_timestampsnumber[]Erforderlich

Array von Zeitstempeln für jeden Frame.

analyzed_video_urlstring · uriErforderlich

URL des analysierten Videos.

video_urlstring · uriErforderlich

URL des Originalvideos.

exercisestringErforderlich

Art der in der Sitzung analysierten Übung.

user_namestringErforderlich

Name des mit der Sitzung verknüpften Benutzers.

activitystringErforderlich

Art der in der Sitzung analysierten Aktivität.

titlestringErforderlich

Titel der Sitzung.

end_framesinteger[]Erforderlich

Array von Frame-Nummern, bei denen jedes Segment endet.

all_end_framesinteger[]Erforderlich

Array aller Frame-Nummern, bei denen Segmente enden.

get
/jumping/sessions/{session_id}/

Sprung-Sitzungsdaten exportieren

get

Ruft detaillierte Informationen über eine bestimmte Sprung-Sitzung anhand ihrer eindeutigen session_id ab. Optional kann ?demo=true gesetzt werden, um die vordefinierte Demo-Sitzung für die Sprungaktivität abzurufen. Hinweis: Dieser Endpunkt enthält Landmark-Punkte in der Antwort. Antwortdatentyp: - 200 OK: Ein JSON-Objekt mit folgender Struktur:

  • keypoints (object): Enthält Arrays von Landmark-Punkten.

  • angles (object): Enthält Arrays verschiedener Winkelmessungen.

  • all_timestamps (array of numbers): Zeitstempel für jeden Frame.

  • analyzed_video_url (string, URI): URL des analysierten Videos.

  • video_url (string, URI): URL des Originalvideos.

  • created_at (object): Enthält Datum und Uhrzeit der Sitzungserstellung.

  • user_name (string): Name des mit der Sitzung verknüpften Benutzers.

  • activity (string): Art der analysierten Aktivität.

  • title (string): Titel der Sitzung.

  • end_frames (array of integers): Frame-Nummern, bei denen jedes Segment endet.

  • metrics (object): Enthält verschiedene Leistungsmetriken als Zahlenarrays.

Autorisierungen
AuthorizationstringErforderlich

Geben Sie Ihren Bearer-Token (Firebase Auth) im Format ein: Bearer

Pfadparameter
session_idanyErforderlich
Abfrageparameter
demobooleanOptional

Auf true setzen, um die Demo-Sitzung anstelle der echten abzurufen.

Antworten
200

Sitzungsdaten erfolgreich abgerufen.

application/json
all_timestampsnumber[]Erforderlich

Array von Zeitstempeln für jeden Frame.

analyzed_video_urlstring · uriErforderlich

URL des analysierten Videos.

video_urlstring · uriErforderlich

URL des Originalvideos.

user_namestringErforderlich

Name des mit der Sitzung verknüpften Benutzers.

activitystringErforderlich

Art der in der Sitzung analysierten Aktivität.

titlestringErforderlich

Titel der Sitzung.

end_framesinteger[]Erforderlich

Array von Frame-Nummern, bei denen jedes Segment endet.

get
/jumping/sessions/{session_id}/export/

Sprunganalysebericht abrufen

post

Vertikalen Sprunganalysebericht abrufen

Dieser Endpunkt ermöglicht Benutzern, einen umfassenden Analysebericht für eine bestimmte vertikale Sprung-Sitzung abzurufen. Der Bericht enthält grafische Daten, Phasendetails, Benutzerinformationen und zusätzliche Kommentare, um ein tiefgreifendes Verständnis der Benutzerleistung während der Sitzung zu ermöglichen. Verwendungsbeispiel: Senden Sie eine POST-Anfrage an /jumping/{session_id}/jump-analysis/, wobei {session_id} der eindeutige Identifikator der Sitzung ist. Parameter: - session_id (string, erforderlich): Der eindeutige Identifikator der Sitzung, für die der Bericht angefordert wird. - demo (boolean, optional): Auf true setzen, um den vordefinierten Demo-Bericht anstelle der echten Sitzung abzurufen. Antwortstruktur: Bei erfolgreicher Anfrage gibt der Endpunkt ein JSON-Objekt mit folgenden Abschnitten zurück: 1. Exercise: Der Name der während der Sitzung durchgeführten Übung. 2. Graph Data: Visuelle Darstellungen verschiedener während der Sitzung erfasster Metriken. 3. Frame Information: Details zu den Videoframes der Sitzung. 4. Phase Data: Informationen zu verschiedenen Phasen der vertikalen Sprungaktivität. 5. User Information: Persönliche Details des Benutzers. 6. Session Date: Das Datum der Sitzung. 7. Comments: Feedback und Kommentare basierend auf der Sitzungsleistung.

Autorisierungen
AuthorizationstringErforderlich

Geben Sie Ihren Bearer-Token (Firebase Auth) im Format ein: Bearer

Pfadparameter
session_idanyErforderlich
Abfrageparameter
demobooleanOptional

Auf true setzen, um den Demo-Bericht abzurufen.

Antworten
200

Sprunganalysebericht erfolgreich abgerufen.

application/json
exercisestring · enumErforderlich

Für welche Übung dieser Bericht ist.

Mögliche Werte:
min_frameintegerErforderlich

Minimale Frame-Nummer im Video.

max_frameintegerErforderlich

Maximale Frame-Nummer im Video.

session_datestring · dateErforderlich

Datum der Sitzung (DD/MM/YYYY).

post
/jumping/sessions/{session_id}/jump-analysis/

Empfehlungs-Threads erstellen

post

Empfehlungs-Threads erstellen

Dieser Endpunkt generiert personalisierte Empfehlungs-Threads basierend auf dem vertikalen Sprunganalysebericht eines Benutzers für eine bestimmte Sitzung. Diese Threads können verwendet werden, um dem Benutzer maßgeschneiderte Ratschläge, Trainingsvorschläge oder Leistungseinblicke zu bieten. Verwendungsbeispiel: Senden Sie eine POST-Anfrage an /jumping/sessions/{session_id}/recommendation/, wobei {session_id} der eindeutige Identifikator der Sitzung ist. Parameter: - session_id (string, erforderlich): Der eindeutige Identifikator der Sitzung, für die Empfehlungs-Threads erstellt werden sollen. Antwortstruktur: Bei erfolgreicher Anfrage gibt der Endpunkt ein JSON-Objekt zurück, das Thread-IDs ihren jeweiligen Metriken zuordnet. Hinweis: - Stellen Sie sicher, dass die angegebene session_id gültig ist und einer vorhandenen Sitzung im System entspricht. - Der Benutzer muss einen aktiven Zahlungsplan haben, um auf diese Funktion zugreifen zu können.

Autorisierungen
AuthorizationstringErforderlich

Geben Sie Ihren Bearer-Token (Firebase Auth) im Format ein: Bearer

Pfadparameter
session_idanyErforderlich
Antworten
200

Threads erfolgreich erstellt.

application/json

Zuordnung von Metriknamen zu Empfehlungs-Thread-IDs.

hip_heightstringOptional

Thread-ID für Hüfthöhen-Empfehlungen.

hip_speedstringOptional

Thread-ID für Hüftgeschwindigkeits-Empfehlungen.

hip_trajectorystringOptional

Thread-ID für Hüfttrajektorie-Empfehlungen.

hip_velocitystringOptional

Thread-ID für Hüftgeschwindigkeits-Empfehlungen.

toe_trajectorystringOptional

Thread-ID für Zehentrajektorie-Empfehlungen.

grfstringErforderlich

Thread-ID für Bodenreaktionskraft (GRF)-Empfehlungen.

powerstringErforderlich

Thread-ID für Leistungs-Empfehlungen.

kne_anglestringErforderlich

Thread-ID für Kniewinkel-Empfehlungen.

ank_anglestringErforderlich

Thread-ID für Knöchelwinkel-Empfehlungen.

hip_anglestringErforderlich

Thread-ID für Hüftwinkel-Empfehlungen.

post
/jumping/sessions/{session_id}/recommendation/

Zusammenfassung einer Sitzung abrufen

get

Sitzungszusammenfassung abrufen

Dieser Endpunkt liefert eine Zusammenfassung einer bestimmten Sitzung, einschließlich wichtiger Leistungsmetriken, Benutzerdaten und Sitzungserstellungsdetails. Verwendungsbeispiel: Senden Sie eine GET-Anfrage an /jumping/{session_id}/summary/, wobei {session_id} die eindeutige Sitzungs-ID ist. Abfrageparameter: - demo (boolean, optional): Auf true setzen, um eine vorgefertigte Demo-Zusammenfassung anstelle einer echten Sitzung abzurufen. Antwortstruktur: - exercise: Art der zusammengefassten Übung. - metrics: Enthält verschiedene Messungen der Sitzung. - summary: Beschreibende Übersicht der Leistung. - user_info: Grundlegende Informationen über den Benutzer. - session_date: Datum der Sitzungsaufzeichnung. Hinweis: Stellen Sie sicher, dass die session_id existiert. Wenn demo=true verwendet wird, gibt das System die vordefinierte Demo-Sitzungszusammenfassung zurück.

Autorisierungen
AuthorizationstringErforderlich

Geben Sie Ihren Bearer-Token (Firebase Auth) im Format ein: Bearer

Pfadparameter
session_idanyErforderlich
Abfrageparameter
demobooleanOptional

Auf true setzen, um die Demo-Sitzungszusammenfassung anstelle einer echten abzurufen.

Antworten
200

Sitzungszusammenfassung erfolgreich abgerufen.

application/json

Objekt mit Sitzungszusammenfassungsdetails.

exercisestringOptional

Art der zusammengefassten Übung.

get
/jumping/sessions/{session_id}/summary/

Zusammenfassungs-Threads für eine Sitzung generieren

post

Zusammenfassungs-Threads generieren

Dieser Endpunkt generiert Zusammenfassungs-Threads für eine gegebene Sitzung basierend auf vordefinierten Zusammenfassungsblöcken und Metriken. Verwendungsbeispiel: Senden Sie eine POST-Anfrage an /jumping/sessions/{session_id}/summary/, wobei {session_id} der eindeutige Identifikator der Sitzung ist. Parameter: - session_id (string, erforderlich): Der eindeutige Identifikator der Sitzung, für die Zusammenfassungs-Threads generiert werden sollen. - measurement_system (string, optional): Messsystem: 'metric' oder 'imperial'. Standard: 'metric'. Antwortstruktur: Bei erfolgreicher Anfrage gibt der Endpunkt ein JSON-Objekt zurück, das jeden Blocknamen seiner entsprechenden Thread-ID zuordnet. Hinweis: - Stellen Sie sicher, dass die angegebene session_id gültig ist und einer vorhandenen Sitzung im System entspricht. - Der Benutzer muss die erforderlichen Berechtigungen haben, um Zusammenfassungs-Threads zu generieren.

Autorisierungen
AuthorizationstringErforderlich

Geben Sie Ihren Bearer-Token (Firebase Auth) im Format ein: Bearer

Pfadparameter
session_idanyErforderlich
Abfrageparameter
measurement_systemstring · enumOptional

Messsystem: 'metric' oder 'imperial'

Mögliche Werte:
Antworten
post
/jumping/sessions/{session_id}/summary/

Zuletzt aktualisiert

War das hilfreich?