1
0
mirror of git://f0xx.org/ac/ac-ms-ota synced 2026-07-29 05:00:21 +03:00
This commit is contained in:
Anton Afanasyeu
2026-06-23 12:29:34 +02:00
commit 05961c3eb1
12 changed files with 83 additions and 0 deletions

20
ota/mqtt-topics.md Normal file
View File

@@ -0,0 +1,20 @@
# MQTT OTA topics (retained payloads)
Publish retained payloads for these topics:
- `v0/ota/channel/stable.json` -> content of `examples/ota/v0/ota/channel/stable.json`
- `v0/ota/channel/current.json` -> content of `examples/ota/v0/ota/channel/current.json`
- `v0/ota/channel/next.json` -> content of `examples/ota/v0/ota/channel/next.json`
- `v0/ota/00/00.01/00.01.00/android_cast_00.01.00.00_manifest.json`
- `v0/ota/00/00.01/00.01.00/android_cast_00.01.00.00_sign.json`
- `v0/ota/00/00.01/00.01.00/android_cast_00.01.00.00.otapkg`
- `v0/ota/00/00.01/00.01.01/android_cast_00.01.01.01_manifest.json`
- `v0/ota/00/00.01/00.01.01/android_cast_00.01.01.01_sign.json`
- `v0/ota/00/00.01/00.01.01/android_cast_00.01.01.01.otapkg`
HTTP mirrors may also host `*.otabundle.zip` (manifest + sign + `package.apk` in one STORED zip).
The app uses **per-artifact MQTT topics only** — it does not download bundles over MQTT.
Example source URL in app settings:
- `mqtt://foxx.org:1883/v0/ota/channel/stable.json`

View File

@@ -0,0 +1,2 @@
PLACEHOLDER PACKAGE
Replace this with the real release artifact bytes.

View File

@@ -0,0 +1,15 @@
{
"schema": "v0",
"major": 0,
"minor": 1,
"build": 0,
"versionName": "0.1.0",
"apkUrl": "https://foxx.org/v0/ota/00/00.01/00.01.00/android_cast_00.01.00.00.otapkg",
"signUrl": "https://foxx.org/v0/ota/00/00.01/00.01.00/android_cast_00.01.00.00_sign.json",
"sizeBytes": 10485760,
"bundleUrl": "https://foxx.org/v0/ota/00/00.01/00.01.00/android_cast_00.01.00.00.otabundle.zip",
"bundleSha256": "0000000000000000000000000000000000000000000000000000000000000000",
"bundleSizeBytes": 10500000,
"mandatory": false,
"releaseNotes": "Current production baseline."
}

View File

@@ -0,0 +1,4 @@
{
"schema": "v0",
"sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
}

View File

@@ -0,0 +1,2 @@
PLACEHOLDER PACKAGE
Replace this with the next OTA candidate artifact bytes.

View File

@@ -0,0 +1,15 @@
{
"schema": "v0",
"major": 0,
"minor": 1,
"build": 1,
"versionName": "0.1.1",
"apkUrl": "https://foxx.org/v0/ota/00/00.01/00.01.01/android_cast_00.01.01.01.otapkg",
"signUrl": "https://foxx.org/v0/ota/00/00.01/00.01.01/android_cast_00.01.01.01_sign.json",
"sizeBytes": 11534336,
"bundleUrl": "https://foxx.org/v0/ota/00/00.01/00.01.01/android_cast_00.01.01.01.otabundle.zip",
"bundleSha256": "0000000000000000000000000000000000000000000000000000000000000000",
"bundleSizeBytes": 11600000,
"mandatory": false,
"releaseNotes": "Next OTA candidate with service-based updater."
}

View File

@@ -0,0 +1,4 @@
{
"schema": "v0",
"sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
}

View File

@@ -0,0 +1,4 @@
{
"schema": "v0",
"manifestUrl": "https://foxx.org/v0/ota/00/00.01/00.01.00/android_cast_00.01.00.00_manifest.json"
}

View File

@@ -0,0 +1,4 @@
{
"schema": "v0",
"manifestUrl": "https://foxx.org/v0/ota/00/00.01/00.01.01/android_cast_00.01.01.01_manifest.json"
}

View File

@@ -0,0 +1,4 @@
{
"schema": "v0",
"manifestUrl": "https://foxx.org/v0/ota/00/00.01/00.01.01/android_cast_00.01.01.01_manifest.json"
}

View File

@@ -0,0 +1,4 @@
{
"schema": "v0",
"manifestUrl": "https://apps.f0xx.org/v0/ota/00/00.01/00.01.00/android_cast_00.01.00.00_manifest.json"
}