1// Copyright (C) 2017 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//      http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto2";
16
17option java_package = "com.android.internal.messages";
18option java_outer_classname = "SystemMessageProto";
19
20package com_android_notifications;
21
22// Descriptors for system messages: notifications, dialogs, toasts, etc.
23message SystemMessage {
24
25  // System message IDs
26  // These are non-consecutive in order to preserve some existing, ad hoc IDs.
27  // It is OK to use skipped IDs.
28  // Prefer to add new IDs consecutively from zero, search for ADD_NEW_IDS_ABOVE_THIS_LINE.
29  // Most of these IDs only became meaningful with the O release.
30  enum ID {
31    // Unknown
32    NOTE_UNKNOWN = 0;
33
34    // Notify the user that a screenshot was captured.
35    // Package: com.android.systemui
36    NOTE_GLOBAL_SCREENSHOT = 1;
37
38    // Warn the user about an invalid charger.
39    // Package: com.android.systemui
40    NOTE_BAD_CHARGER = 2;
41
42    // Warn the user about low battery.
43    // Package: com.android.systemui
44    NOTE_POWER_LOW = 3;
45
46    // Warn the user that the device has gotten warm.
47    // Package: com.android.systemui
48    NOTE_HIGH_TEMP = 4;
49
50    // Warn the user that some notifications are hidden.
51    // Package: com.android.systemui
52    NOTE_HIDDEN_NOTIFICATIONS = 5;
53
54    // Notify the user of a problem with a plugin (dev devices only).
55    // Package: com.android.systemui
56    NOTE_PLUGIN = 6;
57
58    // Notify the user that instant app is running.
59    // Package: com.android.systemui
60    NOTE_INSTANT_APPS = 7;
61
62    // Notify the user that they should select an input method
63    // Package: android
64    NOTE_SELECT_INPUT_METHOD = 8;
65
66    // Notify the user about limited functionality before decryption
67    // Package: android
68    NOTE_FBE_ENCRYPTED_NOTIFICATION = 9;
69
70    // Give the user a way out of car mode
71    // Package: android
72    NOTE_CAR_MODE_DISABLE = 10;
73
74    // Notification to tell the user that a heavy-weight application is running.
75    // Package: android
76    NOTE_HEAVY_WEIGHT_NOTIFICATION = 11;
77
78    // Notification to tell the user that a process has exceeded its memory limit.
79    // Package: android
80    NOTE_DUMP_HEAP_NOTIFICATION = 12;
81
82    // Notification that is shown when finishing a system upgrade
83    // Package: android
84    NOTE_SYSTEM_UPGRADING = 13;
85
86    // Notify the user that tethering is active.
87    // Package: android
88    NOTE_TETHER_GENERAL = 14;
89    NOTE_TETHER_USB = 15;
90    NOTE_TETHER_BLUETOOTH = 16;
91
92    // Notify the user that always-on VPN has disconnected.
93    // Package: android
94    NOTE_VPN_DISCONNECTED = 17;
95
96    // Notify the user about a sync error.
97    // Package: android
98    NOTE_SYNC_ERROR = 18;
99
100    // Ask the user to select a keyboard language and layout
101    // Package: android
102    NOTE_SELECT_KEYBOARD_LAYOUT = 19;
103
104    // Update the user about the status of the VPN
105    // Package: android
106    NOTE_VPN_STATUS = 20;
107
108    // Package manager either installed or deleted a package
109    // Package: android
110    NOTE_PACKAGE_STATE = 21;
111
112    // Tell the user that storage space is low
113    // Package: android
114    NOTE_LOW_STORAGE = 23;
115
116    // Confirm that the user wants to reset out of retail demo mode
117    // Package: android
118    NOTE_RETAIL_RESET = 24;
119
120    // Entice the use to tap to share files
121    // Package: android
122    NOTE_USB_MTP_TAP = 25;
123
124    // Display the Android Debug Protocol status
125    // Package: android
126    NOTE_ADB_ACTIVE = 26;
127
128    // Inform that USB is configured for Media Transfer Protocol
129    // Package: android
130    NOTE_USB_MTP = 27;
131
132    // Inform that USB is configured for Picture Transfer Protocol
133    // Package: android
134    NOTE_USB_PTP = 28;
135
136    // Inform that USB is configured as a Musical Instrument Digital Interface
137    // Package: android
138    NOTE_USB_MIDI = 29;
139
140    // Inform that USB is configured in host mode
141    // Package: android
142    NOTE_USB_ACCESSORY = 30;
143
144    // Inform the user that the device is supplying power to another device.
145    // Package: android
146    NOTE_USB_SUPPLYING = 31;
147
148    // Inform the user that the device is consuming power from another device.
149    // Package: android
150    NOTE_USB_CHARGING = 32;
151
152    // Inform the user that a certificate authority is managing SSL
153    // Package: android
154    NOTE_SSL_CERT_INFO = 33;
155
156    // Warn the user they are approaching their data limit.
157    // Package: android
158    NOTE_NET_WARNING = 34;
159
160    // Warn the user they have reached their data limit.
161    // Package: android
162    NOTE_NET_LIMIT = 35;
163
164    // Warn the user they have exceeded their data limit.
165    // Package: android
166    NOTE_NET_LIMIT_SNOOZED = 36;
167
168    // Inform the user they need to sign in to an account
169    // Package: android, and others
170    NOTE_ACCOUNT_REQUIRE_SIGNIN = 37;
171
172    // Inform the user that there has been a permission request for an account
173    // Package: android
174    NOTE_ACCOUNT_CREDENTIAL_PERMISSION = 38;
175
176    // Inform the user their phone recently shut down due to high temperature
177    NOTE_THERMAL_SHUTDOWN = 39;
178
179    // Tell the user about currently running foreground services
180    // Package: android
181    NOTE_FOREGROUND_SERVICES = 40;
182
183    // Inform the user that the connected audio accessory is not supported
184    NOTE_USB_AUDIO_ACCESSORY_NOT_SUPPORTED = 41;
185
186    // Inform the user that a wrong password was detected while attempting to connect
187    // to a wifi network
188    NOTE_WIFI_WRONG_PASSWORD = 42;
189
190    // Inform the user that Wifi Wake will re-enable wifi when possible
191    NOTE_WIFI_WAKE_ONBOARD = 43;
192
193    // Inform the user that Wifi Wake has automatically re-enabled wifi
194    NOTE_WIFI_WAKE_TURNED_BACK_ON = 44;
195
196    // Inform the user that unexpectedly rapid network usage is happening
197    NOTE_NET_RAPID = 45;
198
199    // Notify the user that carrier wifi networks are available.
200    // Package: android
201    NOTE_CARRIER_NETWORK_AVAILABLE = 46;
202
203    // Inform that USB is configured for Tethering
204    // Package: android
205    NOTE_USB_TETHER = 47;
206
207    // Inform that DND settings have changed on OS upgrade
208    // Package: android
209    NOTE_ZEN_UPGRADE = 48;
210
211    // Notification to suggest automatic battery saver.
212    // Package: android
213    NOTE_AUTO_SAVER_SUGGESTION = 49;
214
215    // ADD_NEW_IDS_ABOVE_THIS_LINE
216    // Legacy IDs with arbitrary values appear below
217    // Legacy IDs existed as stable non-conflicting constants prior to the O release
218
219    // Network status notes, previously decleared in metrics_constants with these values
220    // Package: android
221    //
222    // A captive portal was detected during network validation
223    NOTE_NETWORK_SIGN_IN = 740;
224    // An unvalidated network without Internet was selected by the user
225    NOTE_NETWORK_NO_INTERNET = 741;
226    // A validated network failed revalidation and lost Internet access
227    NOTE_NETWORK_LOST_INTERNET = 742;
228    // The system default network switched to a different network
229    NOTE_NETWORK_SWITCH = 743;
230
231    // Notify the user that their work profile has been deleted
232    // Package: android
233    NOTE_PROFILE_WIPED = 1001;
234
235    // Warn the user that their org can monitor the network
236    // Package: android
237    NOTE_NETWORK_LOGGING = 1002;
238
239    // Confirm that the user wants to remove the guest account.
240    // Package: com.android.systemui
241    NOTE_REMOVE_GUEST = 1010;
242
243    // Confirm that the user wants to log out of the device.
244    // Package: com.android.systemui
245    NOTE_LOGOUT_USER = 1011;
246
247    // Notify the user that a TV PIP is running.
248    // Package: com.android.systemui
249    NOTE_TV_PIP = 1100;
250
251    // Extreme battery saver notification.
252    NOTE_BATTERY_SAVER_WARNING = 1200;
253
254    // Notify the user that open wifi networks are available.
255    // Package: android
256    NOTE_NETWORK_AVAILABLE = 17303299;
257
258    // Communicate to the user about remote bugreports.
259    // Package: android
260    NOTE_REMOTE_BUGREPORT = 678432343;
261
262    // Notify the user about public volume state changes..
263    // Package: com.android.systemui
264    NOTE_STORAGE_PUBLIC = 0x53505542;  // 1397773634
265
266    // Notify the user about private volume state changes.
267    // Package: com.android.systemui
268    NOTE_STORAGE_PRIVATE = 0x53505256;
269
270    // Notify the user about an unsupported storage device..
271    // Package: com.android.systemui
272    NOTE_STORAGE_DISK = 0x5344534b;
273
274    // Notify the user that data or apps are being moved to external storage.
275    // Package: com.android.systemui
276    NOTE_STORAGE_MOVE = 0x534d4f56;
277  }
278}
279