Skip to content

1-1-1-1-1-1-1-1/Old-Slavonic-bot

Repository files navigation

Old-Slavonic-bot

Бот-переводчик на старославянский язык. Ссылка на бота: @TransToOldSlavonic_bot.

Supported Bot API versions Telegram Bot License: MIT

Deploy

Содержание

Описание

Бот @TransToOldSlavonic_bot в Telegram.

Переводчик на cтарославянский язык. Доступные функции: перевод, транслитерация на алфавиты письма старославянской кириллицы и глаголицы. Подробнее: см. /help в боте @TransToOldSlavonic_bot.

Лицензия: MIT License.

Статья в Telegraph: https://telegra.ph/Perevodchik-na-staroslavyanskij-02-28.


В версии 1.0.0 некоторые файлы отдельно вынесены в папку контроля версий с удалением этих файлов в корне.

Начиная с момента появления нумерованных версий (1.0.0+, commit 16 в GitHub) есть три версии, записываемые в папке meta/versions-controll/: в библиотеках telebot, aiogram, telethon. Файлы/данные, записанные или подтвержденные до этого момента, приоритетно считать не столь авторитетными, как те, которые записаны или подтверджены во время, начиная с него.

Причина создания нескольких версий:

  • в telethon есть возможность удобно делать некоторые вещи (например писать код: await event.reply(...) вместо bot.send_message(message.id, ..., reply_to_message_id=message.message_id), не говоря о возможности поиска пользователя в чате не по данным только Telegram, а с возможностью поиска в данных локального кеша). В telebot о таких возможностях, по крайней мере ранее, не было оглашено;
  • в telebot код простой и похож на код в aiogram, но не все вещи легко сделать;
  • в aiogram некоторое может быть писать удобнее, чем в telebot.

История изменений по номерам версий: ChangeLog.txt.


Применение

Перевод и странслитерация

Бот при вводе его имени пользователя (@⁠TransToOldSlavonic_bot) и текста после него осуществляет попытку (см. [1]) перевести текст на старославянский язык. Отправлять результат можно сразу в тот чат, где сделан такой ввод. Для отправки достаточно нажать на блок с отправляемым текстом.

[1]: Подробно о функциях перевода: см., например,

Пример перевода слова или текста в режиме inline:

Пример перевода слов Пример перевода текста

Значение слова

По команде /meaning бот ищет значение слова. Возможен поиск со словами при игре в слова. См. /meaning help в боте для подробного описания.

В действии:

Файлы и папки

  • Папка с файлами, специфическими при написании бота с различными библиотеками: telebot, aiogram, telethon.
  • Некоторые данные: в папке data/.
  • Файл с определением функций перевода и транслитерации: /functions.py.

References (литература; документация; ссылки)

Функции перевода и транслитерации, их работа

Работа бота

Heroku

Bot API

Telethon API

Telegram Bot API

Ссылка на Telegram Bot API: https://core.telegram.org/bots/api.

Замечание: Библиотеки aiogram и telebot являются реализацией этого API. Библиотека telethon написана с применением другого (собственного) API.

  • Про требуемую для действия inline-кнопок базу (как пример в /help; InlineKeyboardMarkup):

    Note: This will only work in Telegram versions released after 9 April, 2016.

(из Telegram Bot API)

  • Текст inline-запроса (через @<bot_username> текст):

Text of the query (up to 256 characters)

(из Telegram Bot API)

Другое

Некоторая общая документация

See also

К началу страницы