aliceio
AliceIO
Асинхронный фреймворк, упрощающий разработку навыков Алисы из Яндекс.Диалогов
Based on aiogram v3
Особенности
- Асинхронность (asyncio docs, PEP 492)
- Тайп-хинты (PEP 484, может быть использован с mypy)
- Поддержка PyPy
- Роутеры (Blueprints)
- Машина состояний (Finite State Machine)
- Мидлвари (для входящих событий и вызовов API)
- Мощные магические фильтры
- Реакция на долгое время работы
Важно!
Настоятельно рекомендуется иметь опыт работы с asyncio перед использованием aliceio
Быстрый старт
Как получить skill_id
и подключить навык к Алисе можно прочитать тут.
from aiohttp import webfrom aliceio import Dispatcher, Skillfrom aliceio.types import Messagefrom aliceio.webhook.aiohttp_server import OneSkillRequestHandler, setup_application
dp = 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()
Документация
Связь
Если у вас есть вопросы, вы можете посетить чат сообщества в Telegram
Лицензия
Copyright © 2023-2024 K1rL3s and ZloyKobra
Этот проект использует MIT лицензию
Описание
🐍 Асинхронный фреймворк для навыков Алисы из Яндекс.Диалогов
Языки
Python