Index: sync/protocol/synced_notification_data.proto |
diff --git a/sync/protocol/synced_notification_data.proto b/sync/protocol/synced_notification_data.proto |
deleted file mode 100644 |
index abd52a8c470687aee5eeda56bd02cec55e07ca9a..0000000000000000000000000000000000000000 |
--- a/sync/protocol/synced_notification_data.proto |
+++ /dev/null |
@@ -1,207 +0,0 @@ |
-// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
-// |
-// Sync protocol datatype extension for push notifications.. |
- |
-// Update proto_value_conversions{.h,.cc,_unittest.cc} if you change |
-// any fields in this file. |
- |
-syntax = "proto2"; |
- |
-option optimize_for = LITE_RUNTIME; |
-option retain_unknown_fields = true; |
- |
-package sync_pb; |
- |
-import "synced_notification_render.proto"; |
- |
-// This message allows clients to identify a notification they have created. |
-message SyncedNotificationIdentifier { |
- // The application that the notification is a part of. |
- optional string app_id = 1; |
- |
- // Notifications with the same coalescing key (isolated to the same app_id) |
- // will be grouped together when fetched. |
- optional string coalescing_key = 2; |
-} |
- |
-message SyncedNotificationCreator { |
- // The gaia id of the creator. If a notification does not have a clear |
- // creator, skip this and follow the directions below to use a system creator. |
- optional int64 gaia_id = 1; |
- |
- // Indicates that the creator is a "system" creator. Example of these are |
- // notifications sent to the user where the addressee is "Google", such as the |
- // "You have violated our TOS, and have 3 days to fix it or you'll lose your |
- // account" notifications. If is_system is set, gaia_id must not be set and |
- // instead the app_id field must be set. |
- optional bool is_system = 2; |
- |
- // Only set this in the system-creator case. |
- optional string app_id = 3; |
-} |
- |
-message SyncedNotificationRecipients { |
- repeated int64 gaia_id = 1; |
- |
- // For now, only support gaia id recipients. Add more recipient types via |
- // 'repeated Type other_type = X' when necessary. |
-} |
- |
-message SyncedNotification { |
- // A secondary type that is isolated within the same app_id. |
- // |
- // NOTE: For ASBE support purposes this must be in the format [A-Za-z_]+. |
- optional string type = 1; |
- |
- // Whatever string the client entered during creation. If no external_id is |
- // specified, the notification can no longer be identified individually for |
- // fetching/deleting, etc... |
- optional string external_id = 2; |
- |
- // The creator of the notification. |
- optional SyncedNotificationCreator creator = 3; |
- |
- // Client specific data. |
- optional MapData client_data = 4; |
-} |
- |
-message CoalescedSyncedNotification { |
- // An opaque string key used to identify individual coalesced notifications. |
- optional string key = 1; |
- |
- optional string app_id = 2; |
- |
- // All the notifications that are grouped together. |
- repeated SyncedNotification notification = 3; |
- |
- // Data that is used directly by endpoints to render notifications in the case |
- // where no "native" app can handle the notification. |
- optional SyncedNotificationRenderInfo render_info = 4; |
- |
- // Read state will be per coalesced notification. |
- enum ReadState { |
- UNREAD = 1; |
- READ = 2; |
- DISMISSED = 3; |
- SEEN = 4; |
- } |
- optional ReadState read_state = 5; |
- |
- // The time when the LATEST notification of the coalesced notification is |
- // created (in milliseconds since the linux epoch). |
- // This is called updated_version in the server side protobuf. |
- optional uint64 creation_time_msec = 6; |
- |
- enum Priority { |
- INVISIBLE = 1; |
- LOW = 2; |
- HIGH = 3; |
- // We will most likely add at least one more priority in the near future. |
- }; |
- optional Priority priority = 7; |
- |
- // Security token that is to be used when making a PerformUserAction request |
- // when any user action within this coalesced notification is triggered. |
- optional string user_action_token = 8; |
- |
- // This field corresponds to catchup_version in entity, which represents the |
- // version entity was last modified. Note that the |
- // Entity.last_modified_version will be actually the last creation version. |
- // See comments in updated_version. |
- optional uint64 last_modified_version = 9; |
- |
- // Clients should use this field to order the notifications. Currently this is |
- // calculated from (priority, updated_version) pair. |
- optional uint64 sort_version = 10; |
-} |
- |
-message SyncedNotificationList { |
- repeated CoalescedSyncedNotification coalesced_notification = 1; |
-} |
- |
-// MapData, Data, and ListData are used to sending aribitrary payloads |
-// between instances of applications using Synced Notifications. The |
-// schema atop MapData will be defined by the client application. |
-message MapData { |
- message Entry { |
- optional string key = 1; |
- optional Data value = 2; |
- }; |
- repeated Entry entry = 1; |
-}; |
- |
-message Data { |
- optional bool boolean_value = 1; |
- optional int32 int_value = 2; |
- optional double float_value = 3; |
- optional string string_value = 4; |
- optional ListData list_value = 5; |
- optional MapData map_value = 6; |
-}; |
- |
-message ListData { |
- repeated Data value = 1; |
-}; |
- |
-// The RenderContext encapsulates data about the device that is displaying the |
-// notification. In the future, RenderContext might include data like the |
-// location of the user. |
-message RenderContext { |
- // The type of the device. This will be used to decide the resolution as well |
- // as the size of the image returned with the response. |
- // The server will try to find the closest matching resource to use. |
- // The android densities are from |
- // http://developer.android.com/guide/practices/screens_support.html |
- enum DeviceType { |
- UNKNOWN = 0; |
- IOS_NON_RETINA = 1; |
- IOS_RETINA = 2; |
- ANDROID_MDPI = 3; |
- ANDROID_HDPI = 4; |
- ANDROID_XHDPI = 5; |
- ANDROID_TVDPI = 6; |
- DESKTOP_NON_RETINA = 7; |
- DESKTOP_RETINA = 8; |
- ANDROID_XXHDPI = 9; |
- CHROME_1X = 10; |
- CHROME_2X = 11; |
- } |
- |
- optional DeviceType device_type = 1; |
- |
- // The locale to render the notifications in. |
- optional string language_code = 2; |
-}; |
- |
-// List of AppIds and whether to treat the list as a Whitelist or Blacklist. |
-message AppList { |
- enum Type { |
- // Specified app_ids are supported. |
- WHITELIST = 1; |
- // Specified app_ids are not supported. |
- BLACKLIST = 2; |
- } |
- |
- // Whether to treat the app_id list as a Whitelist or Blacklist. |
- optional Type type = 1 [default = WHITELIST]; |
- |
- // List of AppIds. |
- repeated string app_id = 2; |
-}; |
- |
-message ServerContext { |
- // render_context encapsulates data about the device that is displaying the |
- // notifications. |
- optional RenderContext render_context = 1; |
- |
- // List of AppIds and whether it is a blacklist or whitelist. |
- // This field needs to be set only when the set of apps enabled on a client |
- // changes. In the server response, this field will get cleared. |
- optional AppList app_list = 2; |
- |
- // The view that the device has registered with. It is obtained from guns |
- // based on the app_list specified above. |
- optional string view_id = 3; |
-}; |