Определите идентификаторы
Аккаунт обозначает клиента сервиса, канал — конкретное подключение, диалог — контекст общения, сообщение — отдельное событие. Сохраняйте внешний идентификатор вместе с системой-источником и аккаунтом: один номер ID может встречаться у разных клиентов.
Назначьте владельца данных
Укажите, какая система управляет ответственным, состоянием сделки и прочтением сообщения. Для группового чата отдельно храните участников и автора сообщения. Не подменяйте идентификатор беседы номером одного участника.
Согласуйте версии
Опишите обязательные поля, совместимые изменения и поведение при неизвестном значении. Миграцию версии проводите через тестовые примеры и возможность отката. Это схема проектирования; адреса и методы рабочего API dubl.ltd пока не опубликованы.
Пример проверки
Ключ события включает аккаунт и ID сообщения. Тогда сообщение с ID 42 у двух разных компаний не будет ошибочно считаться дублем.
Перед следующим шагом
- Различаются аккаунт и канал
- Определены ключи сущностей
- Есть правила изменения контракта