Satori Protocol SDK for python, specify client 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
Built Distribution
File details
Details for the file satori_python_client-0.15.0rc2.tar.gz
.
File metadata
- Download URL: satori_python_client-0.15.0rc2.tar.gz
- Upload date:
- Size: 18.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.13.2 CPython/3.12.6 Linux/6.8.0-1014-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36a85ac59ed7d2aa6cc973c1bb316c0c6cf5cb0e297c54d62fc26b99dbaccdc0 |
|
MD5 | 06b082bcabdf1714e8ef01639071d667 |
|
BLAKE2b-256 | 4edf87ae96b500a583f7dee7ca1c712b7d702e8830e613a8aae873aeccb5b46b |
File details
Details for the file satori_python_client-0.15.0rc2-py3-none-any.whl
.
File metadata
- Download URL: satori_python_client-0.15.0rc2-py3-none-any.whl
- Upload date:
- Size: 21.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: pdm/2.13.2 CPython/3.12.6 Linux/6.8.0-1014-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dd4c8b3d28a1f2fd31bbca45fd93c11f468244a6de3a77ecd2a80f356bb140b4 |
|
MD5 | 3e54480c6b3ac57b2690d6dcc71233fa |
|
BLAKE2b-256 | dc37f6baae731e802189aacf95e625a2f528a6124c6196ebca34b4ad008d37e7 |