Author Topic: Не обновляется информация о контактах  (Read 10987 times)

0 Members and 1 Guest are viewing this topic.

Offline Davis

Ну там теперь запрашивается весь VCard, все работает пока что
 

Offline Davis

Я удалил локально все контакты, запустил миранду и через 5 секунд имел заполненный ростер и 112 аватаров в папке AvatarCache

Правда у меня еще вот это дополнение.
Каждая миранда каждый день обновляет собственный VCard с сервера. Ну как бы логично, что в первую очередь правильную инфу о себе должен иметь хозяин. Если что-то изменилось, он остальным сообщит :)
« Last Edit: 02 06 2016, 15:29:38 by Davis »
 

Offline Magic

то что запрашивается весь вкард, это логично. Я имею ввиду, что если поменяется только телефон, а не аватар, то никакого уведомления не придет, верно?
Версионность вкард не везде поддерживается к сожалению (
Если аватар сменился, пока ты был в оффлайне - также не спасет, потому что уведомления не будет.
Если ручки растут из попки - это ножки
 

Offline Davis

Я сейчас подопытному аккаунту сменил аватар, а второму подопытному - телефонный номер. завтра посмотрим
 

Offline Davis

Ну да, аватары теперь работают отлично, при создании контакта VCard считывается, но изменения текстовой инфы потом, в процессе жизни, собеседникам не передается. Сама себе миранда их скачивает каждый день благодаря моему вышеупомянутому изменению при подключении. А вот VCard собеседников качается только при открытии их личной информации.
Так что поспешил я отключать сканирование, возвращаю WhenWasIt/Birthdays/RefreshDetails, пусть каждый день обновляет все VCard.
 

Offline Magic

Ну да, аватары теперь работают отлично, при создании контакта VCard считывается, но изменения текстовой инфы потом, в процессе жизни, собеседникам не передается. Сама себе миранда их скачивает каждый день благодаря моему вышеупомянутому изменению при подключении. А вот VCard собеседников качается только при открытии их личной информации.
Так что поспешил я отключать сканирование, возвращаю WhenWasIt/Birthdays/RefreshDetails, пусть каждый день обновляет все VCard.
спасибо за тесты :)
Если ручки растут из попки - это ножки
 

Offline sunchatru

  • Newbie
  • *
  • Posts: 3
  • Karma: 0
А можно было бы сделать простое решение только лишь на базе миранды.
Внедрить в миранду "слушать" сервисные сообщения.
К примеру вы админ, внесли изменение на определенном пользователе, и нет никакой необходимости заставлять обновлять всех клиентов все контакты на сервере, нас интересует только этот один.

Делаем массовую рассылку обычного сообщения по всем контактам сервера в виде #update jid@jabber.ru
В миранде это не будет отображаться как сообщение, но она будет знать что у jid@jabber.ru необходимо обновить данные.
Чтобы это обновление не создавало пиковую нагрузку, можно выбирать случайный интервал исполнения команды 5/10/15 минут.
Причем эти сообщения прекрасно будут уходить в оффлайн, а когда пользователь подключится, то сразу получит команду на обновление определенных jid и все счастливы :)
Так же думаю такая схема была бы справедлива если все данные берутся не из AD а клиент хранит их на сервере. Обновил свои данные, и автоматом отправил своим друзьям и коллегам новости что у вас есть что-то новенькое для них)
 

Offline ghazan

sunchatru,
есть схема, которая позволяет это делать без всяких яких, на основе версионирования всего вкард (а не только аватара) и передачи соотв хэша в презенс. к сожалению, ejabberd режет это к чертям собачьим, на openfire не пробовал.
 

Offline randem

  • Newbie
  • *
  • Posts: 10
  • Karma: 0
Можно ли убрать сервисное сообщение которое появляется при использовании WhenWasIt/Birthdays/RefreshDetails в #Autostart?
« Last Edit: 22 12 2018, 06:10:22 by randem »
 

Offline randem

  • Newbie
  • *
  • Posts: 10
  • Karma: 0
sunchatru,
есть схема, которая позволяет это делать без всяких яких, на основе версионирования всего вкард (а не только аватара) и передачи соотв хэша в презенс. к сожалению, ejabberd режет это к чертям собачьим, на openfire не пробовал.
А не могли бы вы скинуть ссылку на статейку?
 

Offline ghazan

randem,
к-какую статейку? :) статейки нет, там просто есть алгоритм, который в presence вставляет sha256 не аватара, а всего вкарда, вот только в ejabberd в презенс нельзя вставить посторонний хэш, придется править общий, т.е. сторонние клиенты кроме миранды будут посасывать