我目前正在尝试使用 discord.py 和 OBS 脚本。我对 Discord 的 StreamKit 感到恼火的是,我一次只能将语音叠加设置为一个频道,而不是我当前所在的任何频道。我正在尝试制作一个程序,以便当我移动频道时,它会更新具有正确服务器和频道 ID 的浏览器源的 URL。出于某种原因,每当运行循环时,OBS 就会崩溃,所以我不能有一个事件处理程序来告诉 OBS 什么时候我加入了一个新的语音频道。相反,我决定这样做,这样它就可以通过一个按键进行更新。每当我尝试将 discord.py 放入其中时if pressed:
,都会出现错误。有没有什么办法解决这一问题?到目前为止,这是我的代码:
import obspython as obs
import discord
HOTKEY_ID = obs.OBS_INVALID_HOTKEY_ID
def callback(pressed):
if pressed:
settings = obs.obs_data_create()
obs.obs_data_set_string(settings, "url", "/gonna put url here/")
obs.obs_source_update(obs.obs_get_source_by_name("Discord"), settings)
obs.obs_data_release(settings)
def script_save(settings):
global HOTKEY_ID
hotkey_save_array_htk = obs.obs_hotkey_save(HOTKEY_ID)
obs.obs_data_set_array(settings, "htk_hotkey", hotkey_save_array_htk)
obs.obs_data_array_release(hotkey_save_array_htk)
def script_load(settings):
global HOTKEY_ID
HOTKEY_ID = obs.obs_hotkey_register_frontend(
"htk_id", "Discord Overlay", callback
)
hotkey_save_array_htk = obs.obs_data_get_array(settings, "htk_hotkey")
obs.obs_hotkey_load(HOTKEY_ID, hotkey_save_array_htk)
obs.obs_data_array_release(hotkey_save_array_htk)```