Commit Graph

59 Commits

Author SHA1 Message Date
797161a6f2 import Callable, Iterable from collections.abs instead of typing.
update tests to reflect changes in the API.

reorganise hatch envs

add black,isort configs to pyproject.toml

add pre-commit config
2025-02-11 09:51:00 +00:00
f52ac163b8 patch bump version 2025-02-10 09:12:09 +00:00
Zynthasius39
197a60a7cd Fix trigger_hot_key_by_key_sequence() method 2025-02-08 18:31:12 +04:00
Zynthasius39
633093ead4 Fix trigger_hot_key_by_name() method 2025-02-08 17:59:45 +04:00
ef8df5cf4d bump to 1.7.0 2024-01-21 12:34:10 +00:00
1abca0c7e4 bump to 1.7.0b0 2024-01-09 15:37:33 +00:00
85180c1d94 upd variable name 2024-01-09 12:17:47 +00:00
efaee7594e should a socket operation be attempted after socket closed
then catch and log OSError and close thread.
2024-01-07 12:35:20 +00:00
cac236c004 removes timeout for socket before starting worker thread 2024-01-07 11:19:33 +00:00
6aa6db09eb adds an event object and listens until its set
sets the event object on WebSocketConnectionClosedException

adds __enter__(), __exit__() methods

adds disconnect() to event client. aliases it as unsubscribe

checks for non-empty response with:
`if r := self.base_client.ws.recv()`
before attempting to json.load() it.
2024-01-05 09:57:08 +00:00
f1c2efa4a1 adds disconnect() method to ReqClient
now calling disconnect() in __exit__()
2024-01-05 09:36:02 +00:00
1494208f63 patch bump for issue #37 2023-10-23 12:43:59 +01:00
Adem
d217630289
Merge pull request #37 from aatikturk/implement_v5.3_methods
Update reqs.py

implemented  set_record_directory method. (only availabe for obs websocket v5.3 or higher)
2023-10-23 14:00:08 +03:00
Adem
5bfe792fa6
Update reqs.py
added set_record_directory  method to ReqClient.
2023-10-23 09:29:16 +03:00
c4cf817042 split at full stop 2023-10-09 22:34:05 +01:00
83577e2d61 adds projector methods with a deprecation warning
patch bump

closes #35
2023-10-09 22:06:18 +01:00
780f07e25f minor version bump 2023-08-14 12:18:29 +01:00
a7ef61018b refactor OBSSDKRequestError
reword error section in README
2023-08-14 00:44:59 +01:00
ffd215aadf send now raises an OBSSDKRequestError
it is then logged and rethrown
2023-08-11 22:33:41 +01:00
f3e75c0ddf OBSSDKError is now the base custom error class
OBSSDKTimeoutError and OBSSDKRequestError subclass it

req_name and error code set as error class attributes.
2023-08-11 22:32:50 +01:00
5db7a705c5 log and rethrow TimeoutError on connection
we can just encode challenge here.

shorten opcode != 2 message
2023-08-11 22:31:03 +01:00
5462c47b65 log errors raised in authenticate() 2023-06-28 17:56:56 +01:00
126e5cb0a4 raise OBSSDKError if auth reponse opcode != 2 2023-06-28 17:56:29 +01:00
Adem
4ced7193df patch bump 2023-06-23 01:53:02 +03:00
Adem
468c63f697 auth logger for clients
added RpcVersion in auth loggers for both requests and events clients.
removed the check in baseclient auth function and returned the whole response.
2023-06-23 01:48:45 +03:00
2c07f242ad added module level loggers.
class loggers implemented as child loggers.

patch bump
2023-06-22 22:17:20 +01:00
491a26aaf7 minor ver bump 2023-06-19 17:51:16 +01:00
9e3c1d3f37 raise timeout errors.
added some error/exception logging.

added timeout parameter to repr methods.
2023-06-19 17:45:49 +01:00
82b6cdcd04 add error class OBSSDKTimeoutError 2023-06-19 17:44:10 +01:00
Adem
64a7c2b753 update readme and base client 2023-06-14 01:09:44 +03:00
Adem
3adf094481 Added 'timeout' option for baseclient. bumped version 2023-05-29 10:34:40 +00:00
d1c7462cc6 patch bump 2023-03-09 01:38:53 +00:00
91ba90056c adds get_filepath
traverses a list of paths for config.toml
2023-03-09 01:34:44 +00:00
Adem
5e68262a80 fix sceneItemIndex key in the payload for set_scene_item_index method 2023-01-08 20:21:12 +03:00
48e90c82fb alter format of __repr__ in Req + Event clients
password now defaults to empty string, not None.
2022-12-05 18:18:10 +00:00
cc9b1e2c72 lower min python required version to 3.9
python ver test matrix added to hatch config

minor version bump
2022-12-05 16:49:17 +00:00
cf888b0c4a conn paramters added to __repr__ magic methods
add __str__ override (used in logger)
2022-12-05 16:41:34 +00:00
92e2c29bd6 enum.py renamed to subs.py.
No changes to file contents.

relative import changed in __init__.py
2022-12-05 16:39:33 +00:00
335fa42948
Merge pull request #17 from kamalmostafa/no-tomllib
allow use without installing tomllib
2022-12-04 19:37:25 +00:00
83afe31e04
Update baseclient.py
lazy load tomli/tomllib as suggested in #17
2022-12-04 19:34:55 +00:00
5294e1afe2
Merge pull request #18 from kamalmostafa/send-raw
send(..., raw=True) returns raw responseData
2022-12-04 18:07:08 +00:00
Kamal Mostafa
13ef8108df SendStreamCaption requires payload "captionText" 2022-11-30 06:47:15 +00:00
Kamal Mostafa
3786739eee send(..., raw=True) returns raw responseData
Passing raw=True returns unprocessed responseData payload, allowing
for application-level handling of websocket commands unimplemented
by the library or for testing.
2022-11-30 06:46:16 +00:00
Kamal Mostafa
71c1e65483 allow use without installing tomllib
When ObsClient(host='...', port='...', password='...') are provided,
importing tomllib is not actually necessary.  Allow for tomllib to
not be installed at all, and only raise a tomllib ModuleNotFoundError
if (host, port, password) are not provided.
2022-11-30 06:09:19 +00:00
0e39496c59 pass payload for call_vendor_request
add alias methods for hotkey requests ? perhaps this is not required...
2022-11-18 15:09:57 +00:00
42f78a2048 sort imports 2022-11-17 17:59:20 +00:00
f6f542e765 no need to merge here. 2022-11-17 12:11:53 +00:00
da6d83057c minor bump 2022-11-17 11:32:14 +00:00
9fa5b3f4b4 add values to defautlkwargs.
if no conn kwargs then check and merge config.toml

raise error if auth enabled but no password

add full request payload to logger
2022-11-17 11:30:39 +00:00
onyx-and-iris
c4ee2347ba add version.py
add pyproject.toml

add .hatch to gitignore
2022-10-28 16:57:06 +01:00