https://ru-matrix.org/api.php?action=feedcontributions&user=FLegmatik&feedformat=atom[matrix] на Русском - Вклад [ru]2024-03-29T11:01:05ZВкладMediaWiki 1.37.1https://ru-matrix.org/index.php?title=Database_corruption&diff=182Database corruption2023-04-04T06:07:54Z<p>FLegmatik: Новая страница: «Иногда вследствие каких-либо проблем или обновлений у сервера synapse повреждается база данных и в логах появляется ошибка наподобие следующей. RuntimeError: Database corruption: Event $s_Fdun0CtftYMU5YT2m5UfWtrIGfRup059GNNnLpuxA in room !EtibtEWKcLtNgysPVt:matrix.org from the database appears to have been modified (calculated event id $-6mV...»</p>
<hr />
<div>Иногда вследствие каких-либо проблем или обновлений у сервера synapse повреждается база данных и в логах появляется ошибка наподобие следующей. <br />
RuntimeError: Database corruption: Event $s_Fdun0CtftYMU5YT2m5UfWtrIGfRup059GNNnLpuxA in room !EtibtEWKcLtNgysPVt:matrix.org from the database appears to have been modified (calculated event id $-6mVvGaExTh03hb06XS7mfPbE2Vfd4jSv0z84B--w9M)<br />
Ошибка может появляться как при использовании базы данных sqlite, так и в pgsql. При этом пользователи сервера не могут войти в определённую комнату или просто прочитать там сообщения, если уже вошли. <br />
<br />
==Workaround==<br />
Самый простой обходной способ решения проблемы — банально удалить повреждённое событие. Удалять можно, не останавливая сервер: вероятно, этих ошибок будет выявлено несколько десятков, и перезапускать сервер ради каждой нерационально. <br />
Сначала сделаем бекап базы данных, остановив сервер. На бекап со сжатием уходит около получаса. <br />
systemctl stop matrix-synapse<br />
time pg_dump -d synapse -h localhost -p 5432 -U matrix-synapse -Z 9 -f backupmatrixdb.sql.0.gz # тут запрашивается пароль пользователя, имеющего доступ к БД<br />
systemctl start matrix-synapse<br />
<br />
Потом подключаемся к базе клиентом pgsql и удаляем событие из двух таблиц. <br />
psql -U matrix-synapse -W synapse<br />
synapse=> delete from event_edges where event_id = '$s_Fdun0CtftYMU5YT2m5UfWtrIGfRup059GNNnLpuxA';<br />
DELETE 1<br />
synapse=> delete from events where event_id = '$s_Fdun0CtftYMU5YT2m5UfWtrIGfRup059GNNnLpuxA';<br />
DELETE 1<br />
<br />
Вновь смотрим логи матрикс-сервера. Если он жалуется на другое событие, удаляем его. Если жалобы прекратились, выходим из клиента СУБД командой exit и на всякий случай перезапускаем матрикс-сервер.</div>FLegmatikhttps://ru-matrix.org/index.php?title=%D0%9F%D0%B5%D1%80%D0%B5%D1%85%D0%BE%D0%B4_%D0%BD%D0%B0_%D0%B4%D0%BE%D0%B2%D0%B5%D1%80%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%81%D0%B5%D1%80%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82%D1%8B_%D0%B2_%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D0%B8_0.99&diff=96Переход на доверенные сертификаты в версии 0.992019-06-12T09:37:36Z<p>FLegmatik: </p>
<hr />
<div>Одним из важных изменений в релизе 1.0 протокола Matrix является переход на доверенные сертификаты в S2S (Server-to-server, межсерверное общение или федерация).<br />
<br />
05.02.2019 была выпущена версия 0.99 сервера synapse, в котором были сделаны следующие изменения:<br />
* убрана генерация самоподписанных сертификатов; <br />
* добавлен автоматический запрос сертификатов от [https://letsencrypt.org/ Let's Encrypt]; <br />
* выключена строгая проверка сертификатов. <br />
<br />
11.06.2019 выпущен релиз synapse 1.0, в котором действует строгая проверка сертификатов, и все сервера, использующие самоподписанные и непроверяемые сертификаты, не могут общаться с серверами, которые перешли на проверяемые сертификаты.<br />
<br />
Итак, начиная с релиза 1.0 в S2S для проверки сертификатов сервером отказались от [https://en.wikipedia.org/wiki/Convergence_(SSL) Perspectives] и перешли к проверке сертификатов через существующую систему доверенных управляющих центров (ЦУ, CA). В итоге для работе в федерации серверу необходимо подписывать свои исходящие сообщения приватным ключом из сертификата, который можно проверить, используя УЦ. Т. е. можно взять любой УЦ (список можно найти на https://en.wikipedia.org/wiki/Certificate_authority), получить от него сертификат с закрытым ключом и его использовать.<br />
<br />
===== Let's encrypt =====<br />
<br />
===== Обновление =====</div>FLegmatikhttps://ru-matrix.org/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90%D0%90&diff=95Участник:АААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААААА2019-06-12T09:28:15Z<p>FLegmatik: /* Русскоязычное сообщество протокола Матрикс (Matrix) */</p>
<hr />
<div>== Русскоязычное сообщество протокола Матрикс (Matrix) ==<br />
Сайт создан для русскоязычного сообщества протокола [https://matrix.org/ Matrix] с целью сбора в едином месте всей полезной информации об этом протоколе и связанных с ним сервисах.<br />
<br />
== Web-клиент Riot ==<br />
Для использования сети Матрикс необходимо использовать программу-клиент. <br />
На нашем сервере установлен web-клиент Riot ([https://riot.ru-matrix.org открыть]) - он работает в любом современном браузере без установки на компьютер.<br />
== Соединение Matrix с другими мессенджерами ==<br />
Протокол Матрикс поддерживает соединение с другими мессенджерами, что позволяет вам общаться с пользователями других разных мессенджеров в едином интерфейсе, используя один аккаунт и одну программу, объединяя всё общение в единое место, доступное вам отовсюду.<br />
[[Соединение Matrix с другими мессенджерами]]<br />
== Ресурсы ==<br />
* [https://matrix.to/#/+ru:matrix.org Каталог русскоязычных комнат] ([https://riot.im/app/#/group/+ru:matrix.org Посмотреть в браузере])<br />
* [[Русскоязычные ресурсы о matrix|Русскоязычные ресурсы о Матрикс]]<br />
* [[Сервис t2bot.io]] - различные боты и мосты в другие сети: Telegram, Discord, Gitter, IRC<br />
* [[Переход на доверенные сертификаты в версии 0.99]] - инструкция по обновлению сертификатов на доверенные в версии 0.99.<br />
<br />
== Переводы документации и приложений Матрикс ==<br />
* [[Глоссарий (устоявшиеся варианты переводов терминов)]]<br />
* [https://matrix.to/#/!BWAqsfIAMQABBlOYbt:matrix.org?via=ru-matrix.org&via=matrix.org&via=intelfx.name Комната для обсуждения переводов]<br />
* [https://translate.riot.im/ Переводы Matrix-клиентов Riot]<br />
* [https://lokalise.co/project/730769035bbc328c31e863.62506391/?view=single&reference_lang_id=640&single_lang_id=597 Переводы Matrix-клиента Quaternion на русский]<br />
<br />
== Прочее ==<br />
[[Заявки на написание статей]]</div>FLegmatikhttps://ru-matrix.org/index.php?title=%D0%A1%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_Matrix_%D1%81_%D0%B4%D1%80%D1%83%D0%B3%D0%B8%D0%BC%D0%B8_%D0%BC%D0%B5%D1%81%D1%81%D0%B5%D0%BD%D0%B4%D0%B6%D0%B5%D1%80%D0%B0%D0%BC%D0%B8&diff=94Соединение Matrix с другими мессенджерами2019-06-09T14:29:22Z<p>FLegmatik: whatsapp</p>
<hr />
<div>Протокол [matrix] поддерживает соединение (интеграцию) с другими мессенджерами, что позволяет вам общаться с пользователями других разных мессенджеров в едином интерфейсе, используя один аккаунт и одну программу, объединяя всё общение в единое место, доступное вам отовсюду.<br />
<br />
На данный момент интеграция реализована для следующих мессенджеров:<br />
<br />
* Slack: интегрировано в Riot<br />
* IRC: интегрировано в Riot<br />
* Gitter: интегрировано в Riot<br />
* Telegram: через бесплатный публичный сервис t2bot.io: [[Сервис t2bot.io]]<br />
* Skype: пока только через установку на свой сервер [https://github.com/matrix-hacks/matrix-puppet-skype skype-bridge]<br />
* Facebook: пока только через установку на свой сервер [https://github.com/matrix-hacks/matrix-puppet-facebook matrix-puppet-facebook]<br />
* WhatsApp: через [[WhatsApp|Matrix-WhatsApp puppeting bridge]]<br />
* Hangouts: через [https://github.com/matrix-hacks/matrix-puppet-hangouts matrix-puppet-hangouts]<br />
* Signal: через [https://github.com/matrix-hacks/matrix-puppet-signal matrix-puppet-signal]<br />
* iMessage: через [https://github.com/matrix-hacks/matrix-puppet-imessage matrix-puppet-imessage]<br />
* Discord: через бесплатный публичный сервис t2bot.io: [[Сервис t2bot.io]]<br />
* Email: через бесплатный публичный сервис t2bot.io: [[Сервис t2bot.io]]<br />
* VK: через установку бота [https://github.com/progserega/MatrixVkBot MatrixVkBot]<br />
<br />
== Соединение Matrix и Telegram ==<br />
Существует два простых способа соединения Matrix и Telegram:<br />
* [[Настройка моста Telegram с Matrix|Полное подключение своего аккаунта Telegram к Matrix для общения в Telegram через Matrix]] - в этом случае матрикс-бот получит полный доступ к аккаунту telegram-а. Это несколько менее безопасно, но позволяет пересылать в матрицу (и обратно) все сообщения из телеграма - будь это каналы или личные сообщения пользователей телеграма.<br />
* [[Создание в Matrix зеркала для одной комнаты Telegram без привязки к своему личному Telegram-аккаунту]] - в этом случе не нужно передавать полный доступ к своему аккаунту в телеграм. Этот способ подходит если нужно связать с матрицей лишь несколько каналов из телеграма. Он не позволяет общаться с контактами из телеграма.</div>FLegmatikhttps://ru-matrix.org/index.php?title=WhatsApp&diff=93WhatsApp2019-06-09T14:10:52Z<p>FLegmatik: Новая страница: «WhatsApp — на сегодня самый популярный в мире мессенджер. Является проприетарным, контролир…»</p>
<hr />
<div>WhatsApp — на сегодня самый популярный в мире мессенджер. Является проприетарным, контролируется фейсбуком. <br />
<br />
==Использование==<br />
Для соединения matrix и whatsapp можно использовать мост [https://github.com/tulir/mautrix-whatsapp/ mautrix-whatsapp], который необходимо скомпилировать из исходников и подключить к своему собственному matrix-серверу. Детальная инструкция поставляется вместе с исходниками. <br />
<br />
Если никаких секретов в ватсапе не передаёте, свой сервер и бридж поднимать ради этого чересчур сложно, а попробовать хочется, то можете воспользоваться ботом @whatsappbot:gazizova.net — он доступен для пользователей серверов matrix.org, ru-matrix.org и gazizova.net. Надо открыть с ним чат, скомандовать login и быстро (в течение 20 секунд) отсканировать qr-код. Сканирование осуществляется официальным приложением после выбора пунктов Меню — WhatsApp Web — Добавить. <br />
<br />
https://gazizova.net/pub/mautrix-whatsapp.png<br />
<br />
==Недостатки==<br />
# Мост не избавляет от необходимости держать запущенным официальное приложение, это требование пользовательского соглашения whatsapp.<br />
# Применение моста снижает Вашу конфиденциальность. <br />
<br />
==Преимущества использования моста==<br />
* Неограниченное число одновременно запущенных мобильных клиентов на разных устройствах (например, телефон, планшет, автомобильная ivi-система) — официальный ватсап может одномоментно работать только на одном мобильном аппарате (при переключении на другое надо вводить код из смс). <br />
* Неограниченное число одновременно запущенных десктопных клиентов (например, домашний компьютер, рабочий компьютер, ноутбук) — официальный whatsapp web может работать только в одном браузере, предыдущие сразу же отваливаются. <br />
* Возможность просмотра удалённых сообщений (например, в БД сервера). <br />
* Удобства применения matrix-клиентов, в частности: <br />
** быстрый поиск в БД synapse, <br />
** разделение чатов на "избранные", "люди", "комнаты", "маловажные" и, возможно, другие пользовательские теги (а не в одной куче как в официальном приложении),<br />
** использование пользовательского интерфейса одного приложения вместо двух для общения с разными людьми в разных сетях.</div>FLegmatikhttps://ru-matrix.org/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BD%D0%B0%D1%82%D0%B0&diff=76Комната2018-12-26T15:45:35Z<p>FLegmatik: /* Адресация комнат */ Токсик предложил так.</p>
<hr />
<div>Комната — основной механизм для общения участников в сети matrix. При первом взгляде на большинство клиентов пользователь может обратить внимание, что комнаты бывают многопользовательские, объединяющие множество участников, и приватные для общения двух участников друг с другом. В действительности, существенной разницы между ними нет: комнаты 1:1 отличаются только наличием специального флага "Direct chat", можно превратить такую в многопользовательскую, просто пригласив туда третьего участника. <br />
==Адресация комнат==<br />
В существующей на конец 2018-го года схеме адресации (v1) для каждой комнаты при её создании регистрируется уникальный внутренний mxid нечеловекочитаемого вида, например, !gTQfWzbYncrtNrvEkB:matrix.org . Для удобства пользования многопользовательские комнаты также получают от своего создателя основной mxid вида, например, #ru.matrix:matrix.org . Кроме того, каждый пользователь сети matrix может создать на сервере, где сам зарегистрирован, для любой комнаты сети т.н. "алиас", например, #ru.matrix:tchncs.de . Предназначение алиасов частично пояснено в последующем разделе. При наличии прав модератора пользователь также может опубликовать комнату в каталоге комнат своего сервера.<br />
<br />
==Отказоустойчивость==<br />
Комнаты в матриксе имеют два уровня дублирования на серверах. <br />
<br />
# Стоит пользователю какого-нибудь сервера Б зайти в комнату на другом сервере А, сервер Б, если ещё не делал этого ранее, создаёт у себя копию этой комнаты и участвует в наполнении комнаты контентом наравне со всеми остальными серверами, участники которых уже присутствуют в комнате. Это происходит автоматически, никаких дополнительных действий выполнять не требуется. Такое дублирование даёт следующее преимущество. Если какой-либо из серверов (даже исходный сервер А) будет отключён или потеряет соединение с сетью, пользователи других серверов, находящиеся в комнате, никак от этого не пострадают: они продолжат общение между собой. Когда потерявшийся сервер вернётся в сеть, он подтянет пропущенную историю сообщений. Между тем, пользователи третьих серверов, ранее не подключавшихся к этой комнате, не смогут войти в комнату, если будет недоступен сервер с исходным адресом комнаты. <br />
# Чтобы обойти последнее ограничение, для комнаты, имеющей адрес на сервере А, можно создать "алиас" на другом сервере Б. Создать алиас на своём сервере может любой его пользователь, имеющий право создавать там комнаты; права администратора или модератора комнаты для этого не требуются. Теперь, даже если сервер А будет остановлен, пользователи третьего сервера В смогут подключиться к комнате, используя её адрес на сервере Б.</div>FLegmatikhttps://ru-matrix.org/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BD%D0%B0%D1%82%D0%B0&diff=75Комната2018-12-24T05:05:46Z<p>FLegmatik: /* Адресация комнат */</p>
<hr />
<div>Комната — основной механизм для общения участников в сети matrix. При первом взгляде на большинство клиентов пользователь может обратить внимание, что комнаты бывают многопользовательские, объединяющие множество участников, и приватные для общения двух участников друг с другом. В действительности, существенной разницы между ними нет: комнаты 1:1 отличаются только наличием специального флага "Direct chat", можно превратить такую в многопользовательскую, просто пригласив туда третьего участника. <br />
==Адресация комнат==<br />
В существующей на конец 2018-го года схеме адресации (v1) для каждой комнаты при её создании регистрируется уникальный внутренний mxid нечеловекочитаемого вида, например, !gTQfWzbYncrtNrvEkB:matrix.org . Для удобства пользования многопользовательские комнаты также получают от своего создателя основной mxid вида, например, #ru.matrix:matrix.org . Кроме того, каждый пользователь сети matrix может создать на сервере, где сам зарегистрирован, для любой комнаты сети т.н. "алиас", например, #ru.matrix:tchncs.de . Предназначение алиасов частично пояснено в последующем разделе. Если пользователь обладает правами модератора в комнате, тогда он ещё может опубликовать данную комнату в каталоге комнат своего сервера.<br />
<br />
==Отказоустойчивость==<br />
Комнаты в матриксе имеют два уровня дублирования на серверах. <br />
<br />
# Стоит пользователю какого-нибудь сервера Б зайти в комнату на другом сервере А, сервер Б, если ещё не делал этого ранее, создаёт у себя копию этой комнаты и участвует в наполнении комнаты контентом наравне со всеми остальными серверами, участники которых уже присутствуют в комнате. Это происходит автоматически, никаких дополнительных действий выполнять не требуется. Такое дублирование даёт следующее преимущество. Если какой-либо из серверов (даже исходный сервер А) будет отключён или потеряет соединение с сетью, пользователи других серверов, находящиеся в комнате, никак от этого не пострадают: они продолжат общение между собой. Когда потерявшийся сервер вернётся в сеть, он подтянет пропущенную историю сообщений. Между тем, пользователи третьих серверов, ранее не подключавшихся к этой комнате, не смогут войти в комнату, если будет недоступен сервер с исходным адресом комнаты. <br />
# Чтобы обойти последнее ограничение, для комнаты, имеющей адрес на сервере А, можно создать "алиас" на другом сервере Б. Создать алиас на своём сервере может любой его пользователь, имеющий право создавать там комнаты; права администратора или модератора комнаты для этого не требуются. Теперь, даже если сервер А будет остановлен, пользователи третьего сервера В смогут подключиться к комнате, используя её адрес на сервере Б.</div>FLegmatikhttps://ru-matrix.org/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BD%D0%B0%D1%82%D0%B0&diff=74Комната2018-12-24T05:03:37Z<p>FLegmatik: </p>
<hr />
<div>Комната — основной механизм для общения участников в сети matrix. При первом взгляде на большинство клиентов пользователь может обратить внимание, что комнаты бывают многопользовательские, объединяющие множество участников, и приватные для общения двух участников друг с другом. В действительности, существенной разницы между ними нет: комнаты 1:1 отличаются только наличием специального флага "Direct chat", можно превратить такую в многопользовательскую, просто пригласив туда третьего участника. <br />
==Адресация комнат==<br />
В существующей на конец 2018-го года схеме адресации (v1) для каждой комнаты при её создании регистрируется уникальный внутренний mxid нечеловекочитаемого вида, например, !gTQfWzbYncrtNrvEkB:matrix.org . Для удобства пользования многопользовательские комнаты также получают от своего создателя основной mxid вида, например, #ru.matrix:matrix.org . Кроме того, каждый пользователь сети matrix может создать на сервере, где сам зарегистрирован, для любой комнаты сети т.н. "алиас". Предназначение алиасов частично пояснено в последующем разделе. Если пользователь обладает правами модератора в комнате, тогда он ещё может опубликовать комнату в каталоге комнат своего сервера. <br />
==Отказоустойчивость==<br />
Комнаты в матриксе имеют два уровня дублирования на серверах. <br />
<br />
# Стоит пользователю какого-нибудь сервера Б зайти в комнату на другом сервере А, сервер Б, если ещё не делал этого ранее, создаёт у себя копию этой комнаты и участвует в наполнении комнаты контентом наравне со всеми остальными серверами, участники которых уже присутствуют в комнате. Это происходит автоматически, никаких дополнительных действий выполнять не требуется. Такое дублирование даёт следующее преимущество. Если какой-либо из серверов (даже исходный сервер А) будет отключён или потеряет соединение с сетью, пользователи других серверов, находящиеся в комнате, никак от этого не пострадают: они продолжат общение между собой. Когда потерявшийся сервер вернётся в сеть, он подтянет пропущенную историю сообщений. Между тем, пользователи третьих серверов, ранее не подключавшихся к этой комнате, не смогут войти в комнату, если будет недоступен сервер с исходным адресом комнаты. <br />
# Чтобы обойти последнее ограничение, для комнаты, имеющей адрес на сервере А, можно создать "алиас" на другом сервере Б. Создать алиас на своём сервере может любой его пользователь, имеющий право создавать там комнаты; права администратора или модератора комнаты для этого не требуются. Теперь, даже если сервер А будет остановлен, пользователи третьего сервера В смогут подключиться к комнате, используя её адрес на сервере Б.</div>FLegmatikhttps://ru-matrix.org/index.php?title=%D0%9A%D0%BE%D0%BC%D0%BD%D0%B0%D1%82%D0%B0&diff=73Комната2018-12-22T10:21:07Z<p>FLegmatik: </p>
<hr />
<div>Комната — основной механизм для общения участников в сети matrix. Комнаты бывают многопользовательские, объединяющие множество участников, и приватные для общения двух участников друг с другом. <br />
==Адресация комнат==<br />
==Отказоустойчивость==<br />
Комнаты в матриксе имеют два уровня дублирования на серверах. <br />
<br />
# Стоит пользователю какого-нибудь сервера Б зайти в комнату на другом сервере А, сервер Б, если ещё не делал этого ранее, создаёт у себя копию этой комнаты и участвует в наполнении комнаты контентом наравне со всеми остальными серверами, участники которых уже присутствуют в комнате. Это происходит автоматически, никаких дополнительных действий выполнять не требуется. Такое дублирование даёт следующее преимущество. Если какой-либо из серверов (даже исходный сервер А) будет отключён или потеряет соединение с сетью, пользователи других серверов, находящиеся в комнате, никак от этого не пострадают: они продолжат общение между собой. Когда потерявшийся сервер вернётся в сеть, он подтянет пропущенную историю сообщений. Между тем, пользователи третьих серверов, ранее не подключавшихся к этой комнате, не смогут войти в комнату, если будет недоступен сервер с исходным адресом комнаты. <br />
# Чтобы обойти последнее ограничение, для комнаты, имеющей адрес на сервере А, можно создать "алиас" на другом сервере Б. Создать алиас на своём сервере может любой его пользователь, имеющий право создавать там комнаты; права администратора или модератора комнаты для этого не требуются. Теперь, даже если сервер А будет остановлен, пользователи третьего сервера В смогут подключиться к комнате, используя её адрес на сервере Б.</div>FLegmatikhttps://ru-matrix.org/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:FLegmatik&diff=71Участник:FLegmatik2018-12-22T07:33:47Z<p>FLegmatik: Новая страница: «mxid:@azata:gazizova.net»</p>
<hr />
<div>mxid:@azata:gazizova.net</div>FLegmatik