Openfire — группы не обновляются в реестре из базы данных с использованием пользовательской базы данных

StackOverflow https://stackoverflow.com/questions/1907502

  •  19-09-2019
  •  | 
  •  

Вопрос

Я задал этот вопрос в группах Openfire, но там, кажется, довольно тихо.Возможно, кто-то здесь в SO работает с Xiff/Openfire и имеет представление об этом:

Мы используем внешнюю базу данных для пользователей и групп в версиях Openfire 3.6.4 и Xiff 3.0 с нашим собственным клиентом.

Когда пользователь добавляется в нашу базу данных, список не обновляется.Я вошел в систему как «Пользователь1».«Пользователь2» добавлен в базу данных в ту же общую группу, поэтому я должен увидеть его в своем списке.Пользователь2 может войти в систему и увидеть пользователя 1 в своем списке, но список пользователя 1 не обновился.Даже после выхода из системы Пользователь 2 по-прежнему не отображается в списке пользователя 1.

Видимо группа кэшируется или что-то в этом роде.Где мне следует искать решение этой проблемы?Ксифф?Открытый огонь?Я нашел в документации свойство «cache.name.maxLifetime», но не уверен, следует ли мне использовать это свойство, чтобы группы обновляли участников.

Это было полезно?

Решение

Если кто-то зайдет сюда в поисках ответа на этот вопрос, вы можете следить за ним здесь:

Группы не обновляются в реестре из базы данных с использованием пользовательской базы данных.

На форумах Ignite Realtime есть частичное решение.

Другие советы

Лучшим подходом было бы использование протокола реестра (см. RFC 3921, раздел 7), чтобы изменить список, возможно, написав компонент для OpenFire.Это приведет к изменению кэшей при передаче, а также к отправке уведомлений клиентам, которые в данный момент вошли в систему от имени пользователя.Кроме того, у вас не возникнет проблем с перезаписью изменений.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top