XMPP: многопользовательский чат только для чтения
Я хочу создать MUC, где только 1 пользователь (владелец / администратор) может отправлять сообщения. Другие пользователи должны присоединиться к чату без каких-либо приглашений, но только в режиме только для чтения. (что-то вроде новостной ленты, парсер будет публиковать новости в чат каждые 15 минут, любой может присоединиться к чату и читать новости, но никто не может писать в этот чат)
Я уже попробовал:
<field
var='muc#roomconfig_moderatedroom'>
<value>1</value>
</field>
Но любой пользователь по-прежнему может писать сообщения в чат. И я попробовал:
<field
var='muc#roomconfig_membersonly'>
<value>1</value>
</field>
В этом случае пользователи не могут присоединиться к чату.
Какие-либо предложения?
1 ответ
Вы можете использовать правила голосовой политики комнаты, чтобы решить, кто может, а кто нет, чтобы писать в комнату.
В вашем случае вам понадобятся две роли для вашей комнаты:
- посетитель
- участник
Вы можете отключить возможность писать сообщения для любого пользователя, изменив его роль с Участника на Посетителя.
Подробнее о том, как работает управление голосами в XEP-0045, можно узнать здесь: http://xmpp.org/extensions/xep-0045.html.
Вы должны убедиться, что ваш XMPP-сервер реализует это расширение.