| // 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. |
| |
| syntax = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| |
| option java_outer_classname = "CastLogsProtos"; |
| option java_package = "org.chromium.components.metrics"; |
| |
| package metrics; // Cast-enabled device specific log data included in |
| // ChromeUserMetricsExtension. |
| |
| // Next tag: 7 |
| message CastLogsProto { |
| // Cast specific device information. |
| // Next tag: 7 |
| message CastDeviceInfo { |
| // The product type of Cast device sent from Cast-enabled devices. |
| // Next tag: 8 |
| enum CastProductType { |
| CAST_PRODUCT_TYPE_UNKNOWN = 0; |
| CAST_PRODUCT_TYPE_CHROMECAST = 1; |
| CAST_PRODUCT_TYPE_TV = 2; |
| CAST_PRODUCT_TYPE_AUDIO = 3; |
| CAST_PRODUCT_TYPE_ANDROID_TV = 4; |
| CAST_PRODUCT_TYPE_ASSISTANT = 5; |
| CAST_PRODUCT_TYPE_ANDROID_THINGS = 6; |
| CAST_PRODUCT_TYPE_CHROME_OS = 7; |
| } |
| 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 serial number. |
| optional string serial_number = 5; |
| |
| // Hardware information stored in factory partition. |
| message HardwareInfo { |
| optional string color = 1; |
| |
| optional string mic = 2; |
| |
| optional string memory = 3; |
| |
| optional string nand = 4; |
| |
| optional string mfg_date = 5; |
| |
| optional string build_name = 6; |
| |
| optional string config = 7; |
| |
| optional string emmc = 8; |
| |
| optional string display = 9; |
| |
| optional string amp = 10; |
| } |
| optional HardwareInfo hardware_info = 6; |
| } |
| // The device sends this information at least once per day. |
| optional CastDeviceInfo cast_device_info = 1; |
| |
| // Information about Cast V2 API 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. |
| // Next tag: 10 |
| message SenderInfo { |
| // The identifier for the sender device, that is pseudonymous and can be |
| // reset. This id has no link to a specific user or 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. The format varies |
| // by each platform. |
| 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: 8 |
| 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; |
| |
| // The sender is Cast device - including itself. |
| PLATFORM_CAST = 7; |
| } |
| 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; |
| |
| // A connection established directly between sender and receiver. |
| CONNECTION_TYPE_LOCAL = 1; |
| |
| // A connection created by opencast to the device via the cloud relay. |
| CONNECTION_TYPE_RELAY = 2; |
| |
| // A connection created by receiver itself internally. |
| CONNECTION_TYPE_INTERNAL = 3; |
| } |
| optional ConnectionType transport_connection_type = 7; |
| |
| // Sender device model. |
| optional string model = 8; |
| |
| // Last 2 bytes of the sender’s local IP addresses (both IP4/IP6) when |
| // the sender connected. This field stores ip fragment to last 2 bytes and |
| // first 2 bytes won't be used. |
| optional int32 sender_local_ip_fragment = 9; |
| } |
| 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: 18 |
| 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, often a measurement in |
| // milliseconds. |
| optional int64 value = 8; |
| |
| // Group id of Multizone Audio. |
| optional fixed64 group_uuid = 10; |
| |
| optional string conversation_key = 11; |
| |
| // Request id of V2 Application Protocol |
| optional fixed32 request_id = 12; |
| |
| optional string event_id = 13; |
| |
| optional string aogh_request_id = 16; |
| |
| // Optional value associated with the event. For example, may be used for |
| // error codes. |
| message Metadata { |
| optional fixed64 name_hash = 1; |
| optional int64 value = 2; |
| } |
| repeated Metadata metadata = 14; |
| |
| // Optional values associated with the event. |
| repeated float feature_vector = 15; |
| |
| // Optional value associated with timezone update event. |
| optional string timezone_id = 17; |
| } |
| repeated CastEventProto cast_event = 3; |
| |
| // Virtual release track for releases sent to partners, trusted beta testers, |
| // developers, etc. |
| optional fixed32 virtual_release_track = 4; |
| |
| // Cast specific device information which is expected to change over time. |
| // Next tag: 8 |
| message CastDeviceMutableInfo { |
| // This is the last type of reboot the device encountered |
| // Next tag: 9 |
| enum RebootType { |
| REBOOT_TYPE_UNKNOWN = 0; |
| REBOOT_TYPE_FORCED = 1; // Power removed from device |
| REBOOT_TYPE_API = 2; // Requested from reboot setup api |
| REBOOT_TYPE_NIGHTLY = 3; |
| REBOOT_TYPE_OTA = 4; |
| REBOOT_TYPE_WATCHDOG = 5; |
| REBOOT_TYPE_PROCESS_MANAGER = 6; |
| REBOOT_TYPE_CRASH_UPLOADER = 7; |
| REBOOT_TYPE_FDR = 8; |
| } |
| optional RebootType last_reboot_type = 1; |
| |
| // System version which the cast_shell is running. |
| optional fixed64 system_build_number = 2; |
| |
| // An identifier that is specific to the combination of app and device, in |
| // this case the one used by backdrop. |
| optional string backdrop_app_device_id = 3; |
| |
| // Chromecast release version like "1.23", "1.24". The format is "X.Y" |
| // where X is major version and Y is sub major version. |
| optional fixed32 release_version = 4; |
| |
| // IP version of the primary network interface. |
| enum NetifIPVersion { |
| IP_UNKNOWN = 0; |
| IP_V4 = 1; |
| IP_V6 = 2; |
| IP_DUAL_STACK = 3; |
| } |
| optional NetifIPVersion netif_ip_version = 5; |
| |
| // True if the system which cast_shell is running on, supports ip dual stack |
| // sockets. |
| optional bool ip_dual_stack_supported = 6; |
| |
| // Current timezone which the device is using. |
| optional string timezone_id = 7; |
| } |
| // The device sends this information at least once per day. |
| optional CastDeviceMutableInfo cast_device_mutable_info = 5; |
| |
| optional fixed64 receiver_metrics_id = 6; |
| } |