mirror of
https://github.com/bpmbpm/doc.git
synced 2026-05-05 15:24:02 +00:00
93 lines
13 KiB
Markdown
93 lines
13 KiB
Markdown
## bot
|
||
- https://github.com/progserega/MatrixVkBot
|
||
### AI
|
||
Да, в мессенджере Matrix можно создавать ботов. Более того, из-за открытости протокола возможности для их разработки крайне широки, хотя сам процесс технически отличается от привычного опыта в Telegram или ВК.
|
||
Основные отличия ботов Matrix от Telegram и ВК
|
||
|
||
| Характеристика [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16] | Matrix | Telegram | ВКонтакте (ВК) |
|
||
|---|---|---|---|
|
||
| Природа аккаунта | Бот — это обычный пользователь. Ему нужен стандартный аккаунт на сервере. | Бот — это специальный тип аккаунта, создаваемый через @BotFather. | Бот привязывается к сообществу (группе или паблику). |
|
||
| Децентрализация | Бот может работать на любом сервере сети или на вашем собственном. | Все боты работают только на центральных серверах Telegram. | Все боты работают только внутри инфраструктуры VK. |
|
||
| Шифрование | Поддерживает сквозное шифрование (E2EE). Боту нужно уметь управлять ключами. | Боты не имеют доступа к секретным чатам с E2EE. | Шифрование в привычном понимании для ботов отсутствует. |
|
||
| Интерфейс | В основном текстовые команды. Поддержка кнопок и меню зависит от конкретного клиента (например, Element). | Богатый UI: кнопки под сообщениями, Mini Apps, интерактивные меню. | Поддержка кнопок в чате, шаблонов сообщений и встроенных VK Mini Apps. |
|
||
| Сложность разработки | Требует больше «ручной» настройки (работа с событиями Matrix API напрямую). | Считается самым простым благодаря мощному и понятному Bot API. | Средняя сложность; сильно завязана на API сообществ и Callback API. |
|
||
|
||
Особенности ботов в Matrix
|
||
|
||
* Бриджи (Мосты): Уникальная фишка Matrix. Боты часто используются как «прослойки» для объединения чатов из Telegram, WhatsApp и других мессенджеров в одну комнату Matrix.
|
||
* Сквозное шифрование: Чтобы бот мог читать сообщения в зашифрованной комнате, ему нужно реализовать поддержку протокола Olm/Megolm (обычно через библиотеки вроде matrix-nio с поддержкой E2EE).
|
||
* Отсутствие единого «отца ботов»: Вы просто регистрируете пользователя, получаете его access_token и используете его для отправки HTTP-запросов к серверу. [1, 10, 11, 17, 18]
|
||
|
||
Популярные инструменты для создания
|
||
|
||
1. Python: Библиотека matrix-nio (популярна благодаря поддержке шифрования).
|
||
2. TypeScript/JS: matrix-bot-sdk — официальный SDK для создания ботов и сервисов.
|
||
3. Go: Фреймворк maubot, который позволяет запускать множество ботов-плагинов в одном процессе. [1, 7, 11, 18, 19]
|
||
|
||
Вам интересно узнать, как технически получить токен для первого бота в Matrix, или вы ищете способ перенести своего бота из Telegram?
|
||
|
||
[1] [https://matrix.org](https://matrix.org/docs/older/matrix-bot-sdk-intro/)
|
||
[2] [https://alsd.eu](https://alsd.eu/blog/2021-04-04-matrix-bot-part-1.html)
|
||
[3] [https://help.bothelp.io](https://help.bothelp.io/smena-vladelcza-telegram-bota/#:~:text=%D0%92%20Telegram%20%D0%B1%D0%BE%D1%82%D1%8B%20%D0%BF%D1%80%D0%B8%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD%D1%8B%20%D0%BA%20%D0%BB%D0%B8%D1%87%D0%BD%D0%BE%D0%BC%D1%83%20%D0%B0%D0%BA%D0%BA%D0%B0%D1%83%D0%BD%D1%82%D1%83,%D0%B2%D0%BE%D0%B7%D0%BD%D0%B8%D0%BA%D0%B0%D0%B5%D1%82%20%D0%BD%D0%B5%D0%BE%D0%B1%D1%85%D0%BE%D0%B4%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C%20%D0%BF%D0%B5%D1%80%D0%B5%D0%B4%D0%B0%D1%82%D1%8C%20%D0%BF%D1%80%D0%B0%D0%B2%D0%B0%20%D0%BD%D0%B0%20%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%B1%D0%BE%D1%82%D0%BE%D0%BC.)
|
||
[4] [https://stackoverflow.com](https://stackoverflow.com/questions/39942771/telegram-api-vs-bot-api)
|
||
[5] [https://skillbox.ru](https://skillbox.ru/media/marketing/chatboty-vo-vkontakte-zachem-nuzhny-i-kak-sdelat-svoego/#:~:text=%D0%9A%D0%BE%D1%80%D0%BE%D1%82%D0%BA%D0%BE:%20%D0%B3%D0%BB%D0%B0%D0%B2%D0%BD%D0%BE%D0%B5%20%D0%BE%20%D1%87%D0%B0%D1%82%2D%D0%B1%D0%BE%D1%82%D0%B0%D1%85%20%D0%B2%D0%BE%20%C2%AB%D0%92%D0%9A%D0%BE%D0%BD%D1%82%D0%B0%D0%BA%D1%82%D0%B5%C2%BB%20%D0%A7%D0%B0%D1%82%2D%D0%B1%D0%BE%D1%82,%D0%9F%D1%80%D0%BE%D1%89%D0%B5%20%D0%B2%D1%81%D0%B5%D0%B3%D0%BE%20%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D1%82%D1%8C%20%D1%87%D0%B0%D1%82%2D%D0%B1%D0%BE%D1%82%D0%B0%20%D0%BD%D0%B0%20%D1%81%D0%BF%D0%B5%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%BC%20%D0%BA%D0%BE%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D0%BE%D1%80%D0%B5.)
|
||
[6] [https://vk.com](https://vk.com/biz/article/vidzhety-i-chat-boty#:~:text=%D0%A7%D0%B0%D1%82%2D%D0%B1%D0%BE%D1%82%D1%8B%20%D0%A1%20%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E%20%D1%87%D0%B0%D1%82%2D%D0%B1%D0%BE%D1%82%D0%BE%D0%B2%20%D0%BC%D0%BE%D0%B6%D0%BD%D0%BE%20%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D0%B7%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D1%82%D1%8C%20%D1%80%D1%83%D1%82%D0%B8%D0%BD%D0%BD%D1%8B%D0%B5,%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D1%8F%2C%20%D0%BA%D0%BE%D1%82%D0%BE%D1%80%D1%83%D1%8E%20%D0%BE%D0%BD%20%D0%B8%D1%81%D0%BA%D0%B0%D0%BB%2C%20%D0%B8%D0%BB%D0%B8%20%D1%83%D1%82%D0%BE%D1%87%D0%BD%D1%8F%D1%8E%D1%89%D0%B8%D0%B5%20%D0%B2%D0%BE%D0%BF%D1%80%D0%BE%D1%81%D1%8B.)
|
||
[7] [https://docs.chat.academiccloud.de](https://docs.chat.academiccloud.de/en/automations/)
|
||
[8] [https://joinmatrix.org](https://joinmatrix.org/guide/matrix-vs-telegram/)
|
||
[9] [https://vk.com](https://vk.com/wall-235408351_21)
|
||
[10] [https://vk.com](https://vk.com/wall-216361191_871)
|
||
[11] [https://github.com](https://github.com/rgomez90/matrix-bot)
|
||
[12] [https://www.reddit.com](https://www.reddit.com/r/matrixdotorg/comments/1iavtzr/bot_api_with_better_interactions_like_telegram/)
|
||
[13] [https://www.reddit.com](https://www.reddit.com/r/matrixdotorg/comments/1inso9a/how_to_create_a_bot_that_handles_slash_commands/)
|
||
[14] [https://vk.com](https://vk.com/wall-235408351_21)
|
||
[15] [https://secrets.tbank.ru](https://secrets.tbank.ru/blogi-kompanij/max-vk-ili-telegram/)
|
||
[16] [https://community.latenode.com](https://community.latenode.com/t/choosing-between-telegraf-and-node-telegram-bot-api-for-telegram-bot-development/33034)
|
||
[17] [https://wiki.calculate-linux.org](https://wiki.calculate-linux.org/matrix_telegram_bridge)
|
||
[18] [https://turt2live.github.io](https://turt2live.github.io/matrix-bot-sdk/tutorial-bot.html)
|
||
[19] [https://github.com](https://github.com/WordPress/matrix-bots)
|
||
|
||
|
||
### AI Matrix
|
||
«Matrix» — это не просто отдельное приложение, а открытый децентрализованный протокол для безопасного обмена сообщениями, звонков и передачи файлов. Термин Matrix bot обычно относится к программам-помощникам, работающим внутри этой экосистемы. [1, 2]
|
||
Что такое Matrix
|
||
|
||
* Децентрализация: Сеть Matrix состоит из множества независимых серверов (домашних серверов), которые могут общаться друг с другом («федерация»), как электронная почта.
|
||
* Безопасность: Поддерживает сквозное шифрование (E2EE) по умолчанию для личных чатов, что делает переписку недоступной даже для администраторов серверов.
|
||
* Мосты (Bridges): Позволяет объединять чаты из разных мессенджеров (Telegram, WhatsApp, Signal, Discord, Slack) в одном приложении.
|
||
* Основной клиент: Самым популярным приложением для работы с Matrix является Element (ранее Riot). [1, 2, 3, 4, 5, 6, 7]
|
||
|
||
Что умеют боты в Matrix
|
||
Боты в Matrix — это аккаунты, управляемые программами, которые автоматизируют задачи в комнатах. Основные типы ботов: [8]
|
||
|
||
* Бридж-боты: Связывают комнаты Matrix с другими платформами (например, mautrix-telegram или mautrix-whatsapp).
|
||
* Модераторы: Автоматически удаляют спам, предупреждают за нарушения или блокируют пользователей (например, Mjolnir или Draupnir).
|
||
* Интеграции: Боты для уведомлений из GitHub, GitLab, Jira, Trello или для мониторинга серверов.
|
||
* Утилиты: Боты для голосования, создания превью ссылок, перевода голоса в текст (STT) или интеграции с ИИ (ChatGPT). [1, 3, 9, 10, 11, 12]
|
||
|
||
Как создать своего бота
|
||
Разработка ботов для Matrix ведется с использованием различных SDK: [13]
|
||
|
||
* Python: Библиотеки matrix-nio и simple-matrix-bot-lib.
|
||
* TypeScript/JavaScript: matrix-bot-sdk.
|
||
* Go: Фреймворк maubot для создания плагинов. [9, 13, 14, 15, 16]
|
||
|
||
Бот обычно работает как обычный пользователь: ему нужно создать аккаунт на сервере и получить access_token для авторизации через API. [13, 17]
|
||
Вы хотите подключить готового бота к своему чату или планируете написать собственного?
|
||
|
||
[1] [https://ru.wikipedia.org](https://ru.wikipedia.org/wiki/Matrix)
|
||
[2] [https://linagora.com](https://linagora.com/ru/topics/lapplication-matrix-est-elle-sure)
|
||
[3] [https://habr.com](https://habr.com/ru/articles/837904/)
|
||
[4] [https://linagora.com](https://linagora.com/ru/topics/quest-ce-que-le-serveur-matrix)
|
||
[5] [https://ruitunion.org](https://ruitunion.org/posts/2022-05-14-matrix/)
|
||
[6] [https://trueconf.ru](https://trueconf.ru/analog-element.html)
|
||
[7] [https://matrix.org](https://matrix.org/ecosystem/bridges/)
|
||
[8] [https://linagora.com](https://linagora.com/ru/topics/quoi-sert-le-logiciel-matrix)
|
||
[9] [https://matrix.org](https://matrix.org/ecosystem/integrations/)
|
||
[10] [https://habr.com](https://habr.com/ru/articles/1002728/)
|
||
[11] [https://github.com](https://github.com/matrixgpt/matrix-chatgpt-bot)
|
||
[12] [https://github.com](https://github.com/hibobmaster/matrix-stt-bot)
|
||
[13] [https://matrix.org](https://matrix.org/docs/older/matrix-bot-sdk-intro/)
|
||
[14] [https://github.com](https://github.com/rgomez90/matrix-bot)
|
||
[15] [https://vc.ru](https://vc.ru/life/2798848-kak-razvernut-korporativnyj-messendzher-s-ii-botom-za-3-dnya)
|
||
[16] [https://github.com](https://github.com/topics/matrix-bot?l=go&o=asc&s=stars)
|
||
[17] [https://github.com](https://github.com/progserega/MatrixVkBot#:~:text=%D0%91%D0%BE%D1%82%20%D0%BD%D0%B5%20%D1%82%D1%80%D0%B5%D0%B1%D1%83%D0%B5%D1%82%20%D0%BD%D0%B0%D0%BB%D0%B8%D1%87%D0%B8%D1%8F%20%D1%81%D0%BE%D0%B1%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE%20Matrix%2D%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B0%2C%20%D0%BE%D0%BD,%D1%81%D0%BE%D0%BE%D0%B1%D1%89%D0%B5%D0%BD%D0%B8%D0%B9%20%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D1%82%D0%B5%D0%BB%D1%8F%20%D0%B4%D0%BB%D1%8F%20%D0%B1%D0%BE%D0%BB%D1%8C%D1%88%D0%B8%D0%BD%D1%81%D1%82%D0%B2%D0%B0%20%D0%B2%D0%BD%D0%BE%D0%B2%D1%8C%20%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9.)
|