Signal senden
POST /api/signals/send
Sendet ein Signal an eine bestehende Datenquelle.
Tip
Praktische Schritt-für-Schritt-Anleitung mit vollständigen Code-Beispielen: Daten senden mit Python & MATLAB
Request
POST /api/signals/send HTTP/1.1Host: localhost:5678Content-Type: application/jsonJSON inline
Body-Parameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
name | string | Ja | Name des Signals |
y | array | Ja | Y-Werte (Amplitude) |
x | array | Nein | X-Werte (Zeit/Frequenz). Wird automatisch generiert falls nicht angegeben |
z | array/2D-array | Nein | Z-Werte für Verlaufslinien (1D) oder Spektrogramme (2D) |
y_unit | string | Nein | Einheit der Y-Achse (z.B. "V", "A") |
x_unit | string | Nein | Einheit der X-Achse (z.B. "s", "Hz") |
z_unit | string | Nein | Einheit der Z-Achse (z.B. "dB", "°C") |
target_source_id | string | Ja | ID der Ziel-Datenquelle |
Beispiel: Einfaches Signal
{ "name": "Sinus 5Hz", "y": [0, 0.841, 0.909, 0.141, ...], "x": [0, 0.1, 0.2, 0.3, ...], "y_unit": "V", "x_unit": "s", "target_source_id": "937896ff-f856-4b20-8888-e5127f0835b5"}Beispiel: Verlaufslinie (1D Z-Achse)
{ "name": "Verlaufssinus", "y": [0, 0.841, 0.909, ...], "x": [0, 0.1, 0.2, ...], "z": [0.5, 0.7, 0.9, ...], "y_unit": "V", "x_unit": "s", "z_unit": "°C", "target_source_id": "937896ff-f856-4b20-8888-e5127f0835b5"}Beispiel: Spektrogramm (2D Z-Matrix)
{ "name": "Spektrogramm", "y": [0, 10, 20, ...], "x": [0, 0.1, 0.2, ...], "z": [[0.1, 0.2, ...], [0.3, 0.4, ...], ...], "y_unit": "Hz", "x_unit": "s", "z_unit": "dB", "target_source_id": "937896ff-f856-4b20-8888-e5127f0835b5"}Info
Z-Achse Format:
- 1D Array (Länge = Länge von x und y): Verlaufslinie mit Farbcodierung
- 2D Matrix (Shape:
[len(y), len(x)]): Spektrogramm/Heatmap
Dateiverweis
Body-Parameter
| Parameter | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
name | string | Ja | Name des Signals |
file | string | Ja | Absoluter Pfad zur .npz oder .mat Datei |
y_unit | string | Nein | Einheit der Y-Achse |
x_unit | string | Nein | Einheit der X-Achse |
z_unit | string | Nein | Einheit der Z-Achse |
target_source_id | string | Ja | ID der Ziel-Datenquelle |
Beispiel
{ "name": "Großes Signal", "file": "/home/user/data/signal.npz", "y_unit": "V", "x_unit": "s", "target_source_id": "937896ff-f856-4b20-8888-e5127f0835b5"}Dateiformat
- NumPy (.npz): Muss Arrays mit Namen
yenthalten. Optional:xundz. - MATLAB (.mat): Muss Variablen mit Namen
yenthalten. Optional:xundz.
Die Datei wird nach erfolgreichem Import automatisch gelöscht.
Response
Status Code: 200 OK
Body:
{ "status": "ok", "result": { "signal_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7", "name": "Sinus 5Hz", "sample_count": 1000 }}Response-Felder
| Feld | Typ | Beschreibung |
|---|---|---|
result.signal_id | string | ID des importierten Signals |
result.name | string | Tatsächlicher Name des Signals |
result.sample_count | integer | Anzahl der importierten Samples |
Fehler
| Status | Bedeutung |
|---|---|
400 | Ungültige Parameter oder fehlerhafte Datei (z.B. fehlendes y-Array) |
404 | target_source_id nicht gefunden |
500 | Serverfehler (z.B. Datei nicht lesbar) |
Beispiel:
{ "status": "error", "error": "No handler found for source ID: 937896ff-..."}