Funktionen zur Laufzeit ändern

Da neue Funktionen (z.B. die dynamische Puffergröße) durch ein Firmware-Upgrade beim Anbieter aktiviert werden können, möchten wir eine Möglichkeit bieten, die Funktionen des Anbieters zur Laufzeit abzurufen. Um wiederholte Abfragen von Funktionen zu vermeiden, sollte der Anbieter zuerst die Firmwareversion über einen Nachrichtenstream an den Sucher senden, wenn eine Verbindung besteht. Daher fügen wir der vorhandenen Nachrichtengruppe einen neuen Nachrichtencode hinzu: das Ereignis „Geräteinformationen“.

Name der Nachrichtengruppe Wert
Ereignis „Geräteinformationen“ 0x03
Name des Nachrichtencodes Wert
Firmwareversion 0x09

Sobald der Sucher den Firmware-Revisioncode erhalten hat, muss er ihn mit dem im Cache gespeicherten Code vergleichen. Wenn sich die Firmwareversion geändert hat, aktualisiert der Sucher die Firmwareversion des Caches und fragt die Funktionen über den Message Stream ab.

Außerdem erlauben wir dem Anbieter, Funktionen direkt an den Suchenden zu senden, ohne dass vorher eine Anfrage gestellt werden muss. Wir gehen davon aus, dass in Zukunft komplexere Geräte (z. B. Android-basierte) eine dynamische Konfiguration basierend auf Flags für dieselbe Firmwareversion durchführen werden.

Daher fügen wir unten eine neue Nachrichtengruppe und Nachrichtencodes hinzu.

Name der Nachrichtengruppe Wert
Ereignis „Gerätefunktionssynchronisierung“ 0x06
Name des Nachrichtencodes Wert
Aktualisierung der Funktion anfordern (von Sucher gesendet) 0x01
FHN-Tracking 0x03

Nach Erhalt von 0x0601

  • Wenn der Anbieter die Unterstützung für das FHN-Tracking aktiviert hat, sollte er so antworten:
Oktett Datentyp Beschreibung Wert
0 uint8 Ereignis „Gerätefunktionssynchronisierung“ 0x06
1 uint8 FHN-Tracking 0x03
2–3 uint16 Zusätzliche Datenlänge 0x0007
4 uint8 Bereitstellungsstatus von FHN 0x00, wenn nicht bereitgestellt; 0x01, wenn von einem Konto bereitgestellt
5 - 10 uint8[] Die aktuelle BLE-MAC-Adresse des Geräts variiert