smartdevicelink / protocol_spec

Describes the communication protocol between a smartdevicelink enabled head unit and mobile application
https://smartdevicelink.github.io/protocol_spec/
BSD 3-Clause "New" or "Revised" License
14 stars 13 forks source link

[SDL 0280] Adding new parameter of requiresAudioSupport and BluetoothDeviceAddress #33

Open theresalech opened 3 years ago

theresalech commented 3 years ago

Proposal: Adding new parameter of requiresAudioSupport and BluetoothDeviceAddress

In this proposal, by adding the requiresAudioSupport in RegisterAppInterface and the bluetooothDeviceAddress in DeviceInfo, when the device is connected via only USB, head unit (HU) will connect to the SDL device's Bluetooth (BT) automatically or prompt the user requesting BT connection.

Review: https://github.com/smartdevicelink/sdl_evolution/issues/941

Steering Committee Decision: The Steering Committee voted to accept this proposal with the following revisions:

  1. Modify flow chart to incorporate sequence in this comment and revise the section below to include the note about the MediaStreamingStatus class and its usage. For example, if the protocol version is lower, the library could and should check if audio is already connected. Otherwise, apps that require audio support wouldn't connect to anything currently in production.

    If the response was a StartServiceACK, requiresAudioSupport was set to true, but the protocol version of the ACK is less than the major version of this feature, the app will shut down.

  2. Specify in MediaStreamingStatus class section of proposal, that feature will use value of isAudioOutputAvailable() method, since the MediaStreamingStatus class actually checks for multiple Audio Output options.
  3. In MediaStreamingStatus class section, change “…to the preprocessing of the RegisterAppInterface" to "…to the post-processing of StartService ACK or NAK".
  4. Specify in proposal that since there aren't any public code changes listed in the proposal, the SDLC Project Maintainer will have discretion over implementation details, including changes to classes that are not accessible to developers, especially given changes to Java Suite library in 5.0 release.

The proposal .md file was updated to reflect these revisions on 10/13/2020.