Funktionen zur Laufzeit ändern
Da neue Features (z.B. dynamische Puffergröße) durch ein Upgrade der Firmware des Anbieters aktiviert werden können, möchten wir eine Möglichkeit bieten, die Funktionen des Anbieters zur Laufzeit zu erhalten. Um wiederholte Abfragen von Funktionen zu vermeiden, sollte der Anbieter zuerst die Firmwareversion über den Nachrichtenstream an den Seeker senden, wenn eine Verbindung besteht. Also fügen wir der vorhandenen Nachrichtengruppe „Geräteinformationen“ einen neuen Nachrichtencode hinzu.
Name der Nachrichtengruppe | Wert |
---|---|
Ereignis „Geräteinformationen“ | 0x03 |
Name des Nachrichtencodes | Wert |
---|---|
Firmwareversion | 0x09 |
Beim Abrufen des Firmwareversionscodes wird der Seeker ihn mit dem im Cache gespeicherten Überarbeitungscode vergleichen. Wenn die Firmwareversion geändert wurde, aktualisiert der Seeker die Firmwareversion des Cache und fragt die Funktionen über Message Stream ab.
Wir ermöglichen es dem Anbieter auch, Funktionen direkt und ohne vorherige Anfrage an den Seeker zu senden, da wir davon ausgehen, dass in Zukunft komplexere Geräte (möglicherweise Android-basiert) eine dynamische Konfiguration basierend auf Flags für dieselbe Firmwareversion vornehmen.
Daher fügen wir unten eine neue Nachrichtengruppe und Nachrichtencodes ein.
Name der Nachrichtengruppe | Wert |
---|---|
Synchronisierungsereignis für Gerätefunktion | 0x06 |
Name des Nachrichtencodes | Wert |
---|---|
Funktionsaktualisierung anfordern (von Seeker gesendet) | 0x01 |
FMDN-Tracking | 0x03 |
Nach dem Empfang von 0x0601
- Wenn der Anbieter die Unterstützung für das FMDN-Tracking aktiviert hat, sollte er so reagieren:
Oktett | Datentyp | Beschreibung | Wert |
---|---|---|---|
0 | uint8 | Synchronisierungsereignis für Gerätefunktion | 0x06 |
1 | uint8 | FMDN-Tracking | 0x03 |
2–3 | uint16 | Zusätzliche Datenlänge | 0x0007 |
4 | uint8 | FMDN-Bereitstellungsstatus | 0x00, wenn nicht bereitgestellt; 0x01, wenn von einem Konto bereitgestellt |
5 - 10 | uint8[] | Die aktuelle BLE-MAC-Adresse des Geräts | variiert |