fix(qconnect): register renderer role during connect bootstrap
cx
This commit is contained in:
6 files changed
+49
-13
No files matched your search
@@ -390,6 +390,19 @@ fn map_queue_command(command: &QueueCommand) -> Result<QConnectMessage, Protocol
|
||||
|
||||
fn map_renderer_report(report: &RendererReport) -> Result<QConnectMessage, ProtocolError> {
|
||||
match report.report_type {
|
||||
RendererReportType::RndrSrvrJoinSession => Ok(QConnectMessage {
|
||||
message_type: Some(QConnectMessageType::MessageTypeRndrSrvrJoinSession as i32),
|
||||
rndr_srvr_join_session: Some(JoinSessionMessage {
|
||||
session_uuid: optional_uuid_bytes(&report.payload, &["session_uuid", "sessionUuid"])?,
|
||||
device_info: parse_device_info(&report.payload)?,
|
||||
}),
|
||||
..Default::default()
|
||||
}),
|
||||
RendererReportType::RndrSrvrDeviceInfoUpdated => Ok(QConnectMessage {
|
||||
message_type: Some(QConnectMessageType::MessageTypeRndrSrvrDeviceInfoUpdated as i32),
|
||||
rndr_srvr_device_info_updated: parse_device_info(&report.payload)?,
|
||||
..Default::default()
|
||||
}),
|
||||
RendererReportType::RndrSrvrStateUpdated => {
|
||||
let queue_version = optional_queue_version(&report.payload, "queue_version")?
|
||||
.unwrap_or(report.queue_version_ref);
|
||||
|
||||
@@ -702,6 +702,10 @@ pub struct QConnectMessages {
|
||||
pub struct QConnectMessage {
|
||||
#[prost(int32, optional, tag = "1")]
|
||||
pub message_type: Option<i32>,
|
||||
#[prost(message, optional, tag = "21")]
|
||||
pub rndr_srvr_join_session: Option<JoinSessionMessage>,
|
||||
#[prost(message, optional, tag = "22")]
|
||||
pub rndr_srvr_device_info_updated: Option<DeviceInfoMessage>,
|
||||
#[prost(message, optional, tag = "23")]
|
||||
pub rndr_srvr_state_updated: Option<RendererStateUpdatedMessage>,
|
||||
#[prost(message, optional, tag = "25")]
|
||||
|
||||
@@ -42,6 +42,8 @@ impl RendererServerCommand {
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
|
||||
pub enum RendererReportType {
|
||||
RndrSrvrJoinSession,
|
||||
RndrSrvrDeviceInfoUpdated,
|
||||
RndrSrvrStateUpdated,
|
||||
RndrSrvrVolumeChanged,
|
||||
RndrSrvrVolumeMuted,
|
||||
@@ -52,6 +54,8 @@ pub enum RendererReportType {
|
||||
impl RendererReportType {
|
||||
pub const fn as_message_type(self) -> &'static str {
|
||||
match self {
|
||||
Self::RndrSrvrJoinSession => "MESSAGE_TYPE_RNDR_SRVR_JOIN_SESSION",
|
||||
Self::RndrSrvrDeviceInfoUpdated => "MESSAGE_TYPE_RNDR_SRVR_DEVICE_INFO_UPDATED",
|
||||
Self::RndrSrvrStateUpdated => "MESSAGE_TYPE_RNDR_SRVR_STATE_UPDATED",
|
||||
Self::RndrSrvrVolumeChanged => "MESSAGE_TYPE_RNDR_SRVR_VOLUME_CHANGED",
|
||||
Self::RndrSrvrVolumeMuted => "MESSAGE_TYPE_RNDR_SRVR_VOLUME_MUTED",
|
||||
|
||||
Reference in new issue
Block a user