AssistantApiCastCapabilities

AI Overview😉

  • Potential purpose of module: This module appears to be related to device capabilities for casting, specifically for devices that can receive and process casted content, such as Chromecast or Android TV. It defines various attributes that describe the device's capabilities, such as camera stream support, casting protocols, and gaming support.
  • Impact on search results: This module is unlikely to have a direct impact on search results, as it is focused on device capabilities for casting rather than search ranking factors. However, it may influence the search results indirectly by affecting how devices are indexed and presented in search results, particularly for searches related to casting or device capabilities.
  • Website changes for favorability: To be more favorable for this function, a website may want to ensure that its content is optimized for casting, such as providing compatible video formats and protocols. Additionally, websites may want to provide clear information about device capabilities and compatibility to help users make informed decisions about casting content. Furthermore, websites that offer gaming or interactive content may want to ensure that their content is optimized for devices that support Yeti gaming.

Interesting Module? Vote 👇

Voting helps other researchers find interesting modules.

Current Votes: 0

GoogleApi.ContentWarehouse.V1.Model.AssistantApiCastCapabilities (google_api_content_warehouse v0.4.0)

These capabilities represent capabilities that have to do with casting that pertain to this device. Next ID: 9

Attributes

  • cameraReceiverCapabilities (type: GoogleApi.ContentWarehouse.V1.Model.AssistantApiCameraReceiverCapabilities.t, 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.t, 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

Summary

Types

t()

Functions

decode(value, options)

Unwrap a decoded JSON object into its complex fields.

Types

Link to this type

t()

@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
}

Functions

Link to this function

decode(value, options)

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

Unwrap a decoded JSON object into its complex fields.