Metadata-Version: 2.4
Name: pyokbot
Version: 0.1.0
Summary: A Python library for creating bots in Odnoklassniki (ok.ru) messenger via WebSocket
Author: Vanus
License-Expression: MIT
Project-URL: Homepage, https://github.com/vanusdev/pyokbot
Project-URL: Source, https://github.com/vanusdev/pyokbot
Project-URL: BugTracker, https://github.com/vanusdev/pyokbot/issues
Keywords: ok.ru,odnoklassniki,bot,messenger,websocket,api
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Communications :: Chat
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: aiohttp
Requires-Dist: requests
Requires-Dist: websockets
Requires-Dist: munch
Requires-Dist: selectolax
Requires-Dist: sulguk
Dynamic: license-file

# pyokbot

**pyokbot** — асинхронная Python-библиотека для создания ботов в мессенджере **Одноклассники (ok.ru)**. Работает через WebSocket (неофициальный протокол).

## Особенности

- Полностью асинхронная (`asyncio`)
- WebSocket-соединение с сервером сообщений OK
- Отправка текста, фото, видео, файлов, голосовых сообщений
- HTML-форматирование сообщений
- Система фильтров и декоратор `@bot.on_message()`
- Управление чатами (название, фото, закрепление, очистка)
- Кэширование информации о пользователях
- Автоматическое переподключение при обрыве

## Установка

```bash
pip install pyokbot
```

## Быстрый старт

```python
import asyncio
from pyokbot import Vanus

async def main():
    bot = Vanus("ВАШ_AUTHCODE")
    await bot.run()

    @bot.on_message(filters="user")
    async def handle_message(message):
        await bot.send_message(message.chat.id, f"Вы написали: {message.text}")

    await bot.polling()

asyncio.run(main())
```

## Примеры

```bash
# Базовый эхо-бот с командами
python examples/echobot.py ВАШ_AUTHCODE

# Отправка медиа (фото, видео, файлы, голос)
python examples/media_bot.py ВАШ_AUTHCODE

# Управление чатом (пин, редактирование, очистка)
python examples/chat_admin_bot.py ВАШ_AUTHCODE

# Демонстрация системы фильтров
python examples/filter_demo_bot.py ВАШ_AUTHCODE

# HTML-форматирование сообщений
python examples/html_demo_bot.py ВАШ_AUTHCODE
```

## Требования

- Python 3.9+
- AUTHCODE из куки `ok.ru`
