Commit graph

137 commits

Author SHA1 Message Date
JonnyWong16
7f7d03236b
Fix docstrings 2020-11-22 19:06:30 -08:00
jjlawren
7dad2a8931
Add server handling of HTTP status code 204 (#580) 2020-10-08 12:51:19 -05:00
jjlawren
8410d81520
Add 'activities' endpoint support (#569)
* Add /activities endpoint support

* Fix typos, return a list instead of iterator

* Canary test to validate CI behavior

* Increase timer of canary test to ensure proper run

* Move test to front of run, provide auth and anon versions

* Fix typo
2020-09-16 18:16:01 -05:00
jjlawren
fb82bc402b
Playqueue improvements (#563)
* Allow creating PlayQueues with multiple items, appending items

* Fix single-item playqueues, fix 'next', fix docstrings, run black

* Docstring updates

* More documentation fixes

* Allow removing items from a PlayQueue

* Use f-strings for readability

* Add ability to move items within the PlayQueue

* Cast attributes to proper types, update docs

* Format with black

* flake8 and sphinx fixes

* Reformat with black

* Update __contains__ to accept media objects

* Operate using media items, use methods similar to playlists

* Rename parameter to better match behavior

* Help users by automatically finding appropriate playQueueItemID values

* Add refresh method, auto-refresh before modifying playqueues

* Reformat with black

* Add TAG and TYPE to PlayQueue objects

* Review comments, add playQueueSelectedMetadataItemKey for Chromecast convenience

* Allow setting the playback start point in the PlayQueue

* Add tests, simplify size check

* Use camel case for helper function

* Add a helper to provide the selected item media object
2020-09-11 16:23:27 -05:00
Hellowlol
cf75bb9d14 add some f401 stop flake from failing 2020-05-12 23:32:58 +02:00
Hellowlol
940efc0013 first pass on compat. 2020-05-12 23:15:16 +02:00
jjlawren
6e1fac7984
Fix client control on unclaimed servers (#456) 2020-04-16 14:06:36 -05:00
Jason Lawrence
a6cfe4225a Raise NotFound on 404 errors 2020-04-15 17:09:27 -05:00
blacktwin
bef40a74f5
Merge branch 'master' into unmatch_match 2020-04-12 22:37:50 -04:00
blacktwin
0a77c74466
Merge pull request #426 from pkkid/conversion_actions
conversion_actions
2020-04-12 22:34:51 -04:00
jjlawren
dd91ae41f4
Use Unauthorized exception (#447)
* Use Unauthorized exception in server, myplex, client
2020-04-09 15:56:26 -05:00
blacktwin
839a9da41d
Merge branch 'master' into conversion_actions 2020-04-07 09:21:32 -04:00
blacktwin
2ab3b61447 add mediaType keyword to agents method
Thanks @jonnywong16
2020-03-16 14:25:26 -04:00
blacktwin
07e3d66b4f server agents method docstring minor update 2020-03-16 13:51:36 -04:00
blacktwin
322c3427a1 use fetchItems instead, reduce redundancy 2020-03-16 13:23:33 -04:00
blacktwin
3418acf317 create agents method in server 2020-03-10 16:07:29 -04:00
blacktwin
59bca994e5 adding logging for toggle and redundant toggle 2020-02-26 08:56:29 -05:00
blacktwin
9cfbeb9421 docstring update showing default 2020-02-26 08:55:44 -05:00
blacktwin
6cf18148a0 toggle keyword default to False 2020-02-26 08:55:24 -05:00
blacktwin
ba75935e0b create _allowMediaDeletion method in server.py 2020-02-25 16:39:49 -05:00
blacktwin
74c9a9a2b8 add optimizedItem method 2020-01-30 10:45:14 -05:00
blacktwin
37e3f092ef Add pause option to conversions 2020-01-29 09:16:13 -05:00
blacktwin
bc316a6c9b add removeAll option to optimiziedItems 2020-01-29 09:15:45 -05:00
blacktwin
0a6a6d0a03 add currentBackgroundProcess method
uses TranscodeJob media class
2020-01-29 09:11:07 -05:00
Steffen Fredriksen
c3e16b2d36
Merge pull request #388 from pkkid/conversions
conversions
2020-01-28 17:12:41 +01:00
blacktwin
2da4d2bf68 use fetchItem and fetchItems instead of query 2020-01-27 14:17:23 -05:00
blacktwin
0fa9ced744 change conversions method to use fetchItems
assuming all server's conversion playQueue is 1
2020-01-27 14:16:12 -05:00
zSeriesGuy
d9820775a6 Add additional histroy methods 2019-11-16 16:35:20 -05:00
zSeriesGuy
481e55bbe4 Update docstring for added ratingKey arg. 2019-11-14 17:28:46 -05:00
zSeriesGuy
43a60f00f1 Support history for specific ratingKeys
Add history method to PlexPartialObject
Add ratingKey to server history method.
Add tests for movie, show, season, episode, artist, album, and track history.
2019-11-14 12:21:49 -05:00
blacktwin
45df6b57cf import new Conversion class and return active Conversions 2019-10-10 11:12:34 -04:00
blacktwin
dc6c1f1168 renaming correction 2019-10-10 10:43:52 -04:00
blacktwin
8b3d9db9b2 find background processing list key 2019-10-09 22:11:06 -04:00
blacktwin
a9f341169f import Conversion and create conversions function 2019-10-08 23:27:23 -04:00
Ty Hahn
1d663b9209 Lint 2019-08-07 05:55:03 +09:00
Hellowlol
4c04b76690 Update server.py
add a way to get a transit token. Dunno about the name.
2019-06-29 22:16:55 +02:00
Michael Shepanski
a13d17c838 track accountID in Playable 2019-06-03 00:50:02 -04:00
Michael Shepanski
6ade28868c Add minimal api to list system accounts 2019-06-03 00:44:21 -04:00
Michael Shepanski
dd8648b9de Add container size to plex.history.
Add filter options to plex.history.
2019-06-02 23:12:07 -04:00
Hellowlol
22d1c2011c rstrip baseurl for plex servers, new users seems
add / to the end.
2019-01-19 23:05:12 +01:00
Hellowlol
e6dbf833d4 inital smart playlist 2018-11-16 23:47:49 +01:00
Andrey Yantsen
7a67417615 fix docs for Raises clauses 2018-10-03 11:09:43 +01:00
Andrey Yantsen
68fc970d7a Improvements in tests process (#297)
* lets begin

* skip plexpass tests if there is not plexpass on account

* test new myplex attrubutes

* bootstrap: proper photos organisation

* fix rest of photos tests

* fix myplex new attributes test

* fix music bootstrap by setting agent to lastfm

* fix sync tests

* increase bootstrap timeout

* remove timeout from .travis.yml

* do not create playlist-style photoalbums in plex-bootstraptest.py

* allow negative filtering in LibrarySection.search()

* fix sync tests once again

* use sendCrashReports in test_settings

* fix test_settings

* fix test_video

* do not accept eula in bootstrap

* fix PlexServer.isLatest()

* add test against old version of PlexServer

* fix MyPlexAccount.OutOut

* add flag for one-time testing in Travis

* fix test_library onDeck tests

* fix more tests

* use tqdm in plex-bootstraptest for media scanning progress

* create sections one-by-one

* update docs on AlertListener for timeline entries

* fix plex-bootstraptest for server version 1.3.2

* display skip/xpass/xfail reasons

* fix tests on 1.3

* wait for music to be fully processed in plex-bootstraptest

* fix misplaced TEST_ACCOUNT_ONCE

* fix test_myplex_users, not sure if in proper-way

* add pytest-rerunfailures; mark test_myplex_optout as flaky

* fix comment

* Revert "add pytest-rerunfailures; mark test_myplex_optout as flaky"

This reverts commit 580e4c95a7.

* restart plex container on failure

* add conftest.wait_until() and used where some retries are required

* add more wait_until() usage in test_sync

* fix managed user search

* fix updating managed users in myplex

* allow to add new servers to existent users

* add new server to a shared user while bootstrapping

* add some docs on testing process

* perform few attemps when unable to get the claim token

* unlock websocket-client in requirements_dev

* fix docblock in tools/plex-teardowntest

* do not hardcode mediapart size in test_video

* remove cache:pip from travis

* Revert "unlock websocket-client in requirements_dev"

This reverts commit 0d536bd06d.

* remove debug from server.py

* improve webhook tests

* fix type() check to isinstance()

* remove excessive `else` branch due to Hellowlol advice

* add `unknown` as allowed `myPlexMappingState` in test_server
2018-09-14 20:03:23 +02:00
Andrey Yantsen
54b26fdc25 Sync support (#282)
* [sync] initial commit

* fix populating of `state` field in sync.Status

* [connection] add posibliity to return first established connection faster

* [base] add timeout argument to PlexObject.fetchItems()

* [sync] add timeout arg to SyncItem.getMedia()

When you have multiple media within one SyncItem it takes a lot of time
to get all the info for this media (on my machine it takes about a
second for each movie).

* [sync] fix marking media as downloaded

* [sync] pass clientIdentifier to created SyncItem()

* [sync] override __repr__() for sync.Status

* fix after @mikes-nasuni`s review

* fix python2 compatibility

* get rid of sync.init()

* use list comprehension

* remove timeout from PlexObject.fetchItems()

* fix SyncItem under python 2.7

* fix __doc__ in sync module

* revert myplex._connect() back to it`s original state

* improve sync docs

* get rid of PlexObjects where not needed

* add X-Plex-Sync-Version=2 to headers

* add sync() method into Video, LibrarySection and MyPlexAccount

* add SyncItem.delete()

* add sync.Policy.create()

* use self._default_sync_title instead of _prettyfilename as default title

* let the tests begin

* add items for refreshing synclists to PlexServer

* fix sync tests

* sync for everybody!

* add TODO doctring for Audio._defaultSyncTitle()

* SyncItems tag may be presented only once, there is no need for loop

* add more TODO docstrings

* hello docs

* remove relative import

* remove unused variable from tests/test_sync.py
2018-09-08 17:25:16 +02:00
Michael Shepanski
61ede66ad5 Dont include token in URLs unless show_secrets set in config; All functions that return a URL such as stream urls and thumbnails still include token 2018-01-04 21:44:35 -05:00
Hellowlol
b3a328261a fix installUpdate
i had forgotten a /
2017-09-30 08:44:24 +02:00
Michael Shepanski
52692316fd Merge pull request #175 from pkkid/zomg11
Fix bug for shared librarys.
2017-08-19 19:10:21 -04:00
Hellowlol
fdf79bc745 Fix bug for shared librarys. 2017-08-18 20:32:27 +02:00
Bryan Stitt
e4095816f9 Fix documentation for PlexServer attributes
I'm migrating from an old version and server and token aren't available like this anymore. They are only under their prefixed names now (which is already documented).
2017-08-16 14:59:34 -07:00
Michael Shepanski
08c42d7dd7 Merge pull request #167 from pkkid/plex_server_client_fix
remove depicated warn, add main token to server.clients()
2017-08-13 20:14:58 -04:00