Как анонимные пользователи могут обмениваться информацией о присутствии с действительными пользователями на Jabber (Ejabberd) - PullRequest
4 голосов
/ 24 декабря 2009

Я работаю в социальной сети, которая должна позволять участникам общаться с посетителями сайта. Концепция проста.

  1. Пользователи, которые зарегистрировались, получают свою учетную запись в реестрах
  2. Когда посетитель заходит на домашнюю страницу социальной сети, он может видеть некоторых онлайн-членов сообщества
  3. Теперь он сможет начать с ними чат, нажав на их имя.

У меня уже есть участники, чтобы общаться со своими товарищами по списку. У меня вопрос, как я могу заставить анонимного пользователя общаться в чате с участником и обмениваться с ним информацией о присутствии?

Мне успешно удалось создать анонимные учетные записи, учетные записи участников и даже отправлять сообщения от анонимного пользователя другим участникам. Но я не могу получить информацию о присутствии от анонимного пользователя к члену или наоборот?

Кстати, чат основан на JS.

1 Ответ

2 голосов
/ 29 декабря 2009

Вы пытаетесь сломать модель XMPP. Присутствие - это система, основанная на разрешении. Вы спрашиваете меня, видите ли вы мое присутствие, я говорю да. Обычно мой клиент автоматически спрашивает вас, могу ли я увидеть ваше присутствие, а ваш клиент говорит «да». Вот что такое реестр - да и нет для запросов на подписку о присутствии.

Вы можете создавать анонимные чаты (MUC, многопользовательский чат), а также присутствовать в них. Это не список, хотя. Это самое близкое к тому, что вы описываете, не вдаваясь в сумасшедшую страну с pubsub, и я не знаю, можно ли даже согнуть этот инструмент достаточно далеко, чтобы иметь анонимные записи в реестре.

...