设备操作

求助者可以请求提供者采取行动。如果提供方支持该操作,则应确认并执行该操作,否则应忽略该操作。

消息组名称
设备操作事件 0x04
设备操作代码名称
铃声 0x01

让设备响铃

这些操作的一个使用情形是,当用户丢失设备并需要找到它时,搜寻者请求提供者响铃。当收到响铃操作时,提供程序应开始以足够高的音量播放预加载的声音文件,以便用户能够找到设备。建议随着时间的推移,将声音从低音量逐渐调高到最大音量。响铃应持续到收到指示停止响铃的其他操作或超时值已过为止。

消息中将包含额外的数据,用于指示是否应开始或停止响铃,这可以扩展为支持具有多个组件(左耳塞和右耳塞)的提供程序。在第一个字节中,位将设置为 1 以请求开始响铃,或设置为 0 以请求停止响铃。

例如,如果附加数据的第一个字节设置为:

  • 0x00 (0b00000000):所有组件都应停止响铃
  • 0x01 (0b00000001):右侧响铃,停止左侧响铃
  • 0x02 (0b00000010):让左耳机响铃,停止让右耳机响铃
  • 0x03 (0b00000011):同时响铃左侧和右侧

对于不支持单独响铃的提供程序,应仅考虑 1 位:

  • 0x00 (0b00000000):停止响铃
  • 0x01 (0b00000001):开始响铃

如果存在,则附加数据中的第二个字节表示超时时间(以秒为单位)。提供方应使用此值来确定在自行静音之前应响铃多长时间。根据上面的 Ring Right 示例和 60 秒的超时时间,0x013C 将作为附加数据传递。

将响铃状态同步回寻找者

提供方可能希望在铃声状态发生变化时通知搜寻方,例如,如果手势导致铃声停止。然后,搜索者可以接收消息,并在必要时更新界面。

提供方应遵循与上述示例中定义的消息格式相同的格式。Seeker 将监听此消息,并在收到该消息时提供确认。

确认操作

收到操作后,应进行确认,以便 Seeker 了解操作是否已执行。如果在发送操作后 1 秒内未收到确认(或收到否定确认),Seeker 将假定该操作目前不受支持。