Satori Protocol SDK for python, specify common part
Project description
satori-python
基于 Satori 协议的 Python 开发工具包
协议介绍
协议端
目前提供了 satori
协议实现的有:
- Chronocat
- Koishi (搭配
@koishijs/plugin-server
)
使用该 SDK 的框架
安装
安装完整体:
pip install satori-python
只安装基础部分:
pip install satori-python-core
只安装客户端部分:
pip install satori-python-client
只安装服务端部分:
pip install satori-python-server
使用
客户端:
from satori import EventType, WebsocketsInfo
from satori.event import MessageEvent
from satori.client import Account, App
app = App(WebsocketsInfo(port=5140))
@app.register_on(EventType.MESSAGE_CREATED)
async def on_message(account: Account, event: MessageEvent):
if event.user.id == "xxxxxxxxxxx":
await account.send(event, "Hello, World!")
app.run()
服务端:
from satori import Api
from satori.server import Server
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
- 服务端(使用适配器):server_with_adapter.py
- 客户端(webhook):client_webhook
- 服务端(webhook):server_webhook
- 适配器:adapter.py
架构
graph LR
subgraph Server
server -- run --> asgi
server -- register --> router -- mount --> asgi
server -- apply --> provider -- mount --> asgi
provider -- event,logins --> 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_core-0.14.2.tar.gz
(16.5 kB
view details)
Built Distribution
File details
Details for the file satori_python_core-0.14.2.tar.gz
.
File metadata
- Download URL: satori_python_core-0.14.2.tar.gz
- Upload date:
- Size: 16.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.13.2 CPython/3.12.5 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e237052f407f06a7714e042ac70c578084f2c87588b7d737ee8c319f90f48b2 |
|
MD5 | 9420c8476a20c305eb70892339e21b6a |
|
BLAKE2b-256 | 9f2939cbfeb30e4765657fd7f22c9a36fd13f74af41468348a9a0e3a5d25a209 |
File details
Details for the file satori_python_core-0.14.2-py3-none-any.whl
.
File metadata
- Download URL: satori_python_core-0.14.2-py3-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.13.2 CPython/3.12.5 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6ea8164f38d5f2c4986f1796b0de3400b5f315af2800e9ac4b3ad6c05a3240d |
|
MD5 | 5d20d15d70b33a2ed0ee9b10260e3e89 |
|
BLAKE2b-256 | 4a08ca80223d2aa74840a2436b6af36004f879139a605312430eb5753f3b3ff8 |