Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/K1rL3s/aliceio
🐍 Асинхронный фреймворк для разработки навыков Алисы из Яндекс.Диалогов
https://github.com/K1rL3s/aliceio
alice alice-skills aliceio asyncio bot framework python yandex yandex-alice yandex-dialogs yandex-dialogs-sdk yandex-lyceum
Last synced: 3 months ago
JSON representation
🐍 Асинхронный фреймворк для разработки навыков Алисы из Яндекс.Диалогов
- Host: GitHub
- URL: https://github.com/K1rL3s/aliceio
- Owner: K1rL3s
- License: mit
- Created: 2023-12-29T23:21:50.000Z (11 months ago)
- Default Branch: master
- Last Pushed: 2024-07-21T02:33:30.000Z (4 months ago)
- Last Synced: 2024-07-22T02:32:58.779Z (4 months ago)
- Topics: alice, alice-skills, aliceio, asyncio, bot, framework, python, yandex, yandex-alice, yandex-dialogs, yandex-dialogs-sdk, yandex-lyceum
- Language: Python
- Homepage: https://pypi.org/project/aliceio/
- Size: 2.04 MB
- Stars: 31
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-alice - K1rL3s/aliceio - asyncio библиотека для Python 3.8+ (Разработка / SDK)
README
AliceIO[![License](https://img.shields.io/pypi/l/aliceio.svg?style=flat)](https://github.com/K1rL3s/aliceio/blob/master/LICENSE)
[![Status](https://img.shields.io/pypi/status/aliceio.svg?style=flat)](https://pypi.org/project/aliceio/)
[![PyPI](https://img.shields.io/pypi/v/aliceio?label=pypi&style=flat)](https://pypi.org/project/aliceio/)
[![Downloads](https://img.shields.io/pypi/dm/aliceio.svg?style=flat)](https://pypi.org/project/aliceio/)
[![GitHub Repo stars](https://img.shields.io/github/stars/K1rL3s/aliceio?style=flat)](https://github.com/K1rL3s/aliceio/stargazers)
[![Supported python versions](https://img.shields.io/pypi/pyversions/aliceio.svg?style=flat)](https://pypi.org/project/aliceio/)
[![Tests](https://img.shields.io/github/actions/workflow/status/K1rL3s/aliceio/tests.yml?style=flat)](https://github.com/K1rL3s/aliceio/actions)
[![Coverage](https://codecov.io/gh/K1rL3s/aliceio/graph/badge.svg?style=flat)](https://codecov.io/gh/K1rL3s/aliceio)
Асинхронный фреймворк для разработки
навыков Алисы
из
Яндекс.Диалогов
Based on aiogram v3## Особенности
- Асинхронность ([asyncio docs](https://docs.python.org/3/library/asyncio.html), [PEP 492](http://www.python.org/dev/peps/pep-0492))
- Тайп-хинты ([PEP 484](http://www.python.org/dev/peps/pep-0484), может быть использован с [mypy](http://mypy-lang.org/))
- Поддержка [PyPy](https://www.pypy.org/)
- Роутеры (Blueprints)
- Машина состояний (Finite State Machine)
- Мидлвари (для входящих событий и вызовов API)
- Мощные [магические фильтры](https://github.com/aiogram/magic-filter)
- Реакция на [долгое время работы](https://yandex.ru/dev/dialogs/alice/doc/publish-settings.html#troubleshooting)### Важно!
Настоятельно рекомендуется иметь опыт работы с [asyncio](https://docs.python.org/3/library/asyncio.html) перед использованием **aliceio**## Быстрый старт
Как получить `skill_id` и подключить навык к Алисе можно прочитать тут.
```python
from aiohttp import web
from aliceio import Dispatcher, Skill
from aliceio.types import Message
from aliceio.webhook.aiohttp_server import OneSkillRequestHandler, setup_applicationdp = Dispatcher()
skill = Skill(skill_id="...")@dp.message()
async def hello(message: Message) -> str:
return f"Привет, {message.session.application.application_id}!"def main() -> None:
app = web.Application()
webhook_requests_handler = OneSkillRequestHandler(dispatcher=dp, skill=skill)WEB_SERVER_HOST = "127.0.0.1"
WEB_SERVER_PORT = 80
WEBHOOK_PATH = "/alice"webhook_requests_handler.register(app, path=WEBHOOK_PATH)
setup_application(app, dp, skill=skill)
web.run_app(app, host=WEB_SERVER_HOST, port=WEB_SERVER_PORT)if __name__ == "__main__":
main()
```## Документация
- [Туториал](https://aliceio.readthedocs.io/ru/latest/tutorial/start/)
- [Документация](https://aliceio.readthedocs.io/)
- [Примеры](https://github.com/K1rL3s/aliceio/tree/master/examples)## Связь
Если у вас есть вопросы, вы можете посетить чат сообщества в Telegram
- 🇷🇺 [\@aliceio_chat](https://t.me/aliceio_chat)## Лицензия
Copyright © 2023-2024 [K1rL3s](https://github.com/K1rL3s) and [ZloyKobra](https://github.com/ZloyKobra) \
Этот проект использует [MIT](https://github.com/K1rL3s/aliceio/blob/master/LICENSE) лицензию