检查用户是不是在不和谐的 vc 中进行流式传输
Posted
技术标签:
【中文标题】检查用户是不是在不和谐的 vc 中进行流式传输【英文标题】:Check if a user is streaming in a discord vc检查用户是否在不和谐的 vc 中进行流式传输 【发布时间】:2021-04-09 05:35:04 【问题描述】:我希望我的机器人使用 discord 的 Go Live!
语音频道功能检测是否有人正在流式传输到频道。
然后只让人们连接到等候室,以避免人们发送垃圾邮件并干扰流。唯一的问题是文档显示您可以检查他们是否在 twitch 或 youtube 等上进行流式传输。如何使用我的机器人来检测是否有人流式传输到不和谐频道?
我试过的唯一代码是:
@client.event
async def on_member_update(before, after):
print(before)
print(after)
但我没有得到任何输出,甚至没有错误消息。
【问题讨论】:
您是否要检查某个特定用户是否在线? @DapperDuck 不,我只想检查是否有人在特定频道中直播 【参考方案1】:您可以使用VoiceState
实例的self_stream
属性来检查用户当前是否正在流式传输到语音频道。
当成员停止或开始流式传输时进行标记的示例:
@client.event
async def on_voice_state_update(member, prev, cur):
if prev.channel and cur.channel: # If a user is connected before and after the update
if prev.self_stream != cur.self_stream:
# cur.self_stream will return True whether they're currently streaming
print("User's self-stream updated!")
像往常一样,您将能够通过VoiceState
的其他属性获取他们当前的频道等:
cur.channel # etc.
参考资料:
VoiceState.self_stream
VoiceState.channel
on_voice_state_update()
【讨论】:
以上是关于检查用户是不是在不和谐的 vc 中进行流式传输的主要内容,如果未能解决你的问题,请参考以下文章