From f0eb495ceebfced779d54b5fcfab2aabdea35ad2 Mon Sep 17 00:00:00 2001 From: Travis Ralston Date: Thu, 6 Jun 2019 15:41:28 -0600 Subject: [PATCH] Clarify how notification counts are calculated in /sync Fixes https://github.com/matrix-org/matrix-doc/issues/2015 --- api/client-server/sync.yaml | 6 ++++-- changelogs/client_server/newsfragments/2097.clarification | 1 + specification/modules/receipts.rst | 4 +++- 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 changelogs/client_server/newsfragments/2097.clarification diff --git a/api/client-server/sync.yaml b/api/client-server/sync.yaml index 02fddb84b..4514d4171 100644 --- a/api/client-server/sync.yaml +++ b/api/client-server/sync.yaml @@ -167,11 +167,13 @@ paths: this room. allOf: - $ref: "definitions/event_batch.yaml" - "unread_notifications": + unread_notifications: title: Unread Notification Counts type: object description: |- - Counts of unread notifications for this room + Counts of unread notifications for this room. See the + `Receipts module <#module-receipts>`_ for more information + on how these are calculated. properties: highlight_count: title: Highlighted notification count diff --git a/changelogs/client_server/newsfragments/2097.clarification b/changelogs/client_server/newsfragments/2097.clarification new file mode 100644 index 000000000..68d89bcc8 --- /dev/null +++ b/changelogs/client_server/newsfragments/2097.clarification @@ -0,0 +1 @@ +Clarify how ``unread_notifications`` is calculated. diff --git a/specification/modules/receipts.rst b/specification/modules/receipts.rst index ee2b697a6..1745706e6 100644 --- a/specification/modules/receipts.rst +++ b/specification/modules/receipts.rst @@ -26,7 +26,9 @@ to a homeserver. To prevent this from becoming a problem, receipts are implement using "up to" markers. This marker indicates that the acknowledgement applies to all events "up to and including" the event specified. For example, marking an event as "read" would indicate that the user had read all events *up to* the -referenced event. +referenced event. Servers MUST decremement the number of pending notifications +for a user if the events are up to or including the read receipt. This is typically +done by adjusting the ``unread_notifications`` value in a ``/sync`` response. Events ------