Working Version
This commit is contained in:
parent
5d9831fc30
commit
3d0f2b0a90
@ -11,24 +11,22 @@ async def default_request():
|
||||
result = await ws.call('GetVersion') # We get the current OBS version. More request data is not required
|
||||
print(result) # Print the raw json output of the GetVersion request
|
||||
await asyncio.sleep(1)
|
||||
print("\n\n")
|
||||
requests = result['available-requests'].split(',')
|
||||
for r in requests:
|
||||
print(r)
|
||||
print("\n\n")
|
||||
|
||||
#data = {'source':'test_source', 'volume':0.5}
|
||||
#result = await ws.call('SetVolume', data) # Make a request with the given data
|
||||
#print(result)
|
||||
await ws.disconnect() # Clean things up by disconnecting. Only really required in a few specific situations, but good practice if you are done making requests or listening to events.
|
||||
return requests
|
||||
|
||||
async def make_custom_request(request, data=None):
|
||||
await ws.connect() # Make the connection to OBS-Websocket
|
||||
result = await ws.call(request) # We get the current OBS version. More request data is not required
|
||||
print(result) # Print the raw json output of the GetVersion request
|
||||
#result = await ws.call(request) # We get the current OBS version. More request data is not required
|
||||
#print(result) # Print the raw json output of the GetVersion request
|
||||
await asyncio.sleep(1)
|
||||
if not data==None:
|
||||
data = {'source':'test_source', 'volume':0.5}
|
||||
result = await ws.call('SetVolume', data) # Make a request with the given data
|
||||
#data = {'source':'tinycam', 'volume':0.5}
|
||||
result = await ws.call(request, data=data) # Make a request with the given data
|
||||
print(result)
|
||||
await ws.disconnect() # Clean things up by disconnecting. Only really required in a few specific situations, but good practice if you are done making requests or listening to events.
|
||||
|
||||
@ -44,10 +42,10 @@ async def on_switchscenes(data):
|
||||
|
||||
|
||||
def getRequests():
|
||||
loop.run_until_complete(default_request())
|
||||
return loop.run_until_complete(default_request())
|
||||
|
||||
def makeRequest(request):
|
||||
loop.run_until_complete(make_custom_request(request))
|
||||
def makeRequest(request, data):
|
||||
loop.run_until_complete(make_custom_request(request, data))
|
||||
|
||||
|
||||
|
||||
|
||||
@ -16,19 +16,30 @@ api.config["DEBUG"] = False
|
||||
possibleRequests = []
|
||||
|
||||
def init():
|
||||
#possibleRequests = obsWebSocket.getRequests()
|
||||
#obsWebSocket.makeRequest("ToggleStudioMode")
|
||||
obsWebSocket.listenForData()
|
||||
possibleRequests = obsWebSocket.getRequests()
|
||||
for r in possibleRequests:
|
||||
print("requestname: "+r)
|
||||
#obsWebSocket.makeRequest("ToggleStudioMode", {'source':'tinycam', 'render':'True'})
|
||||
obsWebSocket.makeRequest("SetSourceRender", data={'source':"tinycam", 'render': False, 'scene-name':"Cam feed (main) INFOBOX"})
|
||||
obsWebSocket.makeRequest("SetSourceRender", data={'source':"tinycam", 'render': True, 'scene-name':"Cam feed (main) INFOBOX"})
|
||||
|
||||
@api.route('/api/v1/obs/websocket/getRequests', methods=['GET'])
|
||||
def getRequests():
|
||||
if 'name' in request.args:
|
||||
pass
|
||||
#if is_command(request.args['name']):
|
||||
# return flask.make_response('', 200)
|
||||
#else:
|
||||
# return flask.make_response('', 404)
|
||||
#obsWebSocket.listenForData()
|
||||
|
||||
def do_request(requestName, data):
|
||||
if requestName in possibleRequests:
|
||||
obsWebSocket.makeRequest(requestName, data)
|
||||
|
||||
@api.route('/api/v1/obs/websocket/makeRequest', methods=['GET'])
|
||||
def makeRequest():
|
||||
if 'request_name' not in request.args:
|
||||
return flask.make_response('{\"text\":"Argument \'request_name\' not in request"}', 400)
|
||||
if 'request_data' not in request.args:
|
||||
data = None
|
||||
else:
|
||||
data = request.args['request_data']
|
||||
#possibleRequests = obsWebSocket.getRequests()
|
||||
do_request(request.args['request_name'], data)
|
||||
|
||||
if __name__ == "__main__":
|
||||
init()
|
||||
api.run(host='0.0.0.0', port=6009)
|
||||
#api.run(host='0.0.0.0', port=6009)
|
||||
Loading…
Reference in New Issue
Block a user