Alterar capacidades no ambiente de execução
Como os novos recursos (por exemplo, dimensionamento dinâmico do buffer) podem ser ativados com o upgrade do firmware do provedor, queremos oferecer uma maneira de usar as funcionalidades do provedor no tempo de execução. Para evitar consultas repetidas, primeiro, o provedor precisa enviar a revisão de firmware à pessoa que está buscando por streaming de mensagens quando conectado. Por isso, adicionamos um novo código de mensagem ao grupo de mensagens existente, o evento de informações do dispositivo.
Nome do grupo de mensagens | Valor |
---|---|
Evento de informações do dispositivo | 0x03 |
Nome do código da mensagem | Valor |
---|---|
Revisão do firmware | 0x09 |
Ao receber o código de revisão do firmware, o Seeker deve compará-lo ao código de revisão armazenado em cache. Se a revisão de firmware tiver sido alterada, o Seeker atualizará a revisão de firmware do cache e consultará os recursos por meio do Message Stream.
Também permitimos que o provedor envie recursos diretamente ao usuário sem uma solicitação primeiro, porque imaginamos que, no futuro, dispositivos mais sofisticados (talvez baseados em Android) farão configuração dinâmica com base em flags para a mesma revisão de firmware.
Então, adicionamos abaixo um novo grupo de mensagens e códigos de mensagens.
Nome do grupo de mensagens | Valor |
---|---|
Evento de sincronização da capacidade do dispositivo | 0x06 |
Nome do código da mensagem | Valor |
---|---|
Solicitar atualização do recurso (enviado do Seeker) | 0x01 |
Monitoramento de FMDN | 0x03 |
Ao receber 0x0601
,
- Se o provedor tiver ativado o suporte para rastreamento FMDN, ele deverá responder como abaixo:
Octeto | Tipo de dados | Descrição | Valor |
---|---|---|---|
0 | uint8 | Evento de sincronização da capacidade do dispositivo | 0x06 |
1 | uint8 | Monitoramento de FMDN | 0x03 |
2 a 3 | uint16 | Comprimento de dados adicional | 0x0007 |
4 | uint8 | Estado de provisionamento do FMDN | 0 x 00 se não aprovisionado. 0 x 01 se provisionado por qualquer conta |
5 - 10 | uint8[] | O endereço MAC BLE atual do dispositivo | varia |