Skip to main content

Tsugu Python Frontend

Project description

Tsugu Python Frontend tmrn

license license license


Python编写的 Tsugu 前端模块


安装与更新

安装 tsugu 模块

pip install tsugu

更新

pip install tsugu --upgrade

使用官方源安装

pip install tsugu --index-url https://pypi.org/simple/

后端需求

  • 出图:需要支持 v2 API (2024.2.28日以后的后端版本)
  • utils:需要支持 v2 API
  • 用户数据:需要一个启用了数据库的后端,需要支持 v2 API

三个后端可以设置为不同,默认全部设置为公共后端

测试与调用


调用 tsugu_bot

tsugu_bottsugu 的一个同步函数,用于直接处理用户输入的自然语言并返回结果。
需要 message user_id platform channel_id 四个参数,分别意味着 消息内容 用户id 平台 频道id
在常用的qqbot中,群号就是 channel_id
当你使用QQ号作为 user_id 时,platform 可以填写 red

from tsugu import tsugu_config, tsugu_bot

data = tsugu_bot('查卡 红 ksm 5x', '114514', 'red', '666808414')

返回

[{"type": "string", "string": string},
{"type": "base64", "string": string}, ... ]

当 type 为 string 时,string 为消息内容,可以直接发送到客户端。
当 type 为 base64 时,string 为图片的 base64 编码,需要解码后发送到客户端。
可能会返回多个结果。
如果返回值为 None 代表bot不发送任何消息。

测试例

import base64
from PIL import Image
import io

from tsugu import tsugu_config, tsugu_bot

data = tsugu_bot('查卡 红 ksm 5x', '114514', 'red', '666808414')

if not data:
    print("[无反馈数据]")

for item in data:
    if item["type"] == "string":
        print(f"[文字信息]\n{item['string']}")
    elif item["type"] == "base64":
        image_data = base64.b64decode(item["string"])
        print(f"[图像大小: {len(image_data) / 1024:.2f}KB]")
        Image.open(io.BytesIO(image_data)).show()
    else:
        print(item)

上面的代码使用 pillow 库,将返回值处理成字符串或者图片输出。

更改 tsugu_config 配置

输出文档

from tsugu import tsugu_config

tsugu_config.config_docs()  # 输出文档到控制台

更改配置

有了文档的简单介绍,你可以更改配置。

from tsugu import tsugu_config

# 更改的后端地址。
tsugu_config.backend = "http://127.0.0.0.1:3000"

# 设置代理。
tsugu_config.use_proxies = True
tsugu_config.proxies = {"http": "http://127.0.0.1:1145", "https": "http://127.0.0.1:1919"}

# 添加关闭抽卡模拟的群号。
tsugu_config.ban_gacha_simulate_group_data = ["114514", "1919810"]

# 使用 `add_command_name` 和 `remove_command_name` 方法添加或删除命令名以添加别名或关闭命令。
tsugu_config.add_command_name(api="gacha", command_name="抽卡")

使用单独的路由

如果想自己进行自然语言处理,你可以使用单独的路由。

from tsugu import get_user_data_router, gacha_router, set_car_forward_router

# 获取用户数据
reply = get_user_data_router("red", "1234567890")

# 查卡
reply = gacha_router("红 ksm", [0, 3], 5)

# 设置玩家车牌转发
reply = set_car_forward_router("red", "1234567890", True)

为什么不再提供登录端?

黑暗时代...

因为这不是一个好的时代。
但部署方式仍然是有不少的,如果有部署期望,可以看下面的 ▶️客服ano酱指导 进群聊聊天,我们会尽力帮助你。

基于 v2 api 的 C# + Lagrange 组合的登录端正由 棱镜 开发中,敬请期待。
基于本项目的 NoneBot2 插件也由 zhaomoaniu 开发中,敬请期待。

客服ano酱指导

注意,如果你不知道什么是BanGDream,请不要随意加群
本群还是欢迎加群的(
BanGDreamBot开发聊天群
温馨的聊天环境~

未来还会继续完善以及同步更新的,感谢大家的支持!
也感谢山本和大家的付出


Project details


Release history Release notifications | RSS feed

This version

0.0.8

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tsugu-0.0.8.tar.gz (13.1 kB view details)

Uploaded Source

Built Distribution

tsugu-0.0.8-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file tsugu-0.0.8.tar.gz.

File metadata

  • Download URL: tsugu-0.0.8.tar.gz
  • Upload date:
  • Size: 13.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for tsugu-0.0.8.tar.gz
Algorithm Hash digest
SHA256 bfe19c1fa19f2f61b0cd05f1078a28ebfbb73ab3e70aaa314ed75ea6fd1cb5dc
MD5 d1fcf311e403c03c2214a36540c020e6
BLAKE2b-256 d0c5107d28373b986fdc38dd1eb1afea237435205f11932b5aa5023f69a50fc2

See more details on using hashes here.

File details

Details for the file tsugu-0.0.8-py3-none-any.whl.

File metadata

  • Download URL: tsugu-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 11.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.8

File hashes

Hashes for tsugu-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 5286a23eb8eb473ff1b910c320eb24526841569277bce98f4639cabbac324c95
MD5 54e8d06782956b1ef48497e171e407ba
BLAKE2b-256 77d904289a62052015d23ff75b447b47434ee376541d818399a5e810d472584f

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