AssistantLogsAmbiguousTargetDeviceLog

AI Overview😉

  • The potential purpose of this module is to handle situations where a user's search query or request can be fulfilled by multiple devices, and to determine the most suitable device to provide the result. This is known as "ambiguous device targeting logic".
  • This module could impact search results by potentially changing the order or relevance of results based on the device that is determined to be the most suitable. For example, if a user searches for a video, the module may prioritize devices that are capable of playing the video over those that are not. This could lead to different results being shown to users depending on their device capabilities.
  • A website may change things to be more favorable for this function by ensuring that their content is accessible and playable on a wide range of devices, and by providing clear information about the devices that their content is compatible with. This could involve optimizing videos and other multimedia content for different devices, and providing metadata about device compatibility.

Interesting Module? Vote 👇

Voting helps other researchers find interesting modules.

Current Votes: 0

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

This message logs details on ambiguous device targeting logic. 1. It first takes a list of ambiguous devices 2. Then applies two filters: structure filter and playability filter. 3. If more than one device remains, it tiggers DeviceSelectionDialog to let the user pick one device.

Attributes

  • ambiguousDeviceIndex (type: list(integer()), default: nil) - Device index of the initial ambiguous devices. The device index in this message is consistent with the device index in DeviceInfoLog. It would be used to track more detailed information of a device if needed.
  • devicesAfterPromoters (type: list(GoogleApi.ContentWarehouse.V1.Model.AssistantLogsDeviceInfoLog.t), default: nil) - DeviceInfo for devices after the filters and promoters. - When device targeting is only configured for single target, these are ambiguous devices that would have been the output of Lumos. Downstream may perform extra check before disambiguation dialog. For example, Media Initiation checks playability for devices. The output here is before the check. - When configured for multi-target, these are just the target devices. For privacy consideration, we may only log device id field inside.
  • finalTargetDevice (type: GoogleApi.ContentWarehouse.V1.Model.AssistantLogsDeviceInfoLog.t, default: nil) - the final targeted device selected by playability filter or DeviceSelectionDialog
  • playabilityFilteredDevicesIndex (type: list(integer()), default: nil) - Device index of the devices after playability filter
  • puntInfoLog (type: list(GoogleApi.ContentWarehouse.V1.Model.AssistantLogsAmbiguousTargetDeviceLogPuntInfoLog.t), default: nil) - When there is no qualified devices after playability check, it would populate punt_info below. If all devices are filtered out for the same reason, there would only be one item. Otherwise, there will be multiple items.
  • structureFilteredDeviceIndex (type: list(integer()), default: nil) - Device index of the devices after structure filter

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.AssistantLogsAmbiguousTargetDeviceLog{
    ambiguousDeviceIndex: [integer()] | nil,
    devicesAfterPromoters:
      [GoogleApi.ContentWarehouse.V1.Model.AssistantLogsDeviceInfoLog.t()] | nil,
    finalTargetDevice:
      GoogleApi.ContentWarehouse.V1.Model.AssistantLogsDeviceInfoLog.t() | nil,
    playabilityFilteredDevicesIndex: [integer()] | nil,
    puntInfoLog:
      [
        GoogleApi.ContentWarehouse.V1.Model.AssistantLogsAmbiguousTargetDeviceLogPuntInfoLog.t()
      ]
      | nil,
    structureFilteredDeviceIndex: [integer()] | nil
  }

Functions

Link to this function

decode(value, options)

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

Unwrap a decoded JSON object into its complex fields.