Files
icq/XEP-AUDIT.md
estorozhenko 3c4190402b Telegram bridge: slidgram + SOCKS5 proxy, mod_privilege (XEP-0356), XEP audit
- docker-compose: сервис slidgram (Slidge->Telegram, внешний компонент XEP-0114)
- кастомный образ slidgram-proxy: SOCKS5-патч (SLIDGRAM_PROXY -> Pyrogram) для маршрутизации через VPS01
- prosody: component telegram.nixg.ru (5347), component_secret в секции Component (0.11!),
  mod_privilege + privileged_entities (roster sync мостов), mod_pubsub включён
- modules/mod_privilege.lua (community, hg.prosody.im)
- docs/slidgram/: офлайн-копия документации slidgram (slidge.im)
- README: секции 'Функциональность (XEP)' и 'Мост Telegram'; XEP-AUDIT.md (полный аудит XEP)
- STATUS.md: мост ПОДКЛЮЧЁН, privilege, аудит
2026-08-29 14:38:25 +00:00

4.2 KiB

Аудит XEP-функциональности сервера nixg.ru (Prosody 0.11.9)

Дата: 2026-08-29. Проверено фактически: по конфигу config/prosody.cfg.lua, загруженным модулям в контейнере (docker exec icq-prosody ls ...) и логам (компонент telegram.nixg.ru аутентифицирован, MAM активен).

Легенда: ✅ работает · ⚠️ частично/клиент-сайд · ❌ не реализовано

Основные модули (XEP)

Возможность XEP Как реализовано Статус
MUC (групповые чаты) XEP-0045 Component conference.nixg.ru (mod_muc); + mod_vcard_muc (аватары комнат), mod_muc_moderation (XEP-0425), max_history 200 ✅
PubSub (подписки/ленты) XEP-0060 mod_pubsub (stock, включён 2026-08-29) ✅
HTTP Upload (файлы) XEP-0363 Component upload.nixg.ru (mod_http_upload, community), внешний URL https://upload.nixg.ru, лимит 10 MB, TTL 7 дней ✅
MAM (история) XEP-0313 mod_mam (в modules_enabled) + mod_muc_mam (история комнат) ✅
Carbons (все устройства) XEP-0280 mod_carbons (в modules_enabled) ✅
OMEMO / OTR XEP-0384 / XEP-0363 mod_pep (хранение ключей/бандлов OMEMO). Серверного mod_omemo в Prosody 0.11 нет (и в prosody-modules его нет) — шифрование клиент-сайд (Gajim/Dino/Conversations/Monal работают через PEP). ⚠️ клиент-сайд
WebRTC (звонки) XEP-0166 (Jingle) / XEP-0343 Jingle — клиент-сайд; серверного модуля нет. Prosody не терминатор медиа — для звонков клиент↔клиент достаточно канала сигнализации (c2s/websocket уже есть). ⚠️ клиент-сайд
Bookmarks (избранное) XEP-0402 / XEP-0048 Через PEP/pubsub node storage:bookmarks (mod_pep). Отдельного mod_bookmarks в 0.11 нет; mod_default_bookmarks (community) — по желанию. ✅ через PEP

Связанное (мосты и сервисы)

Возможность XEP Как реализовано Статус
External component (мост Telegram) XEP-0114 Component telegram.nixg.ru, порт 5347 (внутри docker-сети), секрет в component_secret секции Component ✅
Privileged Entity (roster sync для мостов) XEP-0356 mod_privilege (community, добавлен 2026-08-29) + privileged_entities в VirtualHost для telegram.nixg.ru ✅
PEP (аватары, OMEMO, отметки) XEP-0163 mod_pep (в modules_enabled) ✅
In-band registration XEP-0077 mod_register (allow_registration=true) ✅
WebSocket / BOSH XEP-0306 / XEP-0124 mod_websocket, mod_bosh (порт 5280) ✅
Stream Management XEP-0198 mod_smacks (community, установлен) ✅

Что проверять клиентами

  • Gajim/Dino/Conversations — полная поддержка MUC, MAM, Carbons, OMEMO, Bookmarks (через PEP).
  • Converse.js (веб) — MUC, MAM, Carbons, OMEMO (частично), HTTP Upload.
  • Для OMEMO-шифрования: включить в клиенте, ключи хранятся в PEP (сервер уже готов).

Примечания

  • Модули OMEMO/Bookmarks как серверные отсутствуют в экосистеме Prosody 0.11 — это норма: OMEMO и Bookmarks реализованы клиентски через PEP/pubsub. Если нужен именно серверный mod_bookmarks (дефолтные закладки) — ставится mod_default_bookmarks (community, hg.prosody.im).
  • Источник community-модулей (работает из РФ): https://hg.prosody.im/prosody-modules/ (GitHub raw заблокирован, 404).