Free TON

Развитие функционала форума/интеграция с telegram

В данном разделе хочу описать свое видение организации сообщества FreeTON
В настоящий момент имеется три разрозненных направления, на которых происходит обсуждение проекта FreeTON:

  1. чаты Telegram (чаты популярные в локальных сообществах)
  2. Форум forum.freeton.org
  3. Zoom / YouTube

Эти ресурсы на настоящий момент не связаны между собой, лишь изредка наблюдается связь в виде одинаковых tag-ов.
Организация разрозненного и многонационального сообщества достаточно сложная задача, поэтому все, что описано ниже исключительно технические инструменты, которые не требуют регулярного привлечения человеческих ресурсов для выполнения каких-либо задач.
Я предлагаю стандартизировать username и tag-и а так же автоматизировать взаимодействие между всеми тремя инструментами.

Это сообщение не является proposal-ом для конкурса, поэтому оформлено только на русском.

Форум:

  • Добавить на форум раздел Telegram чат (данных разделов должно быть несколько, в соответствии структуре форума т.е ответвления subgov или же языковые ответвления белорусское/русское/корейское сообщества)

  • Сообщения Telegram чатов должны храниться в базе форума

  • Сообщения Telegram чатов должны попадать под индексацию и попадать в выдачу общего поиска по форуму

  • Добавить на форум раздел стенограмма конференции

стенограмма должна включать в себя:
раздел Zoom / YouTube конференция
раздел Zoom / YouTube конференция автоматический перевод (данный раздел/вкладка в разделе требуется по той причине, что перевод по ПКМ в браузере не всегда очевиден)

speech to text
от Yandex: https://cloud.yandex.ru/docs/speechkit/stt/
от Google: https://cloud.google.com/speech-to-text
ключевая особенность данных сервисов в том, что они платные и плптп производится согласно продолжительности аудио, таким образом всем участникам форума данный функционал не нужен, а доступ к интерфейсу должен быть лишь у представителей subgovernance

  • Добавить интерфейс для загрузки аудиофайла на сервис speech to text на форуме
  • Добавить в админку пользователей форума возможность для определенных пользователей делать загрузку аудио для прогона через сервис speech to text
  • Сообщения speech to text должны храниться в базе форума
  • Сообщения speech to text должны попадать под индексацию и попадать в выдачу общего поиска по форуму

В отношении реализации: по своему опыту могу сказать, что чистые библиотеки достаточно замороченные, но, сторонние библиотеки позволяют применять эти же сервисы, но, с расширенным и более удобным функционалом.

Zoom / YouTube:
инструкция по записи конференции для Zoom
инструкция по скачиванию аудиофайла с Zoom
инструкция по скачиванию аудиофайла с YouTube (youtube-dl или через отдельный сервис)
инструкция по выгрузке аудиофайла в интерфейс на форуме

Telegram Бот:
чтение сообщений из чата
сообщение должно включать в себя:
timestamp
username
message
tags (#string)
возможность сортировки (чтобы сообщения от некоторых пользователей и других ботов пропускались - для того, чтобы отбрасывать сообщения о статистике, валидолках, и тонны спама от Галактики)
возможность указания id страницы форума на которую производится выгрузка сообщений согласно сообществу (sg_dev sg_smm sg_defi) и tag-ам (#FreeTON_WM27)

WebHook (интеграция форума с Telegram):

При публикации нового proposal в соответствующий Telegram чат должно отправляться уведомление с ссылкой на proposal, а так же tag-ом (#FreeTON_WM27)
При публикации ответа в Telegram с соответствующим tag-ом (#FreeTON_WM27) этот ответ должен попадать
в общую ветку Telegram чат (чтобы не терялась нить диалога)
в ветку с proposal (так как ответ касается именно этого proposal)

Система рейтинга:

На настоящий момент у меня нет готового ответа, как должен выглядеть и считаться рейтинг пользователя, но, задел на эту реализацию должен создаваться уже сейчас
В настоящий момент некий рейтинг имеется как на форуме: (Earned Basic, Earned First, Quote Earned Editor) так и в официальных чатах (Папа Жорика, Казначей, Популяризатор CS), но, между этими рейтингами/достижениями отсутствует взаимосвязь. При этом имя пользователя, что указано в Telegram является уникальным, а значит при желании (опционально) если пользователь желает привязать рейтинг/достижения форума и Telegram, то он должен указать одинаковые имена на обоих ресурсах. При этом Telegram бот должен считывать рейтинг/достижения пользователя с форума и присваивать аналогичные пользователю в официальных Telegram чатах. Это позволит определять в Telegram людей с которыми ведется диалог, например: sg_dev sg_smm validator.
Ко всему этому, если движок форума поддерживает такой функционал, то, при считывании username Telegram bot-ом если пользователь Telegram совпадает username форума, то подставлять имя этого пользователя (чтобы на форуме работали ссылки на профиль пользователя), в дальнейшем это позволит учитывать сообщения в Telegram и на форуме для вычисления обобщенного рейтинга.

Основная проблема в том, что все составляющие взаимосвязаны между собой и не могут быть выполнены отдельно, следовательно сложно написать конкурс, поэтому реализация должна происходить силами тех, кто запускал форум.

2 Likes

По поводу стенограммы: Youtube умеет сам создавать субтитры для видео. Поскольку большое количество Zoom конференций попадает на Youtube, получается, достаточно получить информацию о субтитрах из видео, и стенограмма готова :slight_smile:

1 Like

Никогда не пробовал их скачивать, если так, то это оказывается еще и бесплатно.
Думаю, что там тоже имеется соответствующий API для скачивания субтитров, следовательно снова ничего не останавливает от автоматизации.
Нужна лишь система tag-ов, чтобы при появлении видео на YouTube - канале, на форуме в разделе соответствующему tag-ам появлялась стенограмма и ее перевод.

Рекомендую ознакомиться с альфой G 2.0 https://gov-playground.rsquad.io/ Надобность в форуме может отпасть вовсе)

Увы, ничего не ясно. А имеется текстовое описание ?

Это ончейн решение? Если нет, не ясен смысл замены форума самопиской

Это альфа и да, ончейн конечно:)

Тел нужно все связывать Форум+ телега + Wiki + Blog