(оповещение новичка)
Мне нужно запрограммировать многопартийную коммуникационную службу для курсового проекта, и я рассматриваю XMPP для него.
Службе нужна следующая семантика обмена сообщениями:
1) сервер предоставит метод регистрации и отмены регистрации адреса, например somenode@myservice.com/SomeResource
. (сейчас я сделаю это вручную).
2) сервер предоставит способ пересылки входящих сообщений, скажем, от somenode@myservice.com/SomeResource
до someothernode@myservice.com/someOtherResource
, при условии, что последнее зарегистрировано, и способ удаления этой пересылки. (сейчас я сделаю это вручную).
3) анонимные клиенты могут отправлять сообщения, скажем, на somenode@myservice.com/someresource
(только односторонний трафик). Если есть какая-либо настройка пересылки, сообщение будет переслано. Наконец, если зарегистрирован адрес somenode@myservice.com/someresource
, сообщение будет сохранено для последующей доставки (или немедленно, если запрашивающий клиент онлайн - см. Ниже). Если пересылка отсутствует и незарегистрированная, сообщение будет автоматически отброшено.
4) клиенты могут подключаться и получать сообщения с зарегистрированного адреса. Точный метод аутентификации клиентов (например, пароли?) Еще предстоит определить.
- В конце концов, я хочу добавить поддержку подключения клиентов через веб-браузер, чтобы они могли самостоятельно регистрировать / отменять регистрацию и устанавливать / удалять переадресацию.
Таким образом, серверу придется выполнять некоторые нестандартные переключения. Нужно ли для этого реализовать сервер XMPP? Я думаю, что некоторые (или все?) Это также можно сделать с помощью клиента XMPP бот