Satori Protocol SDK for python
Project description
satori-python
基于 Satori 协议的 Python 开发工具包
协议介绍
协议端
目前提供了 satori
协议实现的有:
- Chronocat
- Koishi (搭配
@koishijs/plugin-server
)
安装
pip install satori-python
使用
客户端:
from satori import App, Account, Event, WebsocketsInfo
app = App(WebsocketsInfo(port=5140))
@app.register
async def on_message(account: Account, event: Event):
if event.user and event.user.id == "xxxxxxxxxxx":
await account.send(event, "Hello, World!")
app.run()
服务端:
from satori import Server, Api
server = Server(port=5140)
@server.route(Api.MESSAGE_CREATE)
async def on_message_create(*args, **kwargs):
return [{"id": "1234", "content": "example"}]
server.run()
文档
请阅读 仓库文档
示例
- 客户端:client.py
- 服务端:server.py
- 客户端(webhook):client_webhook
- 服务端(webhook):server_webhook
- 适配器:adapter.py
架构
graph LR
subgraph Server
server -- run --> asgi
server -- register --> route -- mount --> asgi
server -- apply --> adapter -- mount --> asgi
adapter -- event --> server
end
subgraph Client
config -- apply --> app -- run --> network
app -- register --> listener
network -- account,event --> listener
listener -- handle --> account -- session --> api
end
api -- request --> asgi -- response --> api
server -- raw-event --> asgi -- websocket/webhook --> network
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
satori_python-0.5.0.tar.gz
(18.1 kB
view hashes)
Built Distribution
Close
Hashes for satori_python-0.5.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7aab40077f1d78c13567ae55584a0a07373a2f8649b77833832c9c95710d49e3 |
|
MD5 | e0a2d965c8b89ccb5c04c5c026d8dfab |
|
BLAKE2b-256 | 39c67691d95fe9fc9f870f22ecc85c43738b8cc68bac31819d707a0115b95a92 |