Przejdź do głównej zawartości

Sesja przesyłania oprogramowania układowego

Przesyłanie pliku .ota odbywa się w ramach sekwencyjnej sesji przesyłania do obszaru OTA.


Pobiera bieżący stan sesji przesyłania oraz informację o poprawności obrazu OTA.

Uwierzytelnianie: powerUser

{
"uploadInProgress": false,
"imageValid": true,
"receivedBytes": 524288,
"totalBytes": 524288,
"percent": 100,
"lastError": 0,
"lastInstallState": "ready",
"meta": {
"fwVersion": "1.0",
"buildTimestamp": 1785412800,
"deviceStr": "TR-100E (48)",
"description": "Production firmware"
}
}
PoleTypOpis
uploadInProgresswartość logicznaTrwa kasowanie, odbieranie lub weryfikacja
imageValidwartość logicznaObraz OTA został w całości przesłany i zweryfikowany
receivedBytesliczbaLiczba potwierdzonych bajtów
totalBytesliczbaOczekiwany rozmiar obrazu
percentliczbaPostęp wyrażony w procentach
lastErrorliczbaKod błędu (0 = brak)
lastInstallStateciąg znakówOstatni stan instalacji: "idle", "ready", "running", "failed", "unknown"
metaobiektMetadane zweryfikowanego obrazu; obecne tylko wtedy, gdy imageValid: true
meta.fwVersionciąg znakówWersja oprogramowania układowego z obrazu OTA, maksymalnie 15 znaków ASCII (na przykład 1.0 lub 1.2.3-rc4)
meta.buildTimestampliczbaUniksowy znacznik czasu kompilacji
meta.deviceStrciąg znakówOznaczenie docelowego sprzętu; TR-100E (48) dla tego urządzenia
meta.descriptionciąg znakówOpis obrazu

Otwiera sesję przesyłania, ustawia rozmiar obrazu i przygotowuje obszar OTA.

Uwierzytelnianie: powerUser

{
"size": 524288
}
PoleTypWymaganeOpis
sizeliczbatakLiczba całkowita: rozmiar obrazu OTA w bajtach (> 0 i ≤ rozmiar obszaru OTA)
  • Ponowne wywołanie tego punktu końcowego zeruje nieukończoną sesję.
  • Jeśli trwa operacja erase/verify → 503 ERROR_NOT_READY.
{
"acceptedOffset": 0
}

Zapisuje fragment obrazu OTA.

Uwierzytelnianie: powerUser

  • Content-Type: application/octet-stream
  • Parametr zapytania offset: przesunięcie fragmentu w pełnym obrazie.
  • Treść: surowe bajty fragmentu (maksymalnie 1024 bajty).
ParametrTypWymaganeOpis
offsetliczbatakLiczba całkowita: nieujemne przesunięcie w pełnym obrazie OTA
  • Wartość offset musi odpowiadać oczekiwanemu przesunięciu lub wskazywać już potwierdzony fragment (idempotentne ponowienie).
  • Luka → 400 ERROR_INVALID_VALUE.
  • Fragment większy niż 1024 bajty → 400 ERROR_INVALID_VALUE.
{
"acceptedOffset": 1024
}

Kończy sesję przesyłania i rozpoczyna weryfikację.

Uwierzytelnianie: powerUser

{
"confirm": true
}
  • Niekompletny obraz lub błąd weryfikacji → 400 ERROR_INVALID_VALUE.
{
"uploadInProgress": false,
"imageValid": true,
"receivedBytes": 524288,
"totalBytes": 524288,
"percent": 100,
"lastError": 0,
"lastInstallState": "ready",
"meta": {
"fwVersion": "1.0",
"buildTimestamp": 1785412800,
"deviceStr": "TR-100E (48)",
"description": "Production firmware"
}
}

Usuwa przygotowany obraz OTA i zeruje sesję przesyłania.

Uwierzytelnianie: powerUser

{
"confirm": true
}

Pusta treść żądania lub nieprawidłowy składniowo kod JSON → 400 ERROR_API_PARSING. Brak pola confirm, wartość inna niż logiczna lub false → 400 ERROR_INVALID_ARGUMENT.

Zwraca pełny stan w takim samym formacie jak GET /api/service/firmware/upload/status/.