Skip to content

ReforgeDev26/SpeechToTextBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telegram Бот для перевода голосовых сообщений в текст

Бот анализирует голосовые сообщения, отправленные пользователем в Telegram. Он извлекает из этих сообщений текст на русском языке.

Возможности

  • Извлечение текста
  • Поддержка пересылаемых голосовых

Требования

  • Python 3.7+
  • Библиотеки из файла requirements.txt
  • Токен Telegram бота (получается через @BotFather)
  • Установленный ffmpeg

Установка

  1. Клонируйте репозиторий:
git clone https://github.com/ReforgeDev26/SpeechToTextBot.git
cd SpeechToTextBot
  1. Установите зависимости:
pip install -r requirements.txt
  1. Установите ffmpeg

  2. Создайте бота в Telegram через @BotFather и получите токен

  3. Настройте переменную окружения с токеном бота:

Linux/macOS:

export BOT_TOKEN="ваш_токен_бота"

Windows (PowerShell):

$env:BOT_TOKEN="ваш_токен_бота"

Windows (CMD):

set BOT_TOKEN=ваш_токен_бота

Установка FFmpeg

Windows

Автоматическая установка:

# Через winget (встроенный менеджер пакетов)
winget install ffmpeg

# Через Chocolatey
choco install ffmpeg

Ручная установка:

Скачайте FFmpeg с gyan.dev (выберите ffmpeg-release-essentials.zip)

Распакуйте архив в C:\ffmpeg

Добавьте C:\ffmpeg\bin в переменную PATH:

Нажмите Win + R → sysdm.cpl → Дополнительно → Переменные среды

Найдите Path → Изменить → Создать → Вставьте C:\ffmpeg\bin

Нажмите ОК во всех окнах

macOS

# Через Homebrew
brew install ffmpeg

Linux

# Ubuntu/Debian
sudo apt update && sudo apt install ffmpeg

# Fedora
sudo dnf install ffmpeg

# Arch
sudo pacman -S ffmpeg

Проверка установки

ffmpeg -version

Запуск

python bot.py

Использование

  1. Запустите бота командой /start
  2. Отправьте боту голосовое сообщение
  3. Бот ответит сообщением с извлеченным текстом

Постоянный запуск на сервере

Для запуска бота на сервере в фоновом режиме можно использовать различные методы:

Использование systemd (Linux)

  1. Создайте файл службы /etc/systemd/system/SpeechToTextBot.service:
[Unit]
Description=Telegram Speech To Text Bot
After=network.target

[Service]
User=ваш_пользователь
WorkingDirectory=/путь/к/боту
Environment="BOT_TOKEN=ваш_токен_бота"
ExecStart=/путь/к/python /путь/к/боту/bot.py
Restart=always

[Install]
WantedBy=multi-user.target
  1. Включите и запустите службу:
sudo systemctl enable SpeechToTextBot
sudo systemctl start SpeechToTextBot

Лицензия

MIT

About

Простой Telegram бот для перевода голосовых сообщений в текст

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages