1- [ ![ Codacy Badge] ( https://api.codacy.com/project/badge/Grade/7effd0e67a70432eb40c85bdbabba728 )] ( https://app.codacy.com/gh/GravityDarkLab/obs-controller-api?utm_source=github.com&utm_medium=referral&utm_content=GravityDarkLab/obs-controller-api&utm_campaign=Badge_Grade )
21# OBS-Controller API
32
43This is an API for controlling OBS Studio via HTTP requests.
54It is written in Java with Spring Boot and uses
65the [ obs-websocket] ( https://github.com/obsproject/obs-websocket/blob/master/docs/generated/protocol.md )
7- plugin.
6+ plugin for [ OBS studio ] ( https://obsproject.com/ ) .
87
9- ![ OBS-Controller-API.png] ( assets/OBS-Controller-API.png )
8+ <div style =" display : inline-flex ; align-items : center ;" >
9+ <img src =" assets/OBS-Controller-API.png " alt =" OBS-Controller-API " width =" 500 " style =" margin-right : 10px ;" >
10+ <img src =" assets/OBS-Controller-API-v2.png " alt =" OBS-Controller-API-v2 " width =" 700 " height =" 400 " >
11+ </div >
1012
1113## Installation
1214
@@ -23,24 +25,24 @@ plugin.
23253 . Copy the ipAdresse, port and password of the Websocket Server.
24264 . Send ` POST ` requests to ` http://localhost:8080/obs/connect ` with the following required parameters to connect to the
2527 Websocket Server:
26- - ` ipAdresse ` : The ipAdresse of the Websocket Server.
28+ - ` ipAddress ` : The ipAdresse of the Websocket Server.
2729 - ` port ` : The port of the Websocket Server.
2830 - ` password ` : The password of the Websocket Server.
29315 . Send a ` POST ` request to ` http://localhost:8080/obs/authenticate ` with the following required parameters to
3032 authenticate to the Websocket Server:
31- - ` ipAdresse ` : The ipAdresse of the Websocket Server.
33+ - ` ipAddress ` : The ipAdresse of the Websocket Server.
3234 - ` port ` : The port of the Websocket Server.
33356 . Send a ` POST ` request to ` http://localhost:8080/obs/startRecording ` with the following required parameters to start
3436 recording:
35- - ` ipAdresse ` : The ipAdresse of the Websocket Server.
37+ - ` ipAddress ` : The ipAdresse of the Websocket Server.
3638 - ` port ` : The port of the Websocket Server.
37397 . Send a ` POST ` request to ` http://localhost:8080/obs/stopRecording ` with the following required parameters to stop
3840 recording:
39- - ` ipAdresse ` : The ipAdresse of the Websocket Server.
41+ - ` ipAddress ` : The ipAdresse of the Websocket Server.
4042 - ` port ` : The port of the Websocket Server.
41438 . Send a ` POST ` request to ` http://localhost:8080/obs/disconnect ` with the following required parameters to disconnect
4244 from the Websocket Server:
43- - ` ipAdresse ` : The ipAdresse of the Websocket Server.
45+ - ` ipAddress ` : The ipAdresse of the Websocket Server.
4446 - ` port ` : The port of the Websocket Server.
4547
4648## Available Endpoints
@@ -52,38 +54,59 @@ requires specific parameters as part of the query string.
5254
53551 . ** Connect to OBS**
5456 - ` POST /obs/connect `
55- - Parameters: ` ipAdresse ` , ` port ` , ` password `
56- - Example: ` POST http://localhost:8080/obs/connect?ipAdresse=<ipAdresse >&port=<port>&password=<password> `
57+ - Parameters: ` ipAddress ` , ` port ` , ` password `
58+ - Example: ` POST http://localhost:8080/obs/connect?ipAddress=<ipAddress >&port=<port>&password=<password> `
5759
58602 . ** Authenticate with OBS**
5961 - ` POST /obs/authenticate `
60- - Parameters: ` ipAdresse ` , ` port `
61- - Example: ` POST http://localhost:8080/obs/authenticate?ipAdresse=<ipAdresse >&port=<port> `
62+ - Parameters: ` ipAddress ` , ` port `
63+ - Example: ` POST http://localhost:8080/obs/authenticate?ipAddress=<ipAddress >&port=<port> `
6264
63653 . ** Disconnect from OBS**
6466 - ` POST /obs/disconnect `
65- - Parameters: ` ipAdresse ` , ` port `
66- - Example: ` POST http://localhost:8080/obs/disconnect?ipAdresse=<ipAdresse >&port=<port> `
67+ - Parameters: ` ipAddress ` , ` port `
68+ - Example: ` POST http://localhost:8080/obs/disconnect?ipAddress=<ipAddress >&port=<port> `
6769
68704 . ** Reconnect to OBS**
6971 - ` POST /obs/reconnect `
70- - Parameters: ` ipAdresse ` , ` port `
71- - Example: ` POST http://localhost:8080/obs/reconnect?ipAdresse=<ipAdresse >&port=<port> `
72+ - Parameters: ` ipAddress ` , ` port `
73+ - Example: ` POST http://localhost:8080/obs/reconnect?ipAddress=<ipAddress >&port=<port> `
7274
7375### OBS Recording Control
7476
75771 . ** Start Recording**
7678 - ` POST /obs/startRecording `
77- - Parameters: ` ipAdresse ` , ` port `
78- - Example: ` POST http://localhost:8080/obs/startRecording?ipAdresse=<ipAdresse>&port=<port> `
79-
80- 2 . ** Stop Recording**
79+ - Parameters: ` ipAddress ` , ` port `
80+ - Example: ` POST http://localhost:8080/obs/startRecording?ipAddress=<ipAddress>&port=<port> `
81+ 2 . ** Start Recording to All clients**
82+ - `POST /obs/startRecordingToAllClients
83+ - Example: ` POST http://localhost:8080/obs/startRecordingAll `
84+ 3 . ** Stop Recording**
8185 - ` POST /obs/stopRecording `
82- - Parameters: ` ipAdresse ` , ` port `
83- - Example: ` POST http://localhost:8080/obs/stopRecording?ipAdresse=<ipAdresse>&port=<port> `
84-
85- ![ swagger-doc.png] ( assets/swagger-doc.png )
86+ - Parameters: ` ipAddress ` , ` port `
87+ - Example: ` POST http://localhost:8080/obs/stopRecording?ipAddress=<ipAddress>&port=<port> `
88+ 4 . ** Stop Recording to All clients**
89+ - `POST /obs/stopRecordingToAllClients
90+ - Example: ` POST http://localhost:8080/obs/stopRecordingAll `
91+
92+ ### Health Check
93+
94+ 1 . ** Connected Clients**
95+ - ` GET /obs/ipAddresses `
96+ - Example: ` GET http://localhost:8080/obs/ipAddresses `
97+ 2 . ** Number of Connected Clients**
98+ - ` GET /obs/count `
99+ - Example: ` GET http://localhost:8080/obs/count `
100+ 3 . ** Test connection to a client**
101+ - ` GET /obs/testConnection `
102+ - Parameters: ` ipAddress ` , ` port `
103+ - Example: ` GET http://localhost:8080/obs/testConnection?ipAddress=<ipAddress>&port=<port> `
104+
105+ <div style =" display : flex ; align-items : center ;" >
106+ <img src =" assets/swagger-doc.png " alt =" OBS-Controller-API " width =" 800 " style =" margin-right : 10px ;" >
107+ </div >
86108
87109## License
88110
89- This project is licensed under the MIT License - see the [ LICENSE] ( LICENSE ) file for details.
111+ This project is licensed under the Isar Aerospace Technologies GmbH License - see the [ LICENSE] ( LICENSE ) file for
112+ details.
0 commit comments