MUCLight Автономная выборка сообщений XMPP

Есть ли какой-либо реализованный MUC Light, который является бета-версией, выпущенной на сервере чата MongooseIM для XMPP.

Как получить следующие сообщения, когда

1) Пользователь не в сети, пока его добавили в группу. 2) Пользователи, которые являются членами оффлайн и получают сообщения в группе muc light.

Я добился mod_zero нажатия, чтобы вызвать автономное сообщение для пользователей, а также смог сохранить сообщение в таблице mam_muc_message в базе данных MySQL моего сервера чата. Но как клиент будет получать эти сообщения, а также получать уведомления обо всех сообщениях.

Любое руководство очень ценится.

http://mongooseim.readthedocs.io/en/latest/open-extensions/muc_light/


person Vicky Dhas    schedule 07.11.2016    source источник
comment
Если сообщения правильно хранятся в mam_muc_message, используйте стандартный протокол, описанный в разделе 4. Запросы архив Message Archive Management XEP.   -  person erszcz    schedule 07.11.2016
comment
вы имеете в виду, что ничего не делать, как xmpp.org/extensions/xep-0045.html #enter-history раздел 7.12.4   -  person Vicky Dhas    schedule 07.11.2016
comment
не могли бы вы привести пример фрагмента. Мук лайт справится с этим???   -  person Vicky Dhas    schedule 07.11.2016
comment
Это совсем не похоже на XEP-0045. MUC Light не поддерживает историю комнаты, как это описывает XEP-0045. Вместо этого используйте Message Archive Management — примеры оттуда должны работать без проблем.   -  person erszcz    schedule 07.11.2016
comment
хорошо, я знаю, что это слишком много, чтобы спросить, можете ли вы сослаться на это и дать мне руководство, что я делаю правильно.   -  person Vicky Dhas    schedule 07.11.2016
comment
mongooseim.readthedocs.io/en/latest/open-extensions/muc_light использовал это, затем установил серверную часть muc_light на odbc, где мои сообщения начали поступать в таблицу muc_mam db для обычных чатов. просто не знаю, как получить, постараюсь, как вы указали, но.   -  person Vicky Dhas    schedule 07.11.2016
comment
см. ссылку 6.2 XEP-0313 Управление архивом сообщений   -  person Vicky Dhas    schedule 07.11.2016
comment
Посмотрите на таблицу mam_muc_message и выберите одного из пользователей, у которых есть сообщения. Подключитесь как один из этих пользователей и отправьте пример 1. фрагмент ссылки на управление архивом сообщений, который я вставил в комментарии выше. Вы должны получить (некоторые) сообщения, которые вы видите в таблице базы данных SQL.   -  person erszcz    schedule 07.11.2016
comment
хорошо, отметил, попробую это и вернусь обратно. спасибо за мгновенный ответ :)   -  person Vicky Dhas    schedule 07.11.2016
comment
Я попробовал пример 1, как указано, и если я отправлю <iq type='set' id='juliet1'> <query xmlns='urn:xmpp:mam:1' queryid='f27' />, это даст мне услугу, недоступную, хотя, если я попытаюсь отправить то же, что и документы MUC Light, раздел 6.2, сообщения будут извлечены, поэтому я использую логику, как указано в разделе с самостоятельным ответом ниже. ‹/iq›   -  person Vicky Dhas    schedule 09.11.2016


Ответы (1)


Спасибо за предложение и комментарии, вот как я справился с небольшим ограничением.

  1. Когда пользователь находится в автономном режиме, когда он был добавлен какой-то группой другими, он не получит эту строфу создания группы, как предлагает muc-light.
  2. Когда он заходит в сеть, должен быть хотя бы кто-то, кто отправит групповое сообщение
  3. Когда он получает это сообщение, я получаю конфигурацию группы и сначала создаю новую группу, а это сообщение ожидаю обработки.
  4. После создания группы я связываю это ожидающее сообщение с этой группой.
  5. Затем я вызываю сообщения MAM light MUC, как указано в 6.2 Архив сообщений XEP-0313 Управление
  6. Затем я извлекаю все предыдущие сообщения, добавляю их в свою базу данных и отображаю на экране.

Единственным существующим ограничением является то, что после того, как он подключится к сети, он не может пойти на сервер и запросить ВСЕ сообщения muclight, некоторые причины, по которым сервер недоступен, выбрасываются, если я попрошу традиционный процесс MAM передать сообщения для muclight.* *** Идентификатор группы .com, который я использую, поскольку они попросили получить ссылку выше.

Надеемся, что бета-версия MUC Light будет улучшаться, принимая это во внимание.

person Vicky Dhas    schedule 09.11.2016
comment
Есть ли какие-либо настройки в файле конфигурации ejabberd для удаления сообщений архива muc из базы данных для очистки через определенный период? - person Vicky Dhas; 23.11.2016