EventsClient renamed to EventClient

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
This commit is contained in:
onyx-and-iris
2022-07-27 19:39:33 +01:00
parent c71d7e4ea9
commit 2a3a86c277
7 changed files with 209 additions and 276 deletions

View File

@@ -33,7 +33,7 @@ class Observer:
if __name__ == "__main__":
cl = obs.EventsClient()
cl = obs.EventClient()
observer = Observer(cl)
while cmd := input("<Enter> to exit\n"):

View File

@@ -0,0 +1,40 @@
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")