Assembly Execution Progress: Echtzeitstatus für Ihre Assemblies
Wenn Uploads abgeschlossen sind, möchten Nutzer weiterhin wissen, was mit ihren Dateien passiert. Unsere neue Funktion Assembly Execution Progress schließt diese Lücke mit Echtzeit-Fortschrittsereignissen pro Datei während der Verarbeitung, sodass Ihre UI einen aussagekräftigen Status statt eines einfachen Spinners anzeigen kann.
Assembly Execution Progress ist noch experimentell. Verhalten, API-Details und Preise können sich weiterentwickeln, während wir das Feature weiter verbessern. Wenn Probleme auftreten, kontaktieren Sie uns bitte.
Warum das wichtig ist
Upload-Fortschritt zeigt Nutzern, wann eine Datei unsere Server erreicht. Assembly Execution Progress zeigt, was danach passiert: wie weit ihre Dateien jeden Verarbeitungs-Step durchlaufen haben. Dadurch wirken komplexe Pipelines vertrauenswürdig, insbesondere wenn verschiedene Dateien unterschiedliche Pfade nehmen.
So funktioniert es
Transloadit schätzt den Gesamtfortschritt, indem die verbleibenden Steps in Ihrer
Assembly vorhergesagt und diese Schätzungen mit Live-Ausführungsdaten
kombiniert werden (zum Beispiel Encoding-Fortschritt von /video/encode). Sie erhalten einen
kombinierten Prozentsatz sowie Fortschrittswerte pro Datei,
die ungefähr alle zwei Sekunden aktualisiert werden.
In Ihrer Assembly aktivieren
Fügen Sie emit_execution_progress: true zu Ihren Assembly Instructions hinzu, wenn Sie die
Assembly erstellen:
{
"steps": {
"resized": {
"robot": "/image/resize",
"use": ":original",
"width": 100,
"height": 100,
"resize_strategy": "fillcrop"
}
},
"emit_execution_progress": true
}
Fortschrittsstream konsumieren
Öffnen Sie den Update-Stream der Assembly und lauschen Sie auf Events vom Typ assembly_execution_progress. Jedes
Event enthält eine Gesamtschätzung in progress_combined und ein Array mit Fortschrittswerten pro Datei.
Solange sich der Fortschritt noch nicht schätzen lässt, behalten Sie in der UI einen unbestimmten
Fortschrittsstatus bei.
{
"progress_combined": 75,
"progress_per_original_file": [
{
"original_id": "6bb16f6cd49a44b4ae431f576e016c6d",
"progress": 50
},
{
"original_id": "56921a2dd46246d3b4d3a98b9f8ed4e1",
"progress": 100
}
]
}
UI-Tipps
Kombinieren Sie Upload-Fortschritt mit Ausführungsfortschritt, damit Nutzer die gesamte Pipeline sehen.
Zeigen Sie bei Batch-Uploads den Fortschritt pro Datei an, um den Eindruck eines „Hängens“ zu vermeiden.
Nutzen Sie den kombinierten Fortschritt für einen einzelnen Gesamtbalken und den Fortschritt pro Datei für eine detaillierte Listenansicht.
Wichtige Einschränkungen
Der Fortschritt ist eine Schätzung, und manche Workflows können ihn nicht sofort oder gar nicht liefern.
Die Hinweise zu kompatiblen Assemblies
behandeln unvorhersehbare Ergebniszahlen, URL Transform Assemblies und Multipart-Uploads. Jeder Eintrag in
progress_per_original_file identifiziert seine Eingabe anhand von original_id; importierte Dateien ohne diese ID
sind nicht in der Liste enthalten.
Nächste Schritte
Lesen Sie die Dokumentation zu Assembly Execution Progress zu Kompatibilitätsregeln, fehlenden Updates und dem Fortschrittsschema mit zulässigen null-Werten. Binden Sie anschließend mithilfe der Referenz zum Assembly-Update-Stream Events in Ihre UI ein.
