GoogleApi.ContentWarehouse.V1.Model.AssistantApiCastCapabilities
Table of Contents ▼
Jump to a specific part of the page:
Description
These capabilities represent capabilities that have to do with casting that pertain to this device. Next ID: 9
Attributes List
This module has the following attributes (case-insensitive ascending order):
Attributes
-
cameraReceiverCapabilities
(type:GoogleApi.ContentWarehouse.V1.Model.AssistantApiCameraReceiverCapabilities
, default:nil
)
- Whether the device has limited camera stream capability and if yes, which receivers are supported. -
cameraStreamSupportedProtocols
(type:list(String.t)
, default:nil
)
- The supported protocols for camera streaming. The value is used as string in go/smarthome-internal-api#camera-stream, so using a string for this field instead of an enum. Supported protocols: (align the definition in go/smarthome-camerastream-trait)
- "hls": HTTP Live Streaming - "dash": Dynamic Adaptive Streaming over HTTP - "smooth_stream": Smooth Streaming - "progressive_mp4": Progressive MP4 (will likely only be used for Clips)
- "webrtc": WebRTC (currently, only H.264 is supported)
- "nexustalk": Internal-only protocol used for Nest -
canReceiveCast
(type:boolean()
, default:nil
)
- True if we can cast things to this device. -
deviceId
(type:GoogleApi.ContentWarehouse.V1.Model.AssistantApiCoreTypesDeviceId
, default:nil
)
- Optional for primarily cast devices (e.g., Chirp, Chromecast). For devices that are NOT primarily cast devices, but having a cast receiver as secondary functionality, this field SHOULD store the cast-device-id to be used to send remote casting commands to the device. Example: Android TV, which supports both Android-native actions as well as remote casting using its built-in cast receiver. Android TV device id contains a DUSI id, which is not a cast-device-id. When executing a cast command on the Android TV, this field is used to route the cast command (through CloudCastService) to the cast receiver on the device. -
dynamicGroupsSupported
(type:boolean()
, default:nil
)
- Whether this device supports dynamic groups or not. It implies if a Stream Control operation (transfer, expansion, and contraction) could be applied on this device since Stream Control is implemented as part of dynamic groups (ie, adding/removing devices from playback) -
groupType
(type:String.t
, default:nil
)
- -
overlayApplicationsSupported
(type:boolean()
, default:nil
)
- Whether UI overlay applications are supported on this device. It's used by Chromecast only. -
yetiGamingSupported
(type:boolean()
, default:nil
)
- Whether the device supports playing games through Yeti. This is set by the cast device when the device is updated: Chromecast updates -> Chromecast registers its capabilities with CCS -> CCS passes the capabilities to the AssistantSettingsService -> AssistantSettingsService stores the device's capabilities. go/yeti-gaming-supported-cast-capability
Type
@type t() :: %GoogleApi.ContentWarehouse.V1.Model.AssistantApiCastCapabilities{
cameraReceiverCapabilities: GoogleApi.ContentWarehouse.V1.Model.AssistantApiCameraReceiverCapabilities.t() | nil,
cameraStreamSupportedProtocols: [String.t()] | nil,
canReceiveCast: boolean() | nil,
deviceId: GoogleApi.ContentWarehouse.V1.Model.AssistantApiCoreTypesDeviceId.t() | nil,
dynamicGroupsSupported: boolean() | nil,
groupType: String.t() | nil,
overlayApplicationsSupported: boolean() | nil,
yetiGamingSupported: boolean() | nil
}
cameraReceiverCapabilities: GoogleApi.ContentWarehouse.V1.Model.AssistantApiCameraReceiverCapabilities.t() | nil,
cameraStreamSupportedProtocols: [String.t()] | nil,
canReceiveCast: boolean() | nil,
deviceId: GoogleApi.ContentWarehouse.V1.Model.AssistantApiCoreTypesDeviceId.t() | nil,
dynamicGroupsSupported: boolean() | nil,
groupType: String.t() | nil,
overlayApplicationsSupported: boolean() | nil,
yetiGamingSupported: boolean() | nil
}
Function
@spec decode(struct(), keyword()) :: struct()Data sourced from HexDocs : GoogleApi.ContentWarehouse.V1.Model.AssistantApiCastCapabilities