Нужно ли мне реализовать XMPP-сервер?
Мне нужно запрограммировать многопартийную службу связи для проекта курса, и я рассматриваю XMPP для этого.
Потребности службы обмена сообщениями следующие семантики:
) Сервер1 обеспечит способ регистрации и регистрацией адреса, такие как [email protected]/SomeResource
. (сейчас я сделаю это вручную).
2) сервер предоставит способ пересылки входящих сообщений от, скажем, [email protected]/SomeResource
до [email protected]/someOtherResource
, при условии, что последний зарегистрирован, и метод для удаления этой пересылки. (сейчас я сделаю это вручную).
3) анонимные клиенты могут отправлять сообщения, скажем, [email protected]/someresource
(только односторонний трафик). Если есть какая-либо настройка пересылки, сообщение будет отправлено. Наконец, если зарегистрирован адрес [email protected]/someresource
, сообщение будет сохранено для последующей доставки (или сразу же, если клиент-получатель находится в режиме онлайн - см. Ниже). Если переадресация и незарегистрирован, сообщение будет отключено.
4) клиенты могут подключаться и получать сообщения с зарегистрированного адреса. Точный метод аутентификации клиентов (например, пароли?) Еще предстоит определить.
- В конце концов, я хочу добавить поддержку клиентов для подключения из веб-браузера, чтобы они могли регистрировать/отменять регистрацию и устанавливать/удалять пересылку самостоятельно.
Таким образом, серверу придется выполнять нестандартное переключение. Нужно ли мне для этого использовать XMPP-сервер? Я думаю, что некоторые (или все?) Этого можно сделать также с помощью клипа XMPP-клиента
ОБНОВЛЕНИЕ: оба предложения хороши. После большого количества экспериментов с Smack и susmack я решил, что писать собственный собственный сервер Java - это самый простой способ настроить прототип, работающий как можно скорее. Я изучу ActiveMQ. Я довольно новичок в Java, поэтому мне предлагают другие предложения по началу работы. Моя цель - написать минимальный объем кода и сделать прототип довольно приличного качества в кратчайшие сроки. Pubsub делает часть того, что мне нужно, но мне может понадобиться изменить существующий сервер, чтобы получить именно то, что мне нужно. В частности, мне нужна анонимность подписчиков и анонимные издатели. – Jus12