Skip to main content

Tsugu Python Frontend

Project description

Tsugu-Lite-Py tmrn

license license license


Python编写的 Tsugu 前端


基于 tsugu-bangdream-bot v2 api 后端


为什么不再提供登录端?

黑暗时代...

因为这不是一个好的时代,当下一个好的时代到来时,我们会再次提供登录端。
但部署方式仍然是有不少的,如果有部署期望,可以翻到页面底部 客服ano酱指导 聊聊天,我们会尽力帮助你。

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

环境需求

Python 第三方库

pip install requests PyYAML

如果您要使用 test 函数测试,您还需要安装 Pillow 来显示图片

pip install pillow

后端功能

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

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

使用 test 函数测试

你可以发现 main.py 底部有这样一行

test(main('查卡 红 ksm 5x', '114514', 'red', '666808414'))

直接运行 main.py 即可测试。修改传入参数可以测试不同的功能。

接入 Python 程序 / BOT

前提

  • 你会简单的使用你即将接入的 Python 程序 / BOT。
  • 一些非常简单的py知识。
  • 注释掉 main.py 底部的 test 函数。
  • 可能需要修改 from utils import *from .utils import *。(相对导入)

调用

main.py 提供了一个 main 同步函数,他需要 message user_id platform channel_id 四个参数,分别意味着 消息内容 用户id 平台 频道id
在常用的qqbot中,群号就是 channel_id
当你使用QQ号作为 user_id 时,platform 可以填写 red

返回

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

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

举例

# 监听每一条文字消息
@on.message_created
def tsugulp(event):
    # 调用main函数
    rpl = main(event.message.content, event.user.id, 'red', event.message.id)
    # 如果返回值为None,不发送任何消息
    if not rpl:
        return

    def handle_string(item):
        return item['string']

    def handle_base64(item):
        base64_data = item['string']
        return f'<img src="data:image/png;base64,{base64_data}"/>'

    handlers = {
        'string': handle_string,
        'base64': handle_base64,
    }
    # 使用列表推导式,将返回值处理成字符串
    modified_results = [handlers[item['type']](item) for item in rpl if item['type'] in handlers]
    result_string = ''.join(modified_results)
    # 发送消息
    event.message_create(result_string)

这是随机挑选的一个 satori 协议机器人框架的 tsugu 接入实现,对于绝大部分 Python 机器人框架,接入方法大同小异。唯一可能需要处理的可能就是异步函数的调用问题。

客服ano酱指导

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

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


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

tsugu-0.0.1.tar.gz (12.9 kB view hashes)

Uploaded Source

Built Distribution

tsugu-0.0.1-py3-none-any.whl (10.6 kB view hashes)

Uploaded Python 3

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