• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1syntax = "proto2";
2
3package com.android.server.telecom;
4
5option java_package = "com.android.server.telecom";
6option java_outer_classname = "PulledAtomsClass";
7
8message PulledAtoms {
9  repeated CallStats call_stats = 1;
10  optional int64 call_stats_pull_timestamp_millis = 2;
11  repeated CallAudioRouteStats call_audio_route_stats = 3;
12  optional int64 call_audio_route_stats_pull_timestamp_millis = 4;
13  repeated TelecomApiStats telecom_api_stats = 5;
14  optional int64 telecom_api_stats_pull_timestamp_millis = 6;
15  repeated TelecomErrorStats telecom_error_stats = 7;
16  optional int64 telecom_error_stats_pull_timestamp_millis = 8;
17  repeated TelecomEventStats telecom_event_stats = 9;
18  optional int64 telecom_event_stats_pull_timestamp_millis = 10;
19}
20
21/**
22 * Pulled atom to capture stats of the calls
23 * From frameworks/proto_logging/stats/atoms/telecomm/telecom_extension_atom.proto
24 */
25message CallStats {
26    // The value should be converted to android.telecom.CallDirectionEnum
27    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
28    optional int32 call_direction = 1;
29
30    // True if call is external. External calls are calls on connected Wear
31    // devices but show up in Telecom so the user can pull them onto the device.
32    optional bool external_call = 2;
33
34    // True if call is emergency call.
35    optional bool emergency_call = 3;
36
37    // True if there are multiple audio routes available
38    optional bool multiple_audio_available = 4;
39
40    // The value should be converted to android.telecom.AccountTypeEnum
41    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
42    optional int32 account_type = 5;
43
44    // UID of the package to init the call. This should always be -1/unknown for
45    // the private space calls
46    optional int32 uid = 6;
47
48    // Total number of the calls
49    optional int32 count = 7;
50
51    // Average elapsed time between CALL_STATE_ACTIVE to CALL_STATE_DISCONNECTED.
52    optional int32 average_duration_ms = 8;
53
54    // The disconnect cause of the call. Eg. ERROR, LOCAL, REMOTE, etc.
55    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
56    optional int32 disconnect_cause = 9;
57
58    // The type of simultaneous call type. Eg. SINGLE, DUAL_SAME_ACCOUNT,
59    // DUAL_DIFF_ACCOUNT, etc.
60    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
61    optional int32 simultaneous_type = 10;
62
63    // True if it is a video call
64    optional bool video_call = 11;
65}
66
67/**
68 * Pulled atom to capture stats of the call audio route
69 * From frameworks/proto_logging/stats/atoms/telecomm/telecom_extension_atom.proto
70 */
71message CallAudioRouteStats {
72    // The value should be converted to android.telecom.CallAudioEnum
73    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
74    optional int32 call_audio_route_source = 1;
75
76    // The value should be converted to android.telecom.CallAudioEnum
77    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
78    optional int32 call_audio_route_dest = 2;
79
80    // True if the route is successful.
81    optional bool success = 3;
82
83    // True if the route is revert
84    optional bool revert = 4;
85
86    // Total number of the audio route
87    optional int32 count = 5;
88
89    // Average time from the audio route start to complete
90    optional int32 average_latency_ms = 6;
91}
92
93/**
94 * Pulled atom to capture stats of Telecom API usage
95 * From frameworks/proto_logging/stats/atoms/telecomm/telecom_extension_atom.proto
96 */
97message TelecomApiStats {
98    // The value should be converted to android.telecom.ApiNameEnum
99    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
100    optional int32 api_name = 1;
101
102    // UID of the caller. This is always -1/unknown for the private space.
103    optional int32 uid = 2;
104
105    // The value should be converted to android.telecom.ApiResultEnum
106    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
107    optional int32 api_result = 3;
108
109    // The number of times this event occurs
110    optional int32 count = 4;
111}
112
113/**
114 * Pulled atom to capture stats of Telecom module errors
115 * From frameworks/proto_logging/stats/atoms/telecomm/telecom_extension_atom.proto
116 */
117message TelecomErrorStats {
118    // The value should be converted to android.telecom.SubmoduleEnum
119    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
120    optional int32 submodule = 1;
121
122    // The value should be converted to android.telecom.ErrorEnum
123    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
124    optional int32 error = 2;
125
126    // The number of times this error occurs
127    optional int32 count = 3;
128}
129
130/**
131 * Pulled atom to capture stats of Telecom critical events
132 */
133message TelecomEventStats {
134    // The event name
135    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
136    optional int32 event = 1;
137
138    // UID of the caller. This is always -1/unknown for the private space.
139    optional int32 uid = 2;
140
141    // The cause related to the event
142    // From frameworks/proto_logging/stats/enums/telecomm/enums.proto
143    optional int32 event_cause = 3;
144
145    // The number of times this event occurs
146    optional int32 count = 4;
147}
148