// Copyright 2017 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. module media.mojom; import "url/mojom/origin.mojom"; struct MediaEngagementScoreDetails { url.mojom.Origin origin; double total_score; // Details of the components which make up |score|. int32 visits; int32 media_playbacks; // Last media playback time in milliseconds since the epoch format. double last_media_playback_time; // Whether the score is considered to be high. bool is_high; }; struct MediaEngagementConfig { // Origins with a number of visits less than this number will receive // a score of zero. int32 score_min_visits; // The upper and lower threshold of whether the total score is considered // to be high. double high_score_lower_threshold; double high_score_upper_threshold; // The state of different internal autoplay features and flags. bool feature_record_data; bool feature_bypass_autoplay; bool feature_preload_data; bool feature_https_only; bool feature_autoplay_disable_settings; bool pref_disable_unified_autoplay; bool has_custom_autoplay_policy; string autoplay_policy; // The current version of any preloaded component. string preload_version; }; interface MediaEngagementScoreDetailsProvider { GetMediaEngagementScoreDetails() => (array info); GetMediaEngagementConfig() => (MediaEngagementConfig config); };