Ação do dispositivo
Os solicitantes podem pedir que um provedor realize uma ação. Se a ação for compatível com o provedor, ela deverá ser reconhecida e realizada. Caso contrário, ela deverá ser ignorada.
Nome do grupo de mensagens | Valor |
---|---|
Evento de ação no dispositivo | 0x04 |
Nome de código da ação no dispositivo | Valor |
---|---|
Tocar | 0x01 |
Tocar um dispositivo
Um caso de uso dessas ações é o Seeker solicitar que o Provider toque, por exemplo, quando um usuário perdeu o dispositivo e precisa localizá-lo. Quando a ação de tocar é recebida, o provedor precisa começar a reproduzir um arquivo de som pré-carregado em um volume alto o suficiente para que o usuário consiga localizá-lo. Recomendamos aumentar o volume gradualmente de baixo para alto. O toque continua até que uma ação adicional seja recebida direcionando uma parada ou um valor de tempo limite tenha passado.
Outros dados serão incluídos na mensagem para indicar se o toque deve ser iniciado ou interrompido, o que pode ser expandido para oferecer suporte a provedores com vários componentes (um fone esquerdo e um direito). No primeiro byte, os bits serão definidos como 1 para solicitar o início de um toque ou 0 para solicitar a interrupção de um toque.
Por exemplo, se o primeiro byte de dados adicionais estiver definido como:
- 0x00 (0b00000000): todos os componentes devem parar de tocar
- 0x01 (0b00000001): tocar à direita, parar de tocar à esquerda
- 0x02 (0b00000010): tocar do lado esquerdo, parar de tocar do lado direito
- 0x03 (0b00000011): tocar os dois lados
Em provedores que não são compatíveis com toque individual, apenas 1 bit deve ser considerado:
- 0x00 (0b00000000): parar de tocar
- 0x01 (0b00000001): iniciar o toque
O segundo byte em dados adicionais, se presente, representa o tempo limite em segundos. Esse valor precisa ser usado pelo provedor para determinar por quanto tempo
o toque deve durar antes de ser silenciado. Com base no exemplo de tocar à direita acima e em um tempo limite de 60 segundos, 0x013C
seria transmitido como os dados adicionais.
Sincronização do status de toque com os solicitantes
Os provedores podem querer notificar um Seeker quando ele muda o status de toque, por exemplo, se um gesto faz com que o toque pare. O Seeker pode receber a mensagem e atualizar a interface, se necessário.
O provedor precisa seguir o mesmo formato de mensagem definido no exemplo acima. O buscador vai detectar essa mensagem e enviar uma confirmação quando ela for recebida.
Confirmar uma ação
Quando uma ação é recebida, ela precisa ser confirmada para que o Seeker saiba se a ação foi realizada ou não. Se uma confirmação não for recebida em até 1 segundo após o envio de uma ação (ou se uma confirmação negativa for recebida), o Seeker vai presumir que a ação não é compatível no momento.