AssistantApiCastCapabilities

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):

View Attributes

Attributes

  1. cameraReceiverCapabilities (type: GoogleApi.ContentWarehouse.V1.Model.AssistantApiCameraReceiverCapabilities, default: nil)
    - Whether the device has limited camera stream capability and if yes, which receivers are supported.
  2. 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
  3. canReceiveCast (type: boolean(), default: nil)
    - True if we can cast things to this device.
  4. 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.
  5. 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)
  6. groupType (type: String.t, default: nil)
    -
  7. overlayApplicationsSupported (type: boolean(), default: nil)
    - Whether UI overlay applications are supported on this device. It's used by Chromecast only.
  8. 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
}

Function

@spec decode(struct(), keyword()) :: struct()

Data sourced from HexDocs : GoogleApi.ContentWarehouse.V1.Model.AssistantApiCastCapabilities