@@ -15,6 +15,7 @@ use crate::{
1515 } ,
1616 protocol:: {
1717 connect:: { Capabilities , Device , DeviceInfo , MemberType , PutStateReason , PutStateRequest } ,
18+ media:: AudioQuality ,
1819 player:: {
1920 ContextIndex , ContextPlayerOptions , PlayOrigin , PlayerState , ProvidedTrack ,
2021 Suppressions ,
@@ -82,6 +83,7 @@ pub struct ConnectStateConfig {
8283 pub device_type : DeviceType ,
8384 pub volume_steps : i32 ,
8485 pub is_group : bool ,
86+ pub disable_volume : bool ,
8587}
8688
8789impl Default for ConnectStateConfig {
@@ -93,6 +95,7 @@ impl Default for ConnectStateConfig {
9395 device_type : DeviceType :: Speaker ,
9496 volume_steps : 64 ,
9597 is_group : false ,
98+ disable_volume : false ,
9699 }
97100 }
98101}
@@ -137,14 +140,14 @@ impl ConnectState {
137140 is_group : cfg. is_group ,
138141 capabilities : MessageField :: some ( Capabilities {
139142 volume_steps : cfg. volume_steps ,
140- hidden : false , // could be exposed later to only observe the playback
143+ disable_volume : cfg. disable_volume ,
144+
141145 gaia_eq_connect_id : true ,
142146 can_be_player : true ,
143-
144147 needs_full_player_state : true ,
145-
146148 is_observable : true ,
147149 is_controllable : true ,
150+ hidden : false ,
148151
149152 supports_gzip_pushes : true ,
150153 // todo: enable after logout handling is implemented, see spirc logout_request
@@ -157,14 +160,19 @@ impl ConnectState {
157160
158161 is_voice_enabled : false ,
159162 restrict_to_local : false ,
160- disable_volume : false ,
161163 connect_disabled : false ,
162164 supports_rename : false ,
163165 supports_external_episodes : false ,
164166 supports_set_backend_metadata : false ,
165167 supports_hifi : MessageField :: none ( ) ,
168+ // that "AI" dj thingy only available to specific regions/users
169+ supports_dj : false ,
170+ supports_rooms : false ,
171+ // AudioQuality::HIFI is available, further investigation necessary
172+ supported_audio_quality : EnumOrUnknown :: new ( AudioQuality :: VERY_HIGH ) ,
166173
167174 command_acks : true ,
175+
168176 ..Default :: default ( )
169177 } ) ,
170178 ..Default :: default ( )
0 commit comments