Skip to main content

A Python SDK for heychat (黑盒语音)

Project description

heychat.py

Python SDK for HeyChat

安装

pip install aiohttp

Python小白不会用pypi,所以就手动下载下来然后把heychat文件夹拖到你的项目里吧()

最简示例

from heychat import Bot, Message

bot = Bot('your_token')

@bot.command('hello')
async def hello(msg: Message):
    await msg.reply('world!')

bot.run()

更多功能

✅ 命令参数处理
from heychat import Bot, Message
from random import randint

bot = Bot('your_token')

@bot.command('roll')
async def hello(msg: Message,max_num):
    # 需先前往小黑盒开发平台为注册指令添加变量
    # 如果没有添加变量单纯输入 /roll 100 也可解析
    max_num = int(max_num)
    await msg.reply(f"你掷出了{randint(1,max_num)}")

bot.run()
✅ 获取基础信息
from heychat import Bot, Message

bot = Bot('your_token')

@bot.on_message()
async def on_message(msg: Message):
    # 用户
    print(msg.author.username) # 用户名
    print(msg.author.nickname) # 房间昵称
    print(msg.author.id)       # 用户ID

    # 消息
    print(msg.content)         # 消息内容
    print(msg.msg_timestamp)   # 消息时间戳
    
    # 房间
    print(msg.ctx.guild.id)    # 房间ID
    print(msg.ctx.guild.name)  # 房间名
    
    # 频道
    print(msg.ctx.channel.id)  # 频道ID
    print(msg.ctx.channel.name)# 频道名
    

bot.run()
✅ MD构建
import MDMessage
@bot.on_message()
async def on_message(msg: Message):

    img_path = "./img.png"
    await upload_img(img_path)

    md_msg = MDMessage()
    md_msg.apeend("这是一段文字")
    md_msg.append(Element.TEXT("这也是一段文字"))
    md_msg.append(Element.MENTION("18661718")) # @
    md_msg.append(Element.IMG("https://chat.max-c.com/attachments/2024-09-15/1835322670233686016_UitVbhhcLf.jpg"))

    # or
    
    md_msg = MDMessage("这是一段文字",
                        Element.TEXT("这也是一段文字"),
                        Element.IMG("https://chat.max-c.com/attachments/2024-09-15/1835322670233686016_UitVbhhcLf.jpg"),
                        Element.MENTION("18661718"))
    

    await msg.reply(md_msg)
✅ 支持更多指令变量类型
已经看了,觉得不需要适配现在的够用了,如果有具体需求欢迎提出
✅ 从type5转移至type50
(划掉)等什么时候官方把type5删了再写(划掉)已经写了
❌ 事件处理
@bot.on_event(EventType.JOIN_GUILD)
async def on_join_guild(event: JoinGuildEvent):
    pass

贡献

欢迎大家提供建议以及pr!

写在最后的省流

抄的khl.py
用的ChatGPT
对了家人们有没有会pypi的教教我怎么发包() 太蠢了整不明白

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

heychat-0.0.1.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

heychat-0.0.1-py3-none-any.whl (17.5 kB view details)

Uploaded Python 3

File details

Details for the file heychat-0.0.1.tar.gz.

File metadata

  • Download URL: heychat-0.0.1.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.11

File hashes

Hashes for heychat-0.0.1.tar.gz
Algorithm Hash digest
SHA256 145c36b52c8ba65876d98ebe8d88b3a110bb762a3d84fd4911bf9c7373894474
MD5 ea725229a0ac25fc597d5d383d78e045
BLAKE2b-256 5d896fa09cbd6c3a0d5266a7b073cfe72797f7316e9cc75f0f583c9f2d3256fc

See more details on using hashes here.

File details

Details for the file heychat-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: heychat-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 17.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.11

File hashes

Hashes for heychat-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a48cbbe2b7576384758ae86d7e14d910b1572af915fea1461a31db172465a96b
MD5 a1e3992a1139752b13f1f9d343084913
BLAKE2b-256 38731e10aa32c755fd4148fa23a4c5809b04ac95b6dff0a1d80eb2a61df3e5ca

See more details on using hashes here.

Supported by

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