Commit Graph

679 Commits

Author SHA1 Message Date
tt2468
2875fc7313 docs: Use SetCurrentProgramScene in examples
Previously using `SetCurrentScene` was confusing users.

Closes #964
2022-07-25 08:02:30 -07:00
tt2468
b9a63603c7 websocketserver: Validate op field type
Could cause a crash by assuming `op` is always a number.

Closes #965
2022-07-25 08:00:48 -07:00
tt2468
de40b53d77 base: Format CMakeLists.txt using OBS formatter 2022-07-25 07:48:06 -07:00
tt2468
1698b2895b
base: Fix MSVC warning about misdeclared Config struct 2022-07-22 07:00:05 -07:00
tt2468
1d25f97004
requesthandler: Fix OpenVideoMixProjector program option
It was stuck opening preview regardless of setting.
2022-07-22 01:59:23 -07:00
Github Actions
258bfc5689 docs(ci): Update generated docs - 35e3e27 [skip ci] 2022-07-12 17:11:15 +00:00
tt2468
35e3e278bf
requesthandler: Fix GetGroupSceneItemList name in docs 2022-07-12 10:10:53 -07:00
tt2468
5341cb5951
README: Add Twitchat 2022-07-03 12:10:24 -07:00
tt2468
00504a0d52
README: Add Touch Portal to supported software 2022-07-03 11:29:06 -07:00
Github Actions
ab743c2ee6 docs(ci): Update generated docs - 1dd57f6 [skip ci] 2022-07-02 17:33:05 +00:00
Brendan Allan
1dd57f6140 requesthandler: Add Outputs requests
Co-authored-by: Ruggero Tomaselli <ruggerotomaselli@gmail.com>
Co-authored-by: tt2468 <tt2468@irltoolkit.com>
2022-07-02 10:32:48 -07:00
Github Actions
a22a7cf993 docs(ci): Update generated docs - d9026c1 [skip ci] 2022-07-02 15:30:44 +00:00
tt2468
d9026c1791 docs: Fix lint formatting error 2022-07-02 08:30:23 -07:00
tt2468
2524dc47cf requesthandler: Fix oopsies in OpenVideoMixProjector 2022-07-02 08:27:18 -07:00
Github Actions
798eebf638 docs(ci): Update generated docs - 9cdfa41 [skip ci] 2022-07-02 15:26:00 +00:00
tt2468
9cdfa41113 requesthandler: Add projector creation requests
I didn't think I'd be able to make remotely usable requests using OBS'
existing projector API, but I'm actually pretty happy with how it
turned out.

Closes #929

Co-authored-by: Brendan Allan <brendonovich@outlook.com>
2022-07-02 08:25:38 -07:00
Github Actions
aab925c0ed docs(ci): Update generated docs - be1b13f [skip ci] 2022-07-02 14:11:39 +00:00
tt2468
be1b13f15d requesthandler: Echo request details in response of CallVendorRequest
I generally don't like to echo data provided to obs-websocket in
requests, but since we do that for the request type in base requests,
this particular case seems fair.

Closes #919
2022-07-02 07:09:31 -07:00
Github Actions
6122fe6ea7 docs(ci): Update generated docs - 4201664 [skip ci] 2022-07-02 14:04:41 +00:00
tt2468
4201664c7b requesthandler, eventhandler: Add outputPath fields when record stops
Closes #934
2022-07-02 07:02:44 -07:00
tt2468
3deea2b5da requesthandler: Rework and fix a few data consistency checks
Some stuff led to possible crashes, other stuff simply didn't work.
Should be much better now.

