Skip to content

Python library to communicate with an obs-websocket server

License

Notifications You must be signed in to change notification settings

rolandf/obs-websocket-py

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

obs-websocket-py

Python library to communicate with an obs-websocket server.

Licensed under the MIT License

Project pages

GitHub project: https://github.com/Elektordi/obs-websocket-py

PyPI package: https://pypi.python.org/pypi/obs-websocket-py

Installation

Just run pip install obs-websocket-py in your Python venv or directly on your system.

For manual install, git clone the github repo and copy the directory obswebsocket in your python project root.

Requires: websocket-client (from pip)

Usage

See python scripts in the samples directory.

Or take a look at the documentation below:

Output of pydoc obswebsocket:

NAME
    obswebsocket - Python library to communicate with an obs-websocket server.

PACKAGE CONTENTS
    base_classes
    core
    events
    exceptions
    requests

CLASSES
    obsws
    
    class obsws
     |  Wrapper class for using obs-websocket-py
     |  
     |  Simple usage:
     |      >>> import obswebsocket, obswebsocket.requests
     |      >>> client = obswebsocket.obsws("localhost", 4444, "secret")
     |      >>> client.connect()
     |      >>> client.call(obswebsocket.requests.GetVersion()).getObsWebsocketVersion()
     |      u'4.1.0'
     |      >>> client.disconnect()
     |      
     |  For advanced usage, including events callback, see the 'samples' directory.
     |  
     |  Methods defined here:
     |  
     |  __init__(self, host, port=4444, password='')
     |      Construct a new obsws wrapper
     |      
     |      :param host: Hostname to connect to
     |      :param port: TCP Port to connect to (Default is 4444)
     |      :param password: Password for the websocket server (Leave this field empty if no auth enabled
     |          on the server)
     |  
     |  call(self, obj)
     |      Make a call to the OBS server through the Websocket.
     |      
     |      :param obj: Request (class from obswebsocket.requests module) to send to the server.
     |      :return: Request object populated with response data.
     |  
     |  connect(self)
     |      Connect to the websocket server
     |      
     |      :return: Nothing
     |  
     |  disconnect(self)
     |      Disconnect from websocket server
     |      
     |      :return: Nothing
     |  
     |  register(self, function, event=None)
     |      Register a new hook in the websocket client
     |      
     |      :param function: Callback function pointer for the hook
     |      :param event: Event (class from obswebsocket.events module) to trigger the hook on.
     |          Default is None, which means trigger on all events.
     |      :return: Nothing
     |  
     |  send(self, data)
     |      **DEPRACATED***
     |      Make a raw json call to the OBS server through the Websocket.
     |      
     |      :param obj: Request (python dict) to send to the server. Do not include field "message-id".
     |      :return: Response (python dict) from the server.
     |  
     |  unregister(self, function, event=None)
     |      Unregister a new hook in the websocket client
     |      
     |      :param function: Callback function pointer for the hook
     |      :param event: Event (class from obswebsocket.events module) which triggered the hook on.
     |          Default is None, which means unregister this function for all events.
     |      :return: Nothing

Problems?

Please check on Github project issues, and if nobody else have experienced it before, you can file a new issue.

About

Python library to communicate with an obs-websocket server

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%