mirror of
https://github.com/onyx-and-iris/obsws-python.git
synced 2024-11-22 21:00:53 +00:00
2a3a86c277
remove getter, setter for send. add persistend data unit test add hotkey example default event sub now 0. explicitly define subs in event class. now subs can be set as kwarg
41 lines
997 B
Python
41 lines
997 B
Python
import inspect
|
|
|
|
import keyboard
|
|
import obsstudio_sdk as obs
|
|
|
|
|
|
class Observer:
|
|
def __init__(self, cl):
|
|
self._cl = cl
|
|
self._cl.callback.register(self.on_current_program_scene_changed)
|
|
print(f"Registered events: {self._cl.callback.get()}")
|
|
|
|
@property
|
|
def event_identifier(self):
|
|
return inspect.stack()[1].function
|
|
|
|
def on_current_program_scene_changed(self, data):
|
|
"""The current program scene has changed."""
|
|
print(f"{self.event_identifier}: {data}")
|
|
|
|
|
|
def version():
|
|
print(req_cl.get_version())
|
|
|
|
|
|
def set_scene(scene, *args):
|
|
req_cl.set_current_program_scene(scene)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
req_cl = obs.ReqClient()
|
|
req_ev = obs.EventClient()
|
|
observer = Observer(req_ev)
|
|
|
|
keyboard.add_hotkey("1", set_scene, args=("START",))
|
|
keyboard.add_hotkey("2", set_scene, args=("BRB",))
|
|
keyboard.add_hotkey("3", set_scene, args=("END",))
|
|
|
|
print("press ctrl+enter to quit")
|
|
keyboard.wait("ctrl+enter")
|