Фиксация мамы нолнан с сфере IT с симпатией к атусу стоещему на полигоне

с афроо лошадьми
This commit is contained in:
SkrinVex
2026-01-20 22:04:44 +05:00
parent 024444abdb
commit 4365a50cda
45 changed files with 2941 additions and 470 deletions
+140
View File
@@ -0,0 +1,140 @@
# 🦊 FoxLang Telegram Bot
Telegram бот, написанный на чистом FoxLang для выполнения FoxLang кода!
## 📁 Структура
```
telegram_bot/
├── main.fox # Основной файл бота
├── bot_api.fox # API для работы с Telegram
├── code_executor.fox # Выполнение пользовательского кода
├── token.txt # Токен бота (настройте!)
├── run_bot.sh # Скрипт запуска
└── README.md # Эта документация
```
## 🚀 Быстрый старт
### 1. Создание бота
1. Найдите @BotFather в Telegram
2. Отправьте `/newbot`
3. Следуйте инструкциям
4. Получите токен вида: `123456789:ABCdefGHIjklMNOpqrsTUVwxyz`
### 2. Настройка
Отредактируйте файл `token.txt`:
```bash
nano token.txt
```
Замените `YOUR_BOT_TOKEN_HERE` на ваш реальный токен.
### 3. Запуск
```bash
./run_bot.sh
```
Или вручную:
```bash
../src/foxlang main.fox
```
## 🤖 Возможности бота
### Команды
- `/start` - Приветствие и инструкции
- `/help` - Справка по FoxLang
- `/example` - Пример кода
### Выполнение кода
Отправьте боту любой FoxLang код:
```cpp
int x = 10;
int y = 20;
print("Sum: " + (x + y));
fox();
```
### Безопасность
- Запрет на `include` в пользовательском коде
- Ограничение длины кода (10000 символов)
- Ограничение вывода (4000 символов)
- Запрет системных вызовов
## 🔧 Архитектура
### main.fox
- Основной цикл бота
- Обработка команд
- Инициализация
### bot_api.fox
- HTTP запросы к Telegram API
- Парсинг JSON ответов
- Отправка сообщений
### code_executor.fox
- Выполнение пользовательского кода
- Проверки безопасности
- Ограничения вывода
## 🛠 Разработка
### Добавление новых команд
В `main.fox`, функция `handle_command()`:
```cpp
if (command == "/mycommand") {
return "My custom response";
}
```
### Расширение API
В `bot_api.fox` можно добавить новые методы Telegram API:
```cpp
void send_photo(string token, string chat_id, string photo_url) {
// Реализация отправки фото
}
```
### Улучшение безопасности
В `code_executor.fox`, функция `is_safe_code()`:
```cpp
// Добавить новые запрещенные слова
set(forbidden_words, 5, "dangerous_function");
```
## 📝 Примечания
- Бот написан на чистом FoxLang
- Использует заглушки для системных функций
- Для полной функциональности нужны встроенные функции:
- `http_get()` - HTTP запросы
- `read_file()` / `write_file()` - работа с файлами
- `sleep()` - задержки
- Строковые функции (`contains`, `replace_all`, etc.)
## 🔮 Будущие улучшения
- [ ] Полный JSON парсер
- [ ] Файловые операции
- [ ] HTTP клиент
- [ ] Строковые функции
- [ ] Логирование
- [ ] Конфигурация через файл
- [ ] Поддержка inline клавиатур
- [ ] Сохранение состояния пользователей
## 📄 Лицензия
MIT License - используйте свободно!