fix: Release the microphone to the browser when a call ends (#2685)
The microphone is connected when a call needs it and released the moment that call ends, so the browser stops reporting it as in use at hangup rather than `disconnect_seconds` later. Existing configurations are migrated automatically by the visual editor. - Closes: #2681 BREAKING CHANGE: `live.microphone.disconnect_seconds` is removed. The microphone is released when a call ends, so there is no idle countdown to configure. Use `live.microphone.always_connected` to hold it open instead. BREAKING CHANGE: The `microphone_connect` and `microphone_disconnect` actions are removed. The card owns the microphone lifecycle; `microphone_mute` and `microphone_unmute` remain. BREAKING CHANGE: `call` is removed from `live.microphone.auto_mute`, whose default is now `[]`. The microphone is muted when a call ends regardless of this option. BREAKING CHANGE: `microphone_unmute` has no effect outside a call. Nothing carries the audio at any other time, so the request is ignored rather than opening the microphone.
This commit is contained in:
@@ -62,9 +62,9 @@ note over User, Card
|
||||
end note
|
||||
|
||||
Card --> User : Inbound audio mutes (<color:#43a047>**""live.auto_mute""**</color>)
|
||||
Card -> Mic : Microphone mutes (<color:#43a047>**""live.microphone.auto_mute""**</color>)
|
||||
Card -> Mic : Microphone mutes and disconnects
|
||||
note over Mic
|
||||
Disconnects after <color:#43a047>**""live.microphone.disconnect_seconds""**</color>
|
||||
unless <color:#43a047>**""live.microphone.always_connected""**</color>
|
||||
The browser stops reporting the microphone as in use, unless
|
||||
<color:#43a047>**""live.microphone.always_connected""**</color> holds it open
|
||||
end note
|
||||
@enduml
|
||||
|
||||
Reference in New Issue
Block a user