当Discord中发生事件时,OBS更新中的浏览器源如何做到这一点?

问题描述

我目前正在尝试使用 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)```

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)