1/* 2 * Copyright (C) 2017 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17syntax = "proto2"; 18option java_multiple_files = true; 19 20package android.app; 21 22import "frameworks/base/core/proto/android/privacy.proto"; 23 24/** 25 * An android.app.NotificationManager.Policy object. 26 */ 27message PolicyProto { 28 option (.android.msg_privacy).dest = DEST_AUTOMATIC; 29 30 enum Category { 31 CATEGORY_UNKNOWN = 0; 32 // Reminder notifications are prioritized. 33 REMINDERS = 1; 34 // Event notifications are prioritized. 35 EVENTS = 2; 36 // Message notifications are prioritized. 37 MESSAGES = 3; 38 // Calls are prioritized. 39 CALLS = 4; 40 // Calls from repeat callers are prioritized. 41 REPEAT_CALLERS = 5; 42 // Alarms are prioritized. 43 ALARMS = 6; 44 // Media, game, voice navigation are prioritized. 45 MEDIA = 7; 46 // System (catch-all for non-never suppressible sounds) are prioritized. 47 SYSTEM = 8; 48 // Priority conversations are prioritized 49 CONVERSATIONS = 9; 50 } 51 repeated Category priority_categories = 1; 52 53 enum Sender { 54 // Any sender is prioritized. 55 ANY = 0; 56 // Saved contacts are prioritized. 57 CONTACTS = 1; 58 // Only starred contacts are prioritized. 59 STARRED = 2; 60 } 61 optional Sender priority_call_sender = 2; 62 optional Sender priority_message_sender = 3; 63 64 enum SuppressedVisualEffect { 65 SVE_UNKNOWN = 0; 66 // Whether notifications suppressed by DND should not interrupt visually 67 // (e.g. with notification lights or by turning the screen on) when the 68 // screen is off. 69 // FULL_SCREEN_INTENT, AMBIENT, and LIGHTS should be used instead. 70 SCREEN_OFF = 1 [deprecated = true]; 71 // Whether notifications suppressed by DND should not interrupt visually 72 // when the screen is on (e.g. by peeking onto the screen). 73 // PEEK should be used instead of ON. 74 SCREEN_ON = 2 [deprecated = true]; 75 // Whether full screen intents} from notifications intercepted by DND 76 // are blocked. 77 FULL_SCREEN_INTENT = 3; 78 // Whether lights from notifications intercepted by DND are blocked. 79 LIGHTS = 4; 80 // Whether notifications intercepted by DND are prevented from peeking. 81 PEEK = 5; 82 // Whether notifications intercepted by DND are prevented from 83 // appearing in the status bar, on devices that support status bars. 84 STATUS_BAR = 6; 85 // Whether badges from notifications intercepted by DND are blocked on 86 // devices that support badging. 87 BADGE = 7; 88 // Whether notification intercepted by DND are prevented from appearing 89 // on ambient displays on devices that support ambient display. 90 AMBIENT = 8; 91 // Whether notification intercepted by DND are prevented from appearing 92 // in notification list views like the notification shade or lockscreen 93 // on devices that support those views. 94 NOTIFICATION_LIST = 9; 95 } 96 repeated SuppressedVisualEffect suppressed_visual_effects = 4; 97} 98