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;
14 message CastLogsProto {
15 // Cast specific device information.
17 message CastDeviceInfo {
18 // The product type of Cast device sent from Cast-enabled devices.
20 enum CastProductType {
21 CAST_PRODUCT_TYPE_UNKNOWN = 0;
22 CAST_PRODUCT_TYPE_CHROMECAST = 1;
23 CAST_PRODUCT_TYPE_AUDIO = 3;
24 CAST_PRODUCT_TYPE_ANDROID_TV = 4;
26 optional CastProductType type = 1;
28 // The hardware revision of each product.
29 optional string hardware_revision = 2;
31 // The manufacturer of Cast device, this value is empty when the device
32 // is manufactured by Google.
33 optional string manufacturer = 3;
35 // The device sends this information at least once per day.
36 optional CastDeviceInfo cast_device_info = 1;
38 // Information about Cast connection between sender application and
39 // Cast-enabled device.
41 message CastConnectionInfo {
42 optional fixed32 transport_connection_id = 1;
44 optional fixed32 virtual_connection_id = 2;
46 // This message describes a detail sender device and sdk. Those are
47 // parsed from the user agent string sent from sender sdk during connection.
50 // The identifier for the sender device, that is not tied any kind of
51 // device id outside of UMA, and this id is reset when user resets sender
53 optional fixed64 sender_device_id = 1;
55 // SDK type the sender application was using.
61 // E.G. Android sdk, iOS sdk.
64 // SDK via Chrome extension.
65 SDK_CHROME_EXTENSION = 2;
67 optional SDKType sdk_type = 2;
69 // Version of sender sdk/extension used to connection.
70 optional string version = 3;
72 // Chrome browser version where the Chrome extension running.
73 // Only Chrome extension sends this information.
74 optional string chrome_browser_version = 4;
76 // Platform of sender device.
79 // Any platform other then cases below.
86 PLATFORM_CHROMEOS = 5;
89 optional Platform platform = 5;
91 // Sender device system version.
92 optional string system_version = 6;
94 // What type of connection type used to establish between sender and
97 CONNECTION_TYPE_UNKNOWN = 0;
98 CONNECTION_TYPE_LOCAL = 1;
99 CONNECTION_TYPE_RELAY = 2;
101 optional ConnectionType transport_connection_type = 7;
103 // Sender device model.
104 optional string model = 8;
106 optional SenderInfo sender_info = 3;
109 // Virtual connection established between sender application and Cast device.
110 repeated CastConnectionInfo cast_connection_info = 2;
112 // Stores Cast-enabled device specific events with a various context data.
114 message CastEventProto {
115 // The name of the action, hashed by same logic used to hash user action
116 // event and histogram.
117 optional fixed64 name_hash = 1;
119 // The timestamp for the event, in milliseconds.
120 optional int64 time_msec = 2;
122 // The Cast receiver app ID related with this event.
123 optional fixed32 app_id = 3;
125 // The identifier for receiver application session.
126 optional fixed64 application_session_id = 4;
128 // Receiver side Cast SDK version.
129 optional fixed64 cast_receiver_version = 5;
131 // transport_connection_id related with this event.
132 optional fixed32 transport_connection_id = 6;
134 // virtual_connection_id related with this event.
135 optional fixed32 virtual_connection_id = 7;
137 // An optional value for the associated event
138 optional int64 value = 8;
140 repeated CastEventProto cast_event = 3;