Skip to content

Commit

Permalink
feat: Docs moved to README
Browse files Browse the repository at this point in the history
  • Loading branch information
lxmnk committed Apr 21, 2022
1 parent 16dfd1c commit a4d6e13
Show file tree
Hide file tree
Showing 12 changed files with 139 additions and 518 deletions.
35 changes: 0 additions & 35 deletions .github/workflows/deploy-docs-netlify.yml

This file was deleted.

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,5 @@ venv/
__pycache__
htmlcov
site
snippets*/
.idea/
67 changes: 67 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,70 @@ pip install git+https://github.com/ExpressApp/pybotx.git

**Предупреждение:** Данный проект находится в активной разработке (`0.y.z`) и
его API может быть изменён при повышении минорной версии.


## Минимальный пример бота (интеграция с FastAPI)

```python
from http import HTTPStatus
from uuid import UUID

from fastapi import FastAPI, Request
from fastapi.responses import JSONResponse

from pybotx import (
Bot,
BotAccountWithSecret,
HandlerCollector,
IncomingMessage,
build_command_accepted_response,
)

collector = HandlerCollector()


@collector.command("/echo", description="Send back the received message body")
async def echo_handler(message: IncomingMessage, bot: Bot) -> None:
await bot.answer_message(message.body)


bot = Bot(
collectors=[collector],
bot_accounts=[
BotAccountWithSecret( # noqa: S106
# Не забудьте заменить эти учётные данные на настоящие
id=UUID("123e4567-e89b-12d3-a456-426655440000"),
host="cts.example.com",
secret_key="e29b417773f2feab9dac143ee3da20c5",
),
],
)

app = FastAPI()
app.add_event_handler("startup", bot.startup)
app.add_event_handler("shutdown", bot.shutdown)


@app.post("/command")
async def command_handler(request: Request) -> JSONResponse:
bot.async_execute_raw_bot_command(await request.json())
return JSONResponse(
build_command_accepted_response(),
status_code=HTTPStatus.ACCEPTED,
)


@app.get("/status")
async def status_handler(request: Request) -> JSONResponse:
status = await bot.raw_get_status(dict(request.query_params))
return JSONResponse(status)


@app.post("/notification/callback")
async def callback_handler(request: Request) -> JSONResponse:
bot.set_raw_botx_method_result(await request.json())
return JSONResponse(
build_command_accepted_response(),
status_code=HTTPStatus.ACCEPTED,
)
```
19 changes: 0 additions & 19 deletions docs/botx_api.md

This file was deleted.

10 changes: 0 additions & 10 deletions docs/css/custom.css

This file was deleted.

5 changes: 0 additions & 5 deletions docs/index.md

This file was deleted.

17 changes: 0 additions & 17 deletions docs/snippets/client/bots_api/get_token.py

This file was deleted.

72 changes: 0 additions & 72 deletions docs/snippets/minimal_example.py

This file was deleted.

Loading

0 comments on commit a4d6e13

Please sign in to comment.