| Предыдущий | Следующий |
| RTC_E_NO_GROUP | RTC_E_TOO_MANY_GROUPS |
RTC_E_DUPLICATE_GROUP
Интерпретация результата
RTC_E_DUPLICATE_GROUP (0X80EE0052) означает: presence group с той же authoritative identity уже существует. Значение полезно только вместе с фазой RTC/COM state machine; последующий общий network error не должен заменять первичный результат.
Английский маркер для сопоставления с исходной документацией: a group with the same authoritative identity already exists
. Используйте его как поисковый ключ вместе с timestamp и transaction/session ID.
Что сохранить
- profile identity и текущий presence enabled/roaming state.
- URI/ID текущих buddy, watcher или group и состояние соответствующей коллекции.
- ACL/authorization state и событие, после которого появился результат.
Код-специфическая проверка
Для group collision сохраните group ID, server identity и parent/list generation. Два одинаковых отображаемых имени ещё не доказывают дубль, а совпадение authoritative identity — доказывает. После roaming sync используйте уже существующую группу вместо второго CreateGroup.
Сверяйте server ID/URI элемента с текущей buddy, watcher или group collection и состоянием синхронизированной коллекции; локальный кэш после sync может быть уже устаревшим.
Проверьте, не является ли результат корректным сигналом идемпотентности: сравните identity существующего объекта с тем, который код собирается создать или включить. Повторное создание после такого результата может породить второй lifecycle и скрыть владельца состояния.
Пример из исходного описания: Two devices create the same group while offline and later synchronize.
. Для проверки меняйте только параметр или состояние, которое отличает этот сценарий от рабочего.
Восстановление
Если существующий объект соответствует запросу, продолжайте с ним; если нет — завершите конфликтующий объект или сеанс и создайте новый только после подтверждённого завершения предыдущего состояния.
Технические ссылки
- Client Presence Roaming.
- Microsoft RTC return constants.
- SIP presence event package.
- Watcher information.
Нужно найти другой код? Найти другой код состояния или ошибки.