123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- // Copyright 2016 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- syntax = "proto2";
- option optimize_for = LITE_RUNTIME;
- option java_package = "org.chromium.components.metrics";
- option java_outer_classname = "TranslateEventProtos";
- package metrics;
- // Stores information about a single interaction between a user and
- // the Translate UI. Contains features used by Translate Ranker for
- // inference, information about the ranker model and its decision, as
- // well as user or automated feedback from the Translate UI.
- // Next tag: 16
- message TranslateEventProto {
- // Language strings are two or three letter codes, with sometimes an extra
- // suffix (for e.g. chinese zh-TW or zh-CN). See
- // https://cs.chromium.org/chromium/src/components/translate/core/browser/translate_language_list.cc
- // for a list of supported languages.
- // Source language of the translation.
- optional string source_language = 1;
- // Target language of the translation.
- optional string target_language = 2;
- // The country where the user is. 2-letter country code. This corresponds to
- // the stored permanent country in VariationsService.
- optional string country = 14;
- // The following counts are extracted from TranslatePrefs.
- // The number of times the user accepted a translation for the
- // source language.
- optional int32 accept_count = 3;
- // The number of times the user declined a translation for the
- // source language.
- optional int32 decline_count = 4;
- // The number of times the user ignored a translation for the source
- // language.
- optional int32 ignore_count = 5;
- // Language list from the language settings. These are languages the user
- // explicitly set in the language settings.
- repeated string language_list = 6;
- // The version of the translate ranker model.
- optional uint32 ranker_version = 7;
- // Timestamp of when the Ranker was queried, in seconds.
- // This value comes from Chromium's TimeTicks::Now(), which is an abstract
- // time value that is guaranteed to always be increasing (regardless of
- // Daylight Saving Time or any other changes to the system clock).
- // These numbers are only comparable within a session. To sequence events
- // across sessions, order by the |session_id| from the
- // ChromeUserMetricsExtension message.
- optional int64 ranker_request_timestamp_sec = 8;
- // The decision of translate ranker whether we should show the UI or not.
- enum RankerResponse {
- SHOW = 0;
- DONT_SHOW = 1;
- NOT_QUERIED = 2;
- }
- optional RankerResponse ranker_response = 9 [default = NOT_QUERIED];
- // The action performed by the user in the translate UI.
- // Next tag: 28
- enum EventType {
- // The feedback event does not correspond to any of the enumerated
- // cases.
- UNKNOWN = 0;
- // User actions.
- // The user clicked 'Nope' in the UI.
- USER_DECLINE = 1;
- // The user clicked 'Translate' in the UI.
- USER_ACCEPT = 2;
- // The user explicitly closed the UI.
- USER_DISMISS = 3;
- // The user ignored the UI.
- USER_IGNORE = 4;
- // The user asked to never translate this source language.
- USER_NEVER_TRANSLATE_LANGUAGE = 5;
- // The user asked to never translate on this site.
- USER_NEVER_TRANSLATE_SITE = 6;
- // The user asked to always translate this source language.
- USER_ALWAYS_TRANSLATE_LANGUAGE = 7;
- // The user explicitly asked for a translation from the context menu.
- USER_CONTEXT_MENU_TRANSLATE = 8;
- // The user reverted the translation.
- USER_REVERT = 9;
- // Deprecated. Use AUTO_TRANSLATION_BY_PREF or AUTO_TRANSLATION_BY_LINK
- // instead.
- AUTOMATICALLY_TRANSLATED = 10;
- // Automated feedback.
- // An automatic translation was triggered.
- // User sets always translate in user settings.
- AUTO_TRANSLATION_BY_PREF = 25;
- // User navigated through a click from a translated page.
- AUTO_TRANSLATION_BY_LINK = 26;
- // The translation was not offered because translate is disabled
- // globally in the user preferences.
- DISABLED_BY_PREF = 11;
- // The translation was not offered because this language is
- // blacklisted in the user config.
- LANGUAGE_DISABLED_BY_USER_CONFIG = 12;
- // The translation was not offered because this language or URL is
- // blacklisted in the user config.
- URL_DISABLED_BY_USER_CONFIG = 13;
- // The translation was not offered because this language has been denied too
- // many times.
- LANGUAGE_DISABLED_BY_AUTO_BLACKLIST = 14;
- // The translation was not offered because Ranker dismissed it.
- DISABLED_BY_RANKER = 15;
- // The translation was not offered because the source or target
- // language is not supported.
- UNSUPPORTED_LANGUAGE = 16;
- // The translation was not offered because the URL is not
- // supported (e.g. New Tab Page).
- UNSUPPORTED_URL = 17;
- // The previous page was in the same language, so the translate UI was
- // suppressed.
- MATCHES_PREVIOUS_LANGUAGE = 18;
- // The translate UI was not shown because the browser window associated with
- // the translate event has gone away.
- BROWSER_WINDOW_IS_INVALID = 19;
- // The translate UI was not shown because the browser window for the
- // translate prompt is no longer active.
- BROWSER_WINDOW_NOT_ACTIVE = 20;
- // The translate UI was not shown because the browser window is minimized.
- BROWSER_WINDOW_IS_MINIMIZED = 21;
- // The translate UI was not shown because the web context for the translate
- // prompt is no longer active.
- WEB_CONTENTS_NOT_ACTIVE = 22;
- // The translate UI was not shown because the user is editing a form field.
- EDITABLE_FIELD_IS_ACTIVE = 23;
- // The translate UI was not shown because the language is in the user's User
- // Language Profile.
- LANGUAGE_IN_ULP = 24;
- // Failed to initialize the translate script, this can happen for iOS due
- // to CSPs.
- INITIALIZATION_ERROR = 27;
- }
- // Event received from translate UI.
- optional EventType event_type = 10;
- // Decisions that have been overridden by translate ranker (e.g.
- // LANGUAGE_DISABLED_BY_AUTO_BLACKLIST).
- repeated EventType decision_overrides = 15;
- // The timestamp for the event, in seconds.
- // This value comes from Chromium's TimeTicks::Now(), which is an abstract
- // time value that is guaranteed to always be increasing (regardless of
- // Daylight Saving Time or any other changes to the system clock).
- // These numbers are only comparable within a session. To sequence events
- // across sessions, order by the |session_id| from the
- // ChromeUserMetricsExtension message.
- optional int64 event_timestamp_sec = 11;
- // Modified source language, if the user changed it. If changed more than
- // once, we only keep the last one.
- optional string modified_source_language = 12;
- // Modified target language, if the user changed it. If changed more than
- // once, we only keep the last one.
- optional string modified_target_language = 13;
- }
|