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