// Copyright 2014 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. // // Cast-enabled device specific log data included in ChromeUserMetricsExtension. syntax = "proto2"; option optimize_for = LITE_RUNTIME; option java_outer_classname = "CastLogsProtos"; option java_package = "org.chromium.components.metrics"; package metrics; // Next tag: 4 message CastLogsProto { // Cast specific device information. // Next tag: 5 message CastDeviceInfo { // The product type of Cast device sent from Cast-enabled devices. // Next tag: 5 enum CastProductType { CAST_PRODUCT_TYPE_UNKNOWN = 0; CAST_PRODUCT_TYPE_CHROMECAST = 1; CAST_PRODUCT_TYPE_AUDIO = 3; CAST_PRODUCT_TYPE_ANDROID_TV = 4; } optional CastProductType type = 1; // The hardware revision of each product. optional string hardware_revision = 2; // The manufacturer of Cast device, this value is empty when the device // is manufactured by Google. optional string manufacturer = 3; // The model of the Cast device. optional string model = 4; } // The device sends this information at least once per day. optional CastDeviceInfo cast_device_info = 1; // Information about Cast connection between sender application and // Cast-enabled device. // Next tag: 4 message CastConnectionInfo { optional fixed32 transport_connection_id = 1; optional fixed32 virtual_connection_id = 2; // This message describes a detail sender device and sdk. Those are // parsed from the user agent string sent from sender sdk during connection. // Next tag: 9 message SenderInfo { // The identifier for the sender device, that is not tied any kind of // device id outside of UMA, and this id is reset when user resets sender // device. optional fixed64 sender_device_id = 1; // SDK type the sender application was using. // Next tag: 3 enum SDKType { SDK_UNKNOWN = 0; // Native SDK type, // E.G. Android sdk, iOS sdk. SDK_NATIVE = 1; // SDK via Chrome extension. SDK_CHROME_EXTENSION = 2; } optional SDKType sdk_type = 2; // Version of sender sdk/extension used to connection. optional string version = 3; // Chrome browser version where the Chrome extension running. // Only Chrome extension sends this information. optional string chrome_browser_version = 4; // Platform of sender device. // Next tag: 7 enum Platform { // Any platform other then cases below. PLATFORM_OTHER = 0; PLATFORM_ANDROID = 1; PLATFORM_IOS = 2; PLATFORM_WINDOWS = 3; PLATFORM_OSX = 4; PLATFORM_CHROMEOS = 5; PLATFORM_LINUX = 6; } optional Platform platform = 5; // Sender device system version. optional string system_version = 6; // What type of connection type used to establish between sender and // receiver. enum ConnectionType { CONNECTION_TYPE_UNKNOWN = 0; CONNECTION_TYPE_LOCAL = 1; CONNECTION_TYPE_RELAY = 2; } optional ConnectionType transport_connection_type = 7; // Sender device model. optional string model = 8; } optional SenderInfo sender_info = 3; } // Virtual connection established between sender application and Cast device. repeated CastConnectionInfo cast_connection_info = 2; // Stores Cast-enabled device specific events with a various context data. // Next tag: 10 message CastEventProto { // The name of the action, hashed by same logic used to hash user action // event and histogram. optional fixed64 name_hash = 1; // The timestamp for the event, in milliseconds. optional int64 time_msec = 2; // The Cast receiver app ID related with this event. optional fixed32 app_id = 3; // The identifier for receiver application session. optional fixed64 application_session_id = 4; // Receiver side Cast SDK version. optional fixed64 cast_receiver_version = 5; // Cast MPL version. optional fixed64 cast_mpl_version = 9; // transport_connection_id related with this event. optional fixed32 transport_connection_id = 6; // virtual_connection_id related with this event. optional fixed32 virtual_connection_id = 7; // An optional value for the associated event optional int64 value = 8; } repeated CastEventProto cast_event = 3; }