1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // Cast-enabled device specific log data included in ChromeUserMetricsExtension.
9 option optimize_for = LITE_RUNTIME;
10 option java_outer_classname = "CastLogsProtos";
11 option java_package = "org.chromium.components.metrics";
16 message CastLogsProto {
17 // Cast specific device information.
19 message CastDeviceInfo {
20 // The product type of Cast device sent from Cast-enabled devices.
22 enum CastProductType {
23 CAST_PRODUCT_TYPE_UNKNOWN = 0;
24 CAST_PRODUCT_TYPE_CHROMECAST = 1;
25 CAST_PRODUCT_TYPE_AUDIO = 3;
26 CAST_PRODUCT_TYPE_ANDROID_TV = 4;
28 optional CastProductType type = 1;
30 // The hardware revision of each product.
31 optional string hardware_revision = 2;
33 // The manufacturer of Cast device, this value is empty when the device
34 // is manufactured by Google.
35 optional string manufacturer = 3;
37 // The device sends this information at least once per day.
38 optional CastDeviceInfo cast_device_info = 1;
40 // Information about Cast connection between sender application and
41 // Cast-enabled device.
43 message CastConnectionInfo {
44 optional fixed32 transport_connection_id = 1;
46 optional fixed32 virtual_connection_id = 2;
48 // This message describes a detail sender device and sdk. Those are
49 // parsed from the user agent string sent from sender sdk during connection.
52 // The identifier for the sender device, that is not tied any kind of
53 // device id outside of UMA, and this id is reset when user resets sender
55 optional fixed64 sender_device_id = 1;
57 // SDK type the sender application was using.
63 // E.G. Android sdk, iOS sdk.
66 // SDK via Chrome extension.
67 SDK_CHROME_EXTENSION = 2;
69 optional SDKType sdk_type = 2;
71 // Version of sender sdk/extension used to connection.
72 optional string version = 3;
74 // Chrome browser version where the Chrome extension running.
75 // Only Chrome extension sends this information.
76 optional string chrome_browser_version = 4;
78 // Platform of sender device.
81 // Any platform other then cases below.
88 PLATFORM_CHROMEOS = 5;
91 optional Platform platform = 5;
93 // Sender device system version.
94 optional string system_version = 6;
96 // What type of connection type used to establish between sender and
99 CONNECTION_TYPE_UNKNOWN = 0;
100 CONNECTION_TYPE_LOCAL = 1;
101 CONNECTION_TYPE_RELAY = 2;
103 optional ConnectionType transport_connection_type = 7;
105 // Sender device model.
106 optional string model = 8;
108 optional SenderInfo sender_info = 3;
111 // Virtual connection established between sender application and Cast device.
112 repeated CastConnectionInfo cast_connection_info = 2;
114 // Stores Cast-enabled device specific events with a various context data.
116 message CastEventProto {
117 // The name of the action, hashed by same logic used to hash user action
118 // event and histogram.
119 optional fixed64 name_hash = 1;
121 // The timestamp for the event, in milliseconds.
122 optional int64 time_msec = 2;
124 // The Cast receiver app ID related with this event.
125 optional fixed32 app_id = 3;
127 // The identifier for receiver application session.
128 optional fixed64 application_session_id = 4;
130 // Receiver side Cast SDK version.
131 optional fixed64 cast_receiver_version = 5;
133 // transport_connection_id related with this event.
134 optional fixed32 transport_connection_id = 6;
136 // virtual_connection_id related with this event.
137 optional fixed32 virtual_connection_id = 7;
139 // An optional value for the associated event
140 optional int64 value = 8;
142 repeated CastEventProto cast_event = 3;