Довести DM v1 до соответствия коду и документации

This commit is contained in:
AidarKC
2026-07-08 17:28:39 +04:00
parent faada9dcdb
commit 98a2631590
19 changed files with 283 additions and 115 deletions
@@ -81,11 +81,12 @@ SHiNE_DM
### `revisionTimeMs`
- `0` для исходной версии сообщения;
- ненулевое значение для новой ревизии сообщения;
- при редактировании или удалении должно быть больше предыдущего значения для этого же `messageKey`.
- `0` для исходной версии контентного сообщения;
- ненулевое значение для новой текстовой ревизии сообщения;
- для типов `5/6` это время tombstone удаления одного сообщения;
- для типов `7/8` всегда `0`.
То есть это `0` или время, когда сообщение было отредактировано либо удалено.
То есть `revisionTimeMs` отвечает именно за изменение смыслового содержимого сообщения, а не за сам факт перешифровки.
### `reencryptedAtMs`
@@ -94,6 +95,13 @@ SHiNE_DM
Для типов `5/6/7/8` должно быть `0`.
`reencryptedAtMs` не требует, чтобы `revisionTimeMs` был ненулевым. Допустим сценарий:
- `revisionTimeMs = 0`
- `reencryptedAtMs > 0`
если исходное сообщение не редактировалось, но было перешифровано позже.
### `bodyLen`
- `> 0` для типов `1/2/3/4`;
@@ -213,7 +221,7 @@ ReadReceiptBody_v1_0
### Перешифровка
- `revisionTimeMs > 0`
- `revisionTimeMs = 0` или `> 0`
- `reencryptedAtMs > 0`
## 8. Контент типов `3/4`