| // Copyright 2019 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| syntax = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| |
| package notifications.proto; |
| |
| import "notification_data.proto"; |
| |
| // Contains data to determine when a notification should be shown to the user |
| // and the user impression towards this notification. Should match Impression in |
| // impression_types.h. |
| // Next tag: 9 |
| message Impression { |
| // The type of user feedback from a displayed notification. Should match |
| // UserFeedback in notification_scheduler_types.h. |
| enum UserFeedback { |
| NO_FEEDBACK = 0; |
| HELPFUL = 1; |
| NOT_HELPFUL = 2; |
| CLICK = 3; |
| DISMISS = 4; |
| IGNORE = 5; |
| } |
| |
| // The user impression of a particular notification. Should match |
| // ImpressionResult in notification_scheduler_types.h. |
| enum ImpressionResult { |
| INVALID = 0; |
| POSITIVE = 1; |
| NEGATIVE = 2; |
| NEUTRAL = 3; |
| } |
| |
| // Used to override default user action and impression mapping. |
| // Next tag: 3 |
| message ImpressionMapping { |
| optional UserFeedback user_feedback = 1; |
| optional ImpressionResult impression_result = 2; |
| } |
| |
| // Creation time stamp in milliseconds since epoch. |
| optional int64 create_time = 1; |
| |
| // The user feedback on the notification. |
| optional UserFeedback feedback = 2; |
| |
| // The impression type. |
| optional ImpressionResult impression = 3; |
| |
| // If the user feedback is used in computing the current notification deliver |
| // rate. |
| optional bool integrated = 4; |
| |
| // The unique identifier of the notification. |
| optional string guid = 5; |
| |
| // Used to generate impression result. |
| repeated ImpressionMapping impression_mapping = 6; |
| |
| // Custom data associated with a notification. |
| repeated CustomData custom_data = 7; |
| |
| // Duration to mark NO_FEEDBACK notification as IGNORE. |
| optional int64 ignore_timeout_duration = 8; |
| } |