Skip to main content

Satori Protocol SDK for python, specify common part

Project description

satori-python

latest release Licence PyPI PyPI - Python Version

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

协议介绍

Satori Protocol

协议端

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

  • Chronocat
  • Koishi (搭配 @koishijs/plugin-server

安装

安装完整体:

pip install satori-python

只安装基础部分:

pip install satori-python-core

只安装客户端部分:

pip install satori-python-client

只安装服务端部分:

pip install satori-python-server

使用

客户端:

from satori import Event, WebsocketsInfo
from satori.client import Account, App

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

Project details


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.12.0.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

satori_python_core-0.12.0-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file satori_python_core-0.12.0.tar.gz.

File metadata

  • Download URL: satori_python_core-0.12.0.tar.gz
  • Upload date:
  • Size: 15.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.15.4 CPython/3.12.3 Linux/6.5.0-1021-azure

File hashes

Hashes for satori_python_core-0.12.0.tar.gz
Algorithm Hash digest
SHA256 1bef48f57e5b56dad858b5bb78896321013da56817ab7b54f95b1b447088fa4b
MD5 2e5249a7807005bb7f7c8ced511f27c5
BLAKE2b-256 27a0616bff4dfd59949b2416fcacd98b0448e91df13e045d987307ea117fa2ed

See more details on using hashes here.

File details

Details for the file satori_python_core-0.12.0-py3-none-any.whl.

File metadata

File hashes

Hashes for satori_python_core-0.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8c6ef9d4b0680cc59b9062ce2597da095c878d9fc43a69299509d4522fe6671c
MD5 a815863214111bd2661386fb8ba01b6a
BLAKE2b-256 fe703f16819d28591f2d6841a7cf3c0dd3b072093a6465df3defae548e7e7a7f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page