Closes #942
2022-06-08 01:32:27 -07:00
Github Actions
c3ee52c4fe docs(ci): Update generated docs - f4b72b6 [skip ci] 2022-06-08 08:05:27 +00:00
tt2468
f4b72b69ce utils: Clean up a few iteration functions 2022-06-08 01:04:43 -07:00
tt2468
5b8fd096d5 clang-format: Indent namespaces 2022-06-08 00:37:04 -07:00
tt2468
22fee0312d utils: Move from explicit enum converters to nlohmann macros 2022-06-08 00:33:41 -07:00
tt2468
17292520f2 utils: A few casting nitpicks 2022-06-07 23:36:47 -07:00
tt2468
711746524c Revert "Config, websocketserver: Add feature to bind to loopback (default)"
This reverts commit 1da0214201.
2022-06-07 23:07:09 -07:00
tt2468
e04bca0993 Revert "forms: Add configuration to enable external access"
This reverts commit 1cd12c1023.
2022-06-07 22:34:40 -07:00
tt2468
c8d0ed2138 docs: Fix EventSubscription::All subscribes 2022-06-07 21:47:54 -07:00
tt2468
6deadc25ac base: Change column limit to 132
A column limit of 80 is very restrictive and code readability was
suffering. A limit of 132 is more realistic for this plugin.
2022-06-07 21:36:51 -07:00
tt2468
f73e78582b base: Format code 2022-05-13 21:19:29 -07:00
tt2468
7b238793d0 cmakelists: Various fixes 2022-05-13 20:40:01 -07:00
tt2468
7a09f38a64 base: Remove actions building and refactor CMake for submodule 2022-05-13 20:23:03 -07:00
tt2468
27d21975f0 websocketapi: Fix build on Windows 64 bit 2022-05-13 19:06:03 -07:00
tt2468
60e272e6f0 base: Update a few files with updated info 2022-05-13 18:58:45 -07:00
tt2468
dd4971b1cc lib: Fix compilation on 32 bit Windows 2022-05-13 18:48:55 -07:00
tt2468
749ecc976b base, lib: Update plugin API example and tests
Updates the example and tests for the plugin API to include the latest
additions to the plugin API.
2022-05-10 23:04:21 -07:00
tt2468
d85c86e3a0 base, lib: Add ability to call obs-websocket requests via plugin API
**Increments Plugin API Version**

Adds functions:
- `obs_websocket_get_api_version()` - Gets the current obs-websocket
plugin API version
- `obs_websocket_call_request()` - Calls an obs-websocket request via
the plugin API

Adds structs:
- `obs_websocket_request_response`
2022-05-10 23:04:04 -07:00
tt2468
3303acfcca requesthandler: Don't require session for Request Handler
Required to call requests in situations where a session is not
relevant.
2022-05-10 22:48:57 -07:00
tt2468
1cd12c1023 forms: Add configuration to enable external access
After discussion in the Discord server, and some internal discussion,
this was deemed a reasonable patch for various security concerns. This
basically controls whether obs-websocket binds to 127.0.0.1 or 0.0.0.0.

I decided to have obs-websocket bind to 127.0.0.1 by default, since
most users appear to be using obs-websocket on the same machines as
their client software. This will be changed if it poses significant
support-related issues.

Further security solutions have been discussed, but are either a heavy
amount of work, or significantly impact client applications' connect
flows.

One idea that I should mention is like a cookie system, where:
- On first connect, obs-websocket asks the user to approve the
connection.
- After authentication, obs-websocket gives the client a token in the
`Identified` message, which the client stores.
- On future connects, the client uses this token, along with the
password, to authenticate without needing user confirmation.

This system will likely be implemented in a future version of
obs-websocket.

Closes #907
2022-04-26 03:24:26 -07:00
tt2468
1da0214201 Config, websocketserver: Add feature to bind to loopback (default)
Binds to localhost or 127.0.0.1 by default, since most users don't have
to access obs-websocket externally.
2022-04-25 21:31:52 -07:00
tt2468
226c81ce78 utils/Platform: Ignore virtualbox interface IP
Somewhat common on systems, so we'll just manually ignore it.

Closes #928
2022-04-25 20:38:26 -07:00
Github Actions
ca34981aae docs(ci): Update generated docs - 828dbde [skip ci] 2022-04-26 03:33:37 +00:00
tt2468
828dbde75c
Merge pull request #879 from dnaka91/docs-formatting
docs: Improve generated docs formatting
2022-04-25 20:33:19 -07:00
tt2468
ac102de1e8
Merge branch 'master' into docs-formatting 2022-04-25 20:30:25 -07:00
Github Actions
20e654186c docs(ci): Update generated docs - f42cd21 [skip ci] 2022-04-26 03:25:55 +00:00
tt2468
f42cd2177a
Merge pull request #889 from csunday95/feature-csunday95-get-screen-info
Requests: Add GetMonitorList
2022-04-25 20:25:37 -07:00
Christopher Sund
2479501879 Requests: Add GetMonitorList
Adds a new request `GetMonitorList` that returns a json Array of
objects containing data about connected monitors. See #868
2022-04-25 20:20:45 -07:00
tt2468
371c414281
Merge pull request #924 from ChrisTallon/ipv4only
Server: Add --websocket_ipv4_only switch
2022-04-25 19:53:42 -07:00
Chris Tallon
3a5f0d89b9 Server: Add --websocket_ipv4_only switch
Socket listening default changed to IPv4 and IPv6,
overridable to IPv4 only by using the command line switch.
2022-04-25 19:53:15 -07:00