Skip to main content

satori-python

latest release Licence PyPI PyPI - Python Version

基于 Satori 协议的 Python 开发工具包

协议介绍

Satori Protocol

协议端

目前提供了 satori 协议实现的有:

使用该 SDK 的框架

安装

安装完整体:

pip install satori-python

只安装基础部分:

pip install satori-python-core

只安装客户端部分:

pip install satori-python-client

只安装服务端部分:

pip install satori-python-server

官方适配器

适配器 安装 路径
Satori pip install satori-python-adapter-satori satori.adapters.satori
OneBot V11 pip install satori-python-adapter-onebot11 satori.adapters.onebot11.forward, satori.adapters.onebot11.reverse
Console pip install satori-python-adapter-console satori.adapters.console
Milky pip install satori-python-adapter-milky satori.adapters.milky.main, satori.adapters.milky.webhook, satori.adapters.milky.sse
QQ pip install satori-python-adapter-qq satori.adapters.qq.main, satori.adapters.qq.websocket

社区适配器

适配器 安装 路径
nekobox(Lagrange) pip install nekobox nekobox.main

使用

客户端:

from satori import EventType
from satori.event import MessageEvent
from satori.client import Account, App, WebsocketsInfo

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()

文档

请阅读 仓库文档

示例

架构

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

Metadata

Release files for satori-python 1.3.9.post1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for satori-python 1.3.9.post1
File Size Uploaded
satori_python-1.3.9.post1.tar.gz 47.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for satori-python 1.3.9.post1
File Interpreter ABI Platform
satori_python-1.3.9.post1-py3-none-any.whl Python 3 none any Details

Total release size: 102.3 kB

Release files / satori_python-1.3.9.post1.tar.gz

Download URL satori_python-1.3.9.post1.tar.gz
Size 47.4 kB
Tags Source
SHA-256 checksum
How to use checksums
4e255d441fda7ef3b21dd8cfe0e2120e5b6d331517c6ca356ee8ac364fb89f79
BLAKE2b-256 checksum
How to use checksums
8a513f19829ddc4c4b5466fae59e8358720a36b6417fbf11a0d45d7cb5f63561
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via pdm/2.28.0 CPython/3.12.3 Linux/6.17.0-1020-azure

Release files / satori_python-1.3.9.post1-py3-none-any.whl

Download URL satori_python-1.3.9.post1-py3-none-any.whl
Size 54.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1b6a6f8d504a1f07b1c29c4186a554dd111c2e7541b1e5f624338ac410091af2
BLAKE2b-256 checksum
How to use checksums
1351ec481725cd23b9ee9b131cf9f2052b30117fa71658ac636ddf245fdeb471
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via pdm/2.28.0 CPython/3.12.3 Linux/6.17.0-1020-azure

Release history Release notifications | RSS feed

This release

1.3.9.post1 This release

2 release files

1.3.9

2 release files

1.3.8

2 release files

1.3.7

2 release files

1.3.6

2 release files

1.3.5

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

0.18.1

2 release files

0.17.7

2 release files

0.17.6

2 release files

0.17.5

2 release files

0.17.2

2 release files

0.17.1

2 release files

0.17.0

2 release files

0.16.5

2 release files

0.16.3

2 release files

0.16.2

2 release files

0.16.1

2 release files

0.16.0

2 release files

0.15.1

2 release files

0.15.0

2 release files

0.14.5

2 release files

0.14.4

2 release files

0.14.3

2 release files

0.13.3

2 release files

0.13.2

2 release files

0.12.0

2 release files

0.11.5

2 release files

0.11.4

2 release files

0.11.3

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.0

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page