Commit graph

860 commits

Author SHA1 Message Date
Hellowlol
a4443db64f add opt out. untested so dont merge. 2017-10-03 21:23:47 +02:00
Hellowlol
b385b7626b Find duplicates of episodes. 2017-10-03 20:41:44 +02:00
Hellowlol
c9d1e222a6 Merge branch 'master' into better_cli 2017-10-01 00:46:55 +02:00
Hellowlol
7752e983b6 f 2017-10-01 00:34:20 +02:00
Hellowlol
828b41e0ec delete should be part of the media not the media part 2017-09-30 23:16:40 +02:00
Hellowlol
e2f90ea81d add broken delete to parts. 2017-09-30 19:45:35 +02:00
Hellowlol
b3a328261a fix installUpdate
i had forgotten a /
2017-09-30 08:44:24 +02:00
Michael Shepanski
fd015439c4 Fix flake8 warnings 2017-09-29 19:49:13 -04:00
Hellowlol
ceada3c0b3 Fix suggestion bug... 2017-09-30 01:32:27 +02:00
Hellowlol
566107697a download improvements
- Add missing showstatus doc
- add name and total to tqdm so the bar is displayed properly
2017-09-29 23:55:41 +02:00
Michael Shepanski
74eae2acdb Merge pull request #192 from tdorsey/patch-1
Fix TypeError when viewCount is not set
2017-09-29 12:11:30 -04:00
Michael Shepanski
8507c603b4 Update video.py 2017-09-29 12:11:14 -04:00
Michael Shepanski
67c859d584 Update video.py 2017-09-29 12:10:55 -04:00
adam
17532a8f7d Add guid to LibrarySection filters for Movie, Show 2017-09-29 17:45:57 +02:00
tdorsey
e0a213c5e4 Fix TypeError when viewCount is not set
Fixes #190
2017-09-28 06:43:49 -04:00
Hellowlol
f974ce5ad2 More cli work,
# todo movei this to cli inside plexapi and add a entrypoint to setup.py
2017-09-26 21:58:56 +02:00
Hellowlol
4f56b1ad6c init 2017-09-26 20:11:19 +02:00
Hellowlol
0a6655fddd Merge branch 'missing_attrs_from_session' 2017-09-24 00:37:52 +02:00
Hellowlol
25cf962470 Merge branch 'pr/184' 2017-09-24 00:21:29 +02:00
Hellowlol
9765f381e6 remove a unused method. 2017-09-24 00:14:47 +02:00
Hellowlol
e87fb484e4 More explisit 2017-09-23 23:11:34 +02:00
Nitemare
acdff9baa6 Update video.py
Undoing my error, not sure if this is necessary
2017-09-16 00:05:28 -03:00
Nitemare
e648f0d40b Update video.py
Adding seasonEpisode method that is listed in the documentation, but not in actually implimented
2017-09-15 23:19:33 -03:00
Nitemare
133d2f42ce Update video.py
Adding title and parentTitle to Episode variables (Lines 475 & 476)
2017-09-15 23:06:00 -03:00
blacktwin
375907744a is True 2017-09-14 16:53:11 -04:00
Hellowlol
bff5c4b18f fix 2017-09-12 09:30:12 +02:00
Hellowlol
82f4485f32 test it update docs. 2017-09-12 09:01:40 +02:00
Hellowlol
fc6ecaaa77 init 2017-09-12 08:58:43 +02:00
blacktwin
f9f4b80b2b camelCase formating
removeSections instead of remove_sections. update the doc string.
2017-09-11 22:43:52 -04:00
blacktwin
4ed895d5b6 Update myplex.py
254:28: E712 comparison to True should be 'if cond is True:' or 'if cond:'
2017-09-11 11:08:07 -04:00
Michael Shepanski
8e11fe4b95 Unable to remove/invite managed/home users #157 2017-09-08 18:49:55 -04:00
blacktwin
423f11d3c2 update to allow adding shares if none exist 2017-09-08 14:17:39 -04:00
blacktwin
0650aaad67 Home user and remove sections
def updateFriend() update to allow for removing sections if `remove_sections=True`. 

def user() update to find Home user names.
2017-09-08 10:39:58 -04:00
Bryan Stitt
5c7e138b2e Add mood to MusicSection.ALLOWED_FILTERS 2017-08-29 15:37:48 -07:00
Hellowlol
5d60f69610 rating should be a float, this slipped thru the cracks. 2017-08-20 22:30:50 +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
Michael Shepanski
55c96cc11e Merge pull request #176 from pkkid/zomg123
Fix for openpht and fix failing tests
2017-08-19 19:09:52 -04:00
Hellowlol
626c63be3b lint my ass... 2017-08-18 23:23:40 +02:00
Hellowlol
72094fce40 More tests fixes 2017-08-18 21:44:40 +02:00
Hellowlol
25fb8478fb Try to fix some errors. 2017-08-18 21:21:59 +02:00
Hellowlol
24d6dc9c7c Fix for openpht. 2017-08-18 21:01:01 +02: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
d7276e2e82 Add tqdm requirement; Display download status in plex-download 2017-08-14 23:40:28 -04:00
Michael Shepanski
1159edc422 Fix but in plex-markwatched script 2017-08-14 22:55:54 -04:00
Michael Shepanski
410eb25235 Update version 2017-08-13 21:10:05 -04:00
Michael Shepanski
6c8b8654ff Minor version update to 3.0.2 2017-08-13 20:39:26 -04:00
Michael Shepanski
ceeda206b3 Merge branch 'master' of github.com:pkkid/python-plexapi 2017-08-13 20:38:46 -04: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
Michael Shepanski
b3cc62e5ca Update version 2017-08-13 02:10:27 -04:00
Michael Shepanski
7de4cbc572 Make flake8 happy 2017-08-13 01:58:08 -04:00
Michael Shepanski
63dc1507d2 Add plex-download.py tool; Added new utility to request user/pass from user, config, or env for use when creating cmd line tools 2017-08-13 01:50:40 -04:00
Michael Shepanski
943aa02e69 Rename playlist.share to playlist.copyToUser; Make plex.myPlexSubscription a bool; Fix a few tests with updated attrs; Skip test_copyToUser if no subscription 2017-08-11 15:14:32 -04:00
Hellowlol
8b2780186c remove depicated warn, add main token to server.clients()
Abit more dry client.
2017-07-30 20:49:06 +02:00
Michael Shepanski
9c37679fb6 Fix Undefined name pms in server.py installUpdate() #165 2017-07-30 01:05:27 -04:00
Michael Shepanski
0aba49c90c MOve python3 check to compat 2017-07-30 01:02:10 -04:00
Michael Shepanski
15c0deaa18 Merge pull request #153 from pkkid/unicodeerr
Attempt to fix https://github.com/pkkid/python-plexapi/issues/147
2017-07-30 00:56:10 -04:00
Michael Shepanski
cf445ec47a Merge pull request #164 from pkkid/misc_fixes
fix https://github.com/pkkid/python-plexapi/issues/155
2017-07-30 00:55:44 -04:00
Michael Shepanski
2104ec0d64 One-liner it 2017-07-30 00:54:13 -04:00
Michael Shepanski
9d7fee2527 Merge pull request #162 from pkkid/random
make connect build the correct type.
2017-07-30 00:50:32 -04:00
Michael Shepanski
259d0fef37 Fixc bad reference to client.title; Cleanup indentation 2017-07-30 00:49:39 -04:00
Michael Shepanski
552a946e61 Merge pull request #160 from pkkid/shitty_players
Fix https://github.com/pkkid/python-plexapi/issues/158
2017-07-30 00:46:20 -04:00
Michael Shepanski
765314c252 Cleanup doc strings 2017-07-30 00:43:54 -04:00
Michael Shepanski
7abd569bd7 Merge pull request #154 from pkkid/server_checks
add check_for_update, isLatest
2017-07-30 00:40:59 -04:00
Michael Shepanski
48bc16b01c Cleanup doc strings 2017-07-30 00:35:52 -04:00
Michael Shepanski
bc76208666 Merge pull request #152 from pkkid/shared_server
Shared server
2017-07-30 00:34:16 -04:00
Michael Shepanski
8bd880c2a0 Cleanup doc strings 2017-07-30 00:31:45 -04:00
Hellowlol
a0f030e353 Add a test for share playlist. 2017-07-28 22:29:14 +02:00
Hellowlol
06901f3742 fix https://github.com/pkkid/python-plexapi/issues/155 2017-07-28 22:20:30 +02:00
Hellowlol
fa2bbeabb8 make connect build the correct type. 2017-07-27 01:28:14 +02:00
Hellowlol
73c10abcce fix bug, add test add todo for images from meta data. 2017-07-27 00:55:31 +02:00
Hellowlol
5641dcffee Fix https://github.com/pkkid/python-plexapi/issues/158
Confirmed on ptp and ios.
2017-07-26 22:51:24 +02:00
Hellowlol
5bfa96b49c Add missing labels and collections from the classes 2017-07-22 01:07:31 +02:00
Hellowlol
145f49808b fix so we can remove by value
TODO make sure tests works
2017-07-18 23:55:11 +02:00
Hellowlol
498ac29106 add tests for islatest and check for update 2017-07-18 23:20:49 +02:00
Hellowlol
43cb60d440 more update shit 2017-07-18 17:59:23 +02:00
Hellowlol
67468578bf init check for update. 2017-07-18 01:34:28 +02:00
Hellowlol
31daf2a435 Attempt to fix https://github.com/pkkid/python-plexapi/issues/147 2017-07-18 01:14:16 +02:00
Hellowlol
97b8c5e64a init 2017-07-17 02:59:53 +02:00
Hellowlol
9c82a516b5 some flake. 2017-07-16 23:04:46 +02:00
Hellowlol
d2dac4b017 Init edit. 2017-07-16 22:46:03 +02:00
Nolan Buchanan
720d7f94e4 Fixed bug preventing unowned server connections.
Also fixed issue where self.connections was being used in place of
connections variable.
2017-06-05 18:10:46 -04:00
Michael Shepanski
215bf833fa Bug #144 Fix docs for private vars 2017-06-04 22:01:07 -04:00
Michael Shepanski
b9312f1eb8 Make flake8 happy 2017-05-26 22:53:06 -04:00
Michael Shepanski
a0833516fd Remove commented URL 2017-05-26 22:42:05 -04:00
Michael Shepanski
624afd7082 Move share into MyPlexAccount.inviteFriend; Add abilities inviteFriend, updateFriend, RemoveFriend 2017-05-26 22:35:33 -04:00
Michael Shepanski
a79bc44b7a Ability to get a MyPlexAccount object from the plexServer object A(using same token). Review code to lookup port if not available on the client listing (fixed a few bugs in it). 2017-05-18 23:04:57 -04:00
Michael Shepanski
1a175a74a0 Copy all client tests to pytest framework; Remove tests-old dir 2017-05-13 16:13:38 -04:00
Michael Shepanski
ca077c3017 Fix bug with missing commandId and server token (for playback) 2017-05-12 23:42:27 -04:00
Michael Shepanski
650a88d638 Started movinf client tests into Pytest framework 2017-05-12 23:25:57 -04:00
Michael Shepanski
f5af8cdae3 Mark Alert thread class as daemon; Build docs directly from travis script (not a test) 2017-04-29 21:19:59 -04:00
Michael Shepanski
6bb18843d7 Fix a few tests 2017-04-29 02:21:20 -04:00
Michael Shepanski
35fc7718f5 Tests now passing on personal server 2017-04-29 01:47:21 -04:00
Michael Shepanski
109d7367f6 Rename tools to follow naming pattern 2017-04-27 21:21:40 -04:00
Michael Shepanski
a5180b879f Use config to specify client and token; connect to PlexClient even if no token specified 2017-04-25 23:23:57 -04:00
Michael Shepanski
decdc296b6 Merge branch 'generic-tests' 2017-04-25 23:11:25 -04:00
Michael Shepanski
19039e1fed Cleanup client settings in pytest 2017-04-25 23:09:37 -04:00
patrick
7487a41df7 Fixed regression involving invalid token requirement
Fixed regression in client constructor argument
2017-04-24 22:49:15 -04:00
Michael Shepanski
be2142f7ed Better logging when connecting to resources; Ability to specify timeout when connecting to resources; Update connect_to_resource test to be a bit more generic 2017-04-23 22:59:22 -04:00
Michael Shepanski
7ec909dce6 Finish generic tests; a few things to polish before merge 2017-04-23 01:18:53 -04:00
Michael Shepanski
7bb39aa05c UPdating tests to work on second install 2017-04-14 20:47:59 -04:00
Michael Shepanski
ae91ba14b7 Create 2.0 branch; Move 3.0.0 branch to master 2017-04-10 23:25:13 -04:00
Michael Shepanski
0e220f2e7d Cleanup long doc string long lines 2017-03-21 23:04:23 -04:00
Michael Shepanski
fbbd3f0082 Merge pull request #139 from Hellowlol/lib_work
Lib work
2017-03-21 22:47:00 -04:00
Hellowlol
421dcd7bcf Add share. works missing docs 2017-03-06 23:18:10 +01:00
Hellowlol
9d0126f808 add docs 2017-03-05 23:16:06 +01:00
Hellowlol
70fce72f44 more dosc. 2017-03-03 23:32:16 +01:00
Hellowlol
93a9ea3488 addtourl helper. 2017-02-28 22:49:49 +01:00
Hellowlol
167939173f flake fixes 2017-02-28 22:30:34 +01:00
Michael Shepanski
1dcbf85a9f Changes to myplex.py from code review; Update test_documentation to check for warnings and errors 2017-02-27 23:43:31 -05:00
Hellowlol
cfae507471 Fix test. 2017-02-27 23:20:10 +01:00
Hellowlol
db3b729360 one step closer with the test. 2017-02-27 23:16:02 +01:00
Hellowlol
ff4b1010a9 Add edit/add library. 2017-02-27 22:04:37 +01:00
Hellowlol
cb66c93354 inital lib 2017-02-27 13:23:35 +01:00
Michael Shepanski
612f1db0d2 Remove unused import 2017-02-27 00:50:48 -05:00
Michael Shepanski
43444459e3 Tighten up download code a bit; downloadLogs and DownloadDatabases were reversed (oops) 2017-02-26 23:59:46 -05:00
Michael Shepanski
55a38bead7 Fix string type 2017-02-26 21:42:01 -05:00
Michael Shepanski
aee9290c29 Update utils.py 2017-02-26 21:14:15 -05:00
Michael Shepanski
14f70620ab Update media.py 2017-02-26 21:12:56 -05:00
Michael Shepanski
5e2805d240 Update base.py 2017-02-26 21:11:41 -05:00
Michael Shepanski
ec4d0d591d Update base.py 2017-02-26 21:10:28 -05:00
Michael Shepanski
ccd3302f99 Update alert.py 2017-02-26 21:09:29 -05:00
Hellowlol
a4abc0e223 fixup 2017-02-27 01:35:22 +01:00
Hellowlol
351fe3565d add websocket to requirements.txt
We just just install all the packages we need
2017-02-27 00:17:03 +01:00
Hellowlol
cbde4787cc Add stop playback. 2017-02-26 23:31:09 +01:00
Hellowlol
53fab6239a fix tests for download logs/dbs
fix clients. Clients now tries to get info from plex.tv resources in the
port is missing.
add quote_plus to compat
2017-02-26 22:47:40 +01:00
Hellowlol
baeedcebbf add download log/db. 2017-02-26 21:01:54 +01:00
Michael Shepanski
d41bf0fb89 Add support to recursivly navigate photoalbums 2017-02-26 00:17:41 -05:00
Michael Shepanski
cbb999a0f5 Make flake8 happy 2017-02-25 10:50:54 -05:00
Michael Shepanski
4c83961cb4 Ability to delete device 2017-02-25 02:37:30 -05:00
Michael Shepanski
32a69db63e Support webhooks 2017-02-25 01:56:12 -05:00
Michael Shepanski
0b3ccc4c02 Add back noqa statments 2017-02-25 00:46:24 -05:00
Michael Shepanski
e66cc0a9c0 I was never happy with notifier being the name of the event listener. AlertListener is more boring, but also more clear what its doing. 2017-02-24 23:50:58 -05:00
Michael Shepanski
b35b265776 Better formatting for list settings 2017-02-24 23:14:52 -05:00
Michael Shepanski
07b3abc4c8 Document Settings; Cleanup style a bit 2017-02-24 11:18:54 -05:00
Michael Shepanski
8bb80a4222 Make flake8 happy 2017-02-23 02:08:04 -05:00
Michael Shepanski
a9416c0708 plex.settings.__getattr__ should return the value (not the object) 2017-02-23 01:55:22 -05:00
Michael Shepanski
91a8ab4563 Checkpoint: Settings functionality works; Needs documentation 2017-02-23 01:33:30 -05:00
Michael Shepanski
08f1e4b83d Fix pulling server baseurl,token from config; Add option to auto connect to client from config options 2017-02-22 01:22:10 -05:00
Michael Shepanski
cd1a05d770 Make flake8 happy 2017-02-20 00:37:00 -05:00
Michael Shepanski
4b35b03d8a Function name in camelCase ot match rest of code 2017-02-19 23:04:27 -05:00
Michael Shepanski
e48a66e00c Merge pull request #122 from Hellowlol/add_indexes
Add indexes. Closes https://github.com/pkkid/python-plexapi/issues/121
2017-02-19 22:57:06 -05:00
Michael Shepanski
049ef1235b Keep import style same as other files. 2017-02-19 22:53:26 -05:00
Michael Shepanski
228f049190 Pluralize function name; Its more clear more than one thing is being deleted 2017-02-19 22:51:17 -05:00
Michael Shepanski
601471c304 Merge branch '3.0.0' into pkkid/opt 2017-02-19 22:36:53 -05:00
Michael Shepanski
4b1a564409 All config options can be set with environment variables; Update all os.environ calls to use CONFIG.get; Finish documenting configuration options. 2017-02-19 22:18:23 -05:00
Hellowlol
73109d0e9e add deleteMediaPreview 2017-02-18 22:12:43 +01:00
Hellowlol
7d5aca805f fixup if indexes is saved as something else. 2017-02-18 21:56:40 +01:00
Hellowlol
c7c04d2a42 Add indexes. Closes https://github.com/pkkid/python-plexapi/issues/121 2017-02-18 01:51:06 +01:00
Michael Shepanski
a42bca2a6a Convert clean value to str 2017-02-15 00:43:48 -05:00
Michael Shepanski
e93829f881 Allow passing a playqueue to client.playMedia(); Default all mtype arguments to video. 2017-02-15 00:37:02 -05:00
Michael Shepanski
12406082ec Choose Closest Thumbnail for Audio Tracks #102 2017-02-15 00:13:22 -05:00
Michael Shepanski
85ea65b8a4 Cleanup doc strings 2017-02-14 23:29:22 -05:00
Michael Shepanski
6b933c3aaa Merge pull request #119 from Hellowlol/plq
add support to shuffle to createplayqueue and playlist.playqueue
2017-02-14 23:27:23 -05:00
Michael Shepanski
db9c8f42f7 Cleanup docstrings 2017-02-14 23:22:57 -05:00
Michael Shepanski
e74c79d344 Merge branch '3.0.0' into fixds 2017-02-14 23:16:58 -05:00
Hellowlol
9dc7c30e5f refresh now correctly redownload all metadata from the interwebz
update scans the library for new media files.
2017-02-14 23:36:21 +01:00
Hellowlol
5e18776ee2 add support to shuffle to createplayqueue and playlist.playqueue
See the tests for examples.
2017-02-14 22:12:56 +01:00
Michael Shepanski
de69ace19f Go over documentation a bit more; This will never end. 2017-02-13 23:32:27 -05:00
Michael Shepanski
b36a6776a5 Add build documentation test 2017-02-13 17:44:28 -05:00
Michael Shepanski
eb69d8faed Try building docs again 2017-02-13 15:00:53 -05:00
Michael Shepanski
fc1c10e554 Finish documenting video 2017-02-13 14:38:40 -05:00
Michael Shepanski
1815e67804 Remove unneeded util functions 2017-02-13 01:48:04 -05:00
Michael Shepanski
c0958a0edc only auto-connect to clients is baseurl and token passed 2017-02-13 01:37:23 -05:00
Michael Shepanski
44677e59a6 Merge dev 2017-02-12 22:38:56 -05:00
Michael Shepanski
9052cf7be2 Remove findLocations util function; All locations plural; Fix tests 2017-02-12 22:33:38 -05:00
Michael Shepanski
4b8f82291b Remove findLocations util function 2017-02-12 22:15:47 -05:00
Michael Shepanski
9b791b95e7 Add TAG constant to PlexObjects; Better method to save and build PLEXOBJECTS; All objects in media.py are now registered and can be looked up; Remove __len__ on Library class (it was causing URL to load twice). 2017-02-12 21:55:55 -05:00
Michael Shepanski
a692fbcd6f Merge branch '3.0.0' into add_delete 2017-02-11 11:46:49 -05:00
Hellowlol
54faa30d2d fix my fix of my bug... comment out server updatedat. 2017-02-11 11:09:35 +01:00
Hellowlol
ba9e7c6fe4 fix my bug. 2017-02-11 10:58:20 +01:00
Michael Shepanski
3783f3c61b Add missing requirement for dev. Document that you need websocket-client installed in order to use PlexNotifier 2017-02-10 23:26:09 -05:00
Michael Shepanski
6b1ae844c5 Add PlexNotifier class; Ability to monitor plex notifications (current scan progress, transcode session updates, etc) 2017-02-10 23:08:36 -05:00
Hellowlol
b37e7fefeb Fix test_video.py::test_video_Show_section
remove untrue comment
2017-02-11 00:32:51 +01:00
Hellowlol
b995deab05 forgot a pragma 2017-02-11 00:16:34 +01:00
Hellowlol
6be7fa8a29 Add delete
Supports media elements and librarys
2017-02-11 00:16:23 +01:00
Michael Shepanski
454a858b7d Remove dev logging 2017-02-09 16:45:15 -05:00
Michael Shepanski
ebf18ba020 Update fetchItem to search all subitems as well 2017-02-09 16:29:23 -05:00
Michael Shepanski
08e61960e7 Move common methods to PlexPartialObject; More documentation 2017-02-09 15:01:23 -05:00
Michael Shepanski
8304842daa Fix typos 2017-02-09 01:59:14 -05:00
Michael Shepanski
6fa7c12c48 Implement fetchItem filters; All tests passing? 2017-02-09 01:54:38 -05:00
Michael Shepanski
5443711b90 Make _query and _url public methods since we use it as such 2017-02-08 23:29:17 -05:00
Michael Shepanski
83a8c5733e Rename _root back to _server but keep it private 2017-02-08 23:13:54 -05:00
Michael Shepanski
76c0cb55a1 Rename variable to kwargs 2017-02-08 23:08:25 -05:00
Michael Shepanski
f676d4cbbf Most tests passing; Need to add better filters on fetchItems for watched / unwatched 2017-02-08 02:00:43 -05:00
Michael Shepanski
e3abfeeb0f Audio tests passing 2017-02-08 00:36:22 -05:00
Michael Shepanski
82bd1753e2 Changes from code review 2017-02-07 23:26:58 -05:00
Michael Shepanski
745feabff9 Fix to use _fetchItem instead of _findItem 2017-02-07 02:21:12 -05:00
Michael Shepanski
bc421490db myplex tests passing 2017-02-07 01:58:29 -05:00
Michael Shepanski
8212ca9c46 Much more stability from yesterday; Easier to use fetchItem funtions; Common __repr__ for all plexobjects; Fix all uses if listItems 2017-02-07 01:20:49 -05:00
Michael Shepanski
4624512356 A few more updates to get plexattrs.py fully running 2017-02-06 01:28:58 -05:00
Michael Shepanski
6a35f50a43 CHECKPOINT: Lots going on; Added new base class PlexObject that everything inherits from, this ensures all constructors are similar; Lots of work on new tool plexattrs that parses a full Plex library to find differences in attributes plexapi implements and what the Plex XML API offers up; Tests will most definetly be broken at this point, but I wanted to save my work. 2017-02-05 23:52:10 -05:00
Michael Shepanski
fc28f7c1e6 Move Playable and PlexPartialObject to new plexapi.base module 2017-02-04 14:46:51 -05:00
Michael Shepanski
cf99256450 Fix tests 2017-02-04 14:18:10 -05:00
Michael Shepanski
7c766337b6 Remove all references to NA 2017-02-04 12:43:50 -05:00
Michael Shepanski
065a753d77 Merge branch 'master' of github.com:mjs7231/python-plexapi 2017-02-04 03:09:04 -05:00
Michael Shepanski
6e893d8fbf Started work on script to analyze Plex attributes with what we defined in plexapi so we can easily find mismatches 2017-02-04 03:08:47 -05:00
Michael Shepanski
a2cdc97453 Fix tests; comment out a few that were breaking because of timezone aware datetimes; Perhaps converting datetimes to timestamps then comparing the int values will be more reliable. 2017-02-03 11:39:46 -05:00
Michael Shepanski
19d25537a8 Revert hubsearch merge changes to cast() function 2017-02-03 10:25:11 -05:00
Michael Shepanski
0a66414fcd Add ability to dig deeper in the MediaTag search results. For example: Genre.items() will return the list of items for that tag if the key attribute is available 2017-02-03 02:15:41 -05:00
Michael Shepanski
0e7a158836 Cleanup HubSearch code a bit (contribution is awesome); Add a whole bunch of new attributes to server.Server object; Finish documenting server.py 2017-02-03 01:29:19 -05:00
Michael Shepanski
f479b8453b Merge branch 'master' into hub 2017-02-02 22:23:46 -05:00
Michael Shepanski
2a680a18d5 Rollback last pull request 2017-02-02 09:09:34 -05:00
Michael Shepanski
a32f447d13 Merge pull request #94 from mjs7231/Hellowlol-patch-1
fixup after ratingkey was changed to int.
2017-02-02 01:48:38 -05:00
Michael Shepanski
16a55316f1 Bug #74 - getting error on clients 2017-02-02 01:42:12 -05:00
Michael Shepanski
0aac1156a1 Add offset as optional playMedia() argument; Document it; Clenaup old tests as its the only way to test client actions right now 2017-02-02 01:32:38 -05:00
Michael Shepanski
b5e29fdb28 Add ability to put username, password, baseurl, token into config.ini (make sure you set proper permission on that file); Fix first example in README 2017-02-02 00:49:12 -05:00
Michael Shepanski
cec0ab07e8 Cleanup formatting 2017-02-01 22:53:05 -05:00
Hellowlol
e2efc5f3f2 remove backup files, add .orgin to gitignore
- delete .travis....
2017-02-01 22:41:41 +01:00
Hellowlol
d19d602455 revert NA to _NA so its still compat with the tests.
- this allows for casting str and check for __NA__ in addition to is
instance.
- some indentation fixes
2017-02-01 22:32:00 +01:00
Hellowlol
e06f6250a3 mroe cov 2017-02-01 20:55:08 +01:00
Hellowlol
bbcefe2d53 add client base. 2017-02-01 20:49:13 +01:00
Hellowlol
5562108472 remove 2017-02-01 20:49:12 +01:00
Hellowlol
a72dd6256a more cov 2017-02-01 20:49:11 +01:00
Hellowlol
19506e272d more cov 2017-02-01 20:46:53 +01:00
Hellowlol
5ddf9a0ace oh loard 2017-02-01 20:45:54 +01:00
Hellowlol
7e9bd51d55 testing testing, 1, 2, 3. 2017-02-01 20:41:20 +01:00
Michael Shepanski
5f9c230dce Add missing swigglies 2017-01-30 23:48:21 -05:00
Michael Shepanski
04251d3805 Finish documenting Photo; Monkey-patch sphinx to not auto-link to unknown types; Remove links to ElementTree (not our code) 2017-01-30 23:44:03 -05:00
Michael Shepanski
e873d857c9 Only replace on string_types 2017-01-26 01:44:55 -05:00
Michael Shepanski
d357b3e628 Hide secrets (X-PLEX-TOKEN) in logging by default; Set the config value logging.show_secrets = true in your config file to re-enable this 2017-01-26 01:33:01 -05:00
Michael Shepanski
6e60d1107d Optional environment variable PLEX_CONFIG_PATH if you want something other than the default 2017-01-26 00:43:19 -05:00
Michael Shepanski
355f4686c9 Finish documenting utils.py 2017-01-26 00:25:13 -05:00
Michael Shepanski
b61d1888b4 Finished documenting library.py 2017-01-25 23:21:13 -05:00
Michael Shepanski
706b974b05 Finished updating socs for client, config, exceptions 2017-01-23 00:15:51 -05:00
Michael Shepanski
db18f2640f Remove watched filters for audio; It doesn't make sense 2017-01-22 01:39:47 -05:00
Michael Shepanski
5ba1c4df8e Finish updating audio.py for Sphinx docs 2017-01-22 01:37:39 -05:00
Michael Shepanski
07e9bbd1ab Finished updating myplex documentation for Sphinx 2017-01-22 00:19:52 -05:00
Michael Shepanski
df59247741 Merge branch 'master' of github.com:mjs7231/python-plexapi 2017-01-21 23:07:35 -05:00
Michael Shepanski
c684552792 Started work on better documentation 2017-01-21 23:06:55 -05:00
Hellowlol
7472fd7238 See https://github.com/mjs7231/python-plexapi/pull/93 2017-01-17 08:55:48 +01:00
Hellowlol
114cb1dc89 fixup after ratingkey was changed to int. 2017-01-17 08:48:57 +01:00
Michael Shepanski
0c3ad6b6ac Sphinx docs are on their way. 2017-01-10 01:54:19 -05:00
Michael Shepanski
8eb8d4c709 Start working on Sphinx Docs 2017-01-09 01:35:29 -05:00
Michael Shepanski
35ea5ae18a Much cleaner test layout; Move test config to config.ini 2017-01-08 23:40:39 -05:00
Hellowlol
169f208e87 Fix review comments,
prettier repr for season, and episode
2017-01-05 22:58:43 +01:00
Hellowlol
995e98f785 Suggestion for episode 2017-01-04 21:41:09 +01:00
Hellowlol
1abb1456f8 Inital hub. 2017-01-04 00:00:28 +01:00
Hellowlol
e94c92bada fix my mess. 2017-01-02 23:38:19 +01:00
Hellowlol
04d2a4b6d7 Merge pull request #88 from Hellowlol/omg
Fix all, fix thumb.
2017-01-02 22:53:01 +01:00
Hellowlol
9826cc1a4b Merge pull request #87 from WyseNynja/master
cast viewCount to int
2017-01-02 22:31:16 +01:00
Hellowlol
3aa4208d8b fix rebase 2017-01-02 22:19:07 +01:00
Hellowlol
1075f65bb4 Moredocs (#84)
* Docs and speedups.
2017-01-02 22:06:40 +01:00
Bryan Stitt
b864cd3b45 case viewCount to int 2016-12-31 15:16:31 -08:00
Hellowlol
7c04305b29 Fix bug after ratingKey was made int. 2016-12-21 14:17:28 +01:00
Hellowlol
1bcc650c8e client ffs. 2016-12-17 02:09:01 +01:00
Hellowlol
3839b9f2d8 autopep 2016-12-17 00:51:16 +01:00
Hellowlol
740e7a5b9b f 2016-12-17 00:38:08 +01:00
Hellowlol
8d05808236 f 2016-12-16 01:22:18 +01:00
Hellowlol
21f376051c s 2016-12-16 01:17:02 +01:00
Hellowlol
f0bf9117cc more 2016-12-16 00:55:48 +01:00
Hellowlol
42003d61bd fix a small bug, start on docs strings 2016-12-16 00:06:12 +01:00
Michael Shepanski
ff62e38910 Merge pull request #67 from logaritmisk/add-fields
Added Field tag to Video.
2016-11-03 23:21:37 -04:00
Chris Hamilton
bc44161f86 Adding PlexApiException as a base exception for all other python-plexapi exceptions. 2016-10-19 11:39:18 -04:00
logaritmisk
1cb35da6f1 Added Field tag to video. 2016-10-02 22:05:37 +02:00
Michael Shepanski
db089156ac Up version for pip 2016-07-07 23:39:48 -04:00
Michael Shepanski
98671d7e79 Add missing section() function to Photo object; Work on showing photos on client (not working yet) 2016-07-07 22:41:11 -04:00
Michael Shepanski
322ac63130 Minor updates for release to pip 2016-05-23 22:13:26 -04:00
Michael Shepanski
3d28b5309e Recently added is missing from LibrarySection #58 2016-05-23 21:41:02 -04:00
Michael Shepanski
0c8587ceac Option to include paused content when requesting is media is playing. 2016-05-23 19:33:56 -04:00
Michael Shepanski
36b5d12a19 Add back missing index value from Show,Season,Episode; Make season numbers a bit easier to fetch 2016-05-19 23:42:06 -04:00
Michael Shepanski
5701af7ed4 Ability to play playlists 2016-04-13 22:36:12 -04:00
Michael Shepanski
ba9eab0229 Minor bugfixes 2016-04-12 23:52:47 -04:00
Michael Shepanski
e5fc43a85f Fix thing I broke 2016-04-12 23:26:04 -04:00
Michael Shepanski
c75db1df10 Fix broken utils.searchType() 2016-04-12 22:55:45 -04:00
Michael Shepanski
1a679411dc Ability to list all albums; Fix setting object values when not found (NA) and we know its the full object 2016-04-12 22:47:46 -04:00
Michael Shepanski
748fc68406 Cleanup playlist support; Fix UUID on URLs; Better method to store listTypes; Cache section IDs in library 2016-04-11 22:43:21 -04:00
Michael Shepanski
3138ad1087 Added playlist support 2016-04-10 23:49:23 -04:00
Michael Shepanski
09a7ae80db Basic support for photos complete 2016-04-09 23:59:47 -04:00
Michael Shepanski
81e22147c0 Get examples working again; Add new examples most_streamed_titles and most_active_users 2016-04-07 22:48:45 -04:00
Michael Shepanski
80529a21c7 Rename MyPlexUser to MyPlexAccount; Add support for real MyPlexUsers; Add api for history; New tests for sessions() and history() 2016-04-07 01:39:04 -04:00
Michael Shepanski
610bf16ce3 Client control via proxy working; Re-enable control via proxy tests 2016-04-05 23:32:49 -04:00
Michael Shepanski
a30f9a73a5 Add comments 2016-04-05 22:30:18 -04:00
Michael Shepanski
50ac2f55e5 Create Playable object to put function specific to media that is playable like getStreamURL etc.. 2016-04-03 23:55:29 -04:00
Michael Shepanski
e81f2506e9 Move _find function from PlexPartialObject to generic utility functions 2016-04-03 23:17:29 -04:00
Michael Shepanski
3889c49b30 Add new missing items to MyPlexAccount 2016-04-03 22:46:25 -04:00
Michael Shepanski
84a6999ed7 Ability to directly create a PlexClient object (without needing a PlexServer object); Cleaned up MyPlex code; Removed duplicated Client navigation code from myplex (everything uses PlexClient now) 2016-04-02 02:19:32 -04:00
Michael Shepanski
7bb700d395 New test for client.timeline(); Fix bug in missing proper headers for timeline 2016-03-31 23:39:09 -04:00
Michael Shepanski
7bce1c4b32 Add note to library.search() that its basically not tested. 2016-03-31 18:39:08 -04:00
Michael Shepanski
d63339bd24 Cleanup search a bit; Get existing tests passing and add a few new search tests 2016-03-31 18:36:54 -04:00
Michael Shepanski
b10faf8560 Checkpoint: New implementation for search 2016-03-31 16:52:48 -04:00
Michael Shepanski
03469a7f55 Cleanup playback commands; Remove proxy tests, it needs a bit more expirimentation 2016-03-24 22:36:25 -04:00
Michael Shepanski
b277facf10 Revisit client code; Add more testing around clients; Still cant get playback working through server proxy, but it works directly 2016-03-24 02:20:08 -04:00
Michael Shepanski
fbaa89933e I missed deleting an old occurance of getStreamURL 2016-03-22 23:42:04 -04:00
Michael Shepanski
bcf01fdcdf Move getStreamURL to PlexPartialObject; Remove duplicated code; Add getStreamURL tests (doesnt actualy test the stream works tho) 2016-03-22 23:38:06 -04:00
Michael Shepanski
a0cfaafb68 Initial cleanup of playlist support; getStreamURL not working; Needs tests 2016-03-21 23:52:58 -04:00
Michael Shepanski
5763db2c4d Merge dev 2016-03-21 23:19:52 -04:00
Michael Shepanski
a999df8e94 Audio support complete; Added more audio tests; renamed is_watched to isWatched 2016-03-21 23:12:12 -04:00
Michael Shepanski
d4e8bdba70 Checkpoint: Adding Audio support; Cleanup attribute definitions to only include what the Plex objects actually include. 2016-03-21 00:26:02 -04:00
Michael Shepanski
bd07a16d6e Cleaner name for _NA 2016-03-17 01:15:58 -04:00
Michael Shepanski
2e2ea93982 Cleanup imports; force registration of audio/video libtypes 2016-03-17 01:14:31 -04:00
Michael Shepanski
276ba26b77 Create registry of library items we may see in xml; Cleanup how we handle build_item and list_items 2016-03-17 00:51:20 -04:00
Michael Shepanski
cc58b87c9b Default to always use a session 2016-03-15 23:53:04 -04:00
Michael Shepanski
c76c69cb93 Convenience function to reset_base_headers is overriding X_PLEX headers 2016-03-15 23:47:13 -04:00
Michael Shepanski
3fe228bbb9 Checkpoint: Work on client code a bit 2016-03-15 22:56:06 -04:00
Michael Shepanski
fd83cbab8a Cleanup Audio/Video search at the server & library level. Start testing audio a bit more 2016-03-15 14:36:59 -04:00
Michael Shepanski
8c82651ce1 Level for a media object might not always be an integer 2016-03-14 22:28:21 -04:00
Michael Shepanski
abb3fd901d Merge pull request #34 from bramwalet/patch-1
Update video.py: self.key already contains slash
2016-03-14 22:20:18 -04:00
Michael Shepanski
4399bc6190 Minor cleanup after merging pull request 2016-03-14 22:20:02 -04:00
Michael Shepanski
443d1e76d8 Merge pull request #41 from havardgulldahl/master
Add support for Plex Audio
2016-03-14 22:07:05 -04:00
Michael Shepanski
63892f092f Merge pull request #40 from abibouba/master
Add original title
2016-03-14 22:04:18 -04:00
Michael Shepanski
649dcf2cfd Implement __eq__ for NA; Test apostrophe in titles; Test fetching detailed metadata (using NA) 2016-03-14 00:19:48 -04:00
Håvard Gulldahl
1299c1811f Add support for Plex Playlists to server.py. Introduces the method PlexServer.playlists() 2016-02-03 19:17:09 +01:00
Håvard Gulldahl
42364b09b9 add list_items() method to list playlists and return Playlist objects 2016-02-03 19:16:39 +01:00
Håvard Gulldahl
6a99e1ef49 Add initial support for Plex Playlists 2016-02-03 19:07:53 +01:00
Håvard Gulldahl
b51d7548b5 Read .parentTitle element for class Track 2016-01-31 02:04:51 +01:00
Håvard Gulldahl
b6569dc6a3 Add preliminary session support 2016-01-30 00:13:57 +01:00
Håvard Gulldahl
382a4f45aa Add year attribute to albums 2016-01-30 00:02:00 +01:00
Håvard Gulldahl
ec8c20d0fa We need this fix to make sure .reload() doesn't pull the wrong objects from the server 2016-01-29 22:51:01 +01:00
Håvard Gulldahl
0229226448 add .searchAudio method to PlexServer, to specifically search for audio 2016-01-28 13:09:36 +01:00
Håvard Gulldahl
e437e857cd add titleSort for Artist 2016-01-28 13:08:57 +01:00
Håvard Gulldahl
36b7252742 Get metadata like .media and .genres 2016-01-26 19:10:35 +01:00
sebastientrosset
72ce96f987 Add original title 2016-01-19 21:38:08 +01:00
Håvard Gulldahl
23874f4555 Don't bother with extra metadata just yet 2016-01-19 14:28:35 +01:00
Håvard Gulldahl
f6a1f37a9a Be media agnostic in server.search()
In the long run we should probably merge the audio and video code paths
2016-01-19 11:59:00 +01:00
Håvard Gulldahl
668d5f67f1 Flesh out a .search() method for the MusicSection
This is more of a hack than a long run solution. We really should merge
the video and audio search code paths.
2016-01-19 11:58:10 +01:00
Håvard Gulldahl
9896965efa Remember to import new audio class in libary.py 2016-01-19 11:57:20 +01:00
Håvard Gulldahl
3ca226e897 Fix build_item() to deal with audio 2016-01-19 11:56:46 +01:00
Håvard Gulldahl
0b9509da27 Fix url endpoint of .getSTreamUrl() 2016-01-19 11:56:34 +01:00
Håvard Gulldahl
1c1592ec29 Add proper metadata for Audio, Artist and Track 2016-01-19 11:56:16 +01:00
Håvard Gulldahl
a50c9457af Rename .search() to .searchVideo, but keep the API for now
getting ready to add code to search both video and audio, but keep old
functionality intact for now
2016-01-19 10:53:10 +01:00
Håvard Gulldahl
9ca97c5fac Add searchAudio() method to Library
It will only search for audio content (Track, Album, Artist)
2016-01-19 10:50:31 +01:00
Håvard Gulldahl
1e28eebbf6 Add MusicSection,
with .search(), .searchAlbums() and .searchTracks() methods
2016-01-19 10:41:12 +01:00
Håvard Gulldahl
bbc6a036fb A naive copy of video.py, adding Album, Artist and Track classes 2016-01-19 10:31:45 +01:00
Adam Charrett
98ce3f0149 Fix missing check for None in __eq__ 2015-12-05 22:16:48 +00:00
bramwalet
bd47ea157d Update video.py: self.key already contains slash
self.key already contains a leading slash therefore this call to the Plex server will fail with 404 not found.
When the slash from the query location is removed, the call will succeed.
2015-11-22 12:55:50 +01:00
Michael Shepanski
e34f8cdbd4 Minor cleanup 2015-11-04 22:57:08 -05:00
Michael Shepanski
28081a23ba Merge pull request #27 from adrienbrault/devices
Get devices and implement play/navigation control
2015-11-04 22:54:44 -05:00
Michael Shepanski
430fb25658 Add is_watched property; Fix python3 bug in examples 2015-11-04 22:49:09 -05:00
Michael Shepanski
1c27b9afb6 Merge branch 'master' of https://github.com/mjs7231/python-plexapi 2015-11-04 21:10:13 -05:00
Michael Shepanski
4e3f178dcb Add transcodeSession information to playing Video 2015-11-04 21:10:10 -05:00
Steven Smith
471a51d265 Plex needs the refresh to be a PUT request
Otherwise you get `plexapi.exceptions.BadRequest: (405) method_not_allowed`
2015-10-29 02:16:00 +08:00
Michael Shepanski
0fc4202e75 Up version number 2015-10-02 09:21:39 -04:00
Michael Shepanski
9dd520d032 Fix merge conflict 2015-10-02 09:18:44 -04:00
Adrien Brault
5e77480611 Get devices and implement play/navigation control 2015-09-29 21:34:04 +02:00
Jonathan Jordan
8b297109e2 Added protocol parameter to getStreamUrl for iOS/Quicktime support 2015-09-24 23:02:42 -04:00
Toomas Uudisaru
a03d67cfb4 Python3 fixes / urllib, printing, dict access
Python 3 fixes (compatible with Python 2):
- use urllib.parse module for quote() and urlencode() instead of urllib
- printing using parenthesis
- dict access: items() instead of iteritems(), keys() converted to list
- filter(): convert results to list
2015-09-05 17:09:15 +03:00
Michael Shepanski
8c0abf0b36 Update version 2015-08-30 21:00:44 -04:00
Michael Shepanski
b2c9a29d1e Update timeline() to use server.query to include proper headers and timeout 2015-08-30 20:59:25 -04:00
Michael Shepanski
457046f174 Convert filter back to list to make Python3 happy 2015-06-17 22:39:57 -04:00
Michael Shepanski
ad4be508a1 Bump minor revision number 2015-06-15 20:54:31 -04:00
Michael Shepanski
6b21d856d3 Fix for issue #19: Connecting to main acount from a remote location failed 2015-06-15 19:55:12 -04:00
Michael Shepanski
dad550fc5f Lets call this 1.0.0 2015-06-14 22:45:51 -04:00
Michael Shepanski
7daa127603 All example and tests working; A few minor changes in the api provided by plex required some rejiggering 2015-06-14 22:45:22 -04:00
Michael Shepanski
f2f8306a65 Test SSL and non-SSL connections when connecting to server 2015-06-09 00:17:55 -04:00
Michael Shepanski
bfec0496ef Fix / in playQueues; Update iphone-name 2015-06-08 22:19:20 -04:00
Michael Shepanski
1055917750 Merge dev 2015-06-08 12:43:15 -04:00
Michael Shepanski
433e0a18b4 Add support for SSL 2015-06-08 12:41:47 -04:00
Michael Shepanski
05ef43bddc Raise exception if trying to get streamURL for Show or Season 2015-06-04 10:55:30 -04:00
Michael Shepanski
69e0abd50c Fix Bug-13 - getStreamUrl produces a malformed URL; Cleanup logging if logfile is not defined 2015-06-04 10:43:50 -04:00
Michael Shepanski
527b0ee323 Add Video.getStreamURL() 2015-06-04 00:00:37 -04:00
Michael Shepanski
739feffc43 Get list of watched/unwatched episodes from Season or Show 2015-06-01 22:55:20 -04:00
Michael Shepanski
43e99e94ef Read all headers, logging, and core settings from config file; Add Show.refresh() method 2015-06-01 22:28:50 -04:00
Michael Shepanski
c5eee64030 Read all headers, logging, and core settings from config file; Add Show.refresh() method 2015-06-01 22:27:43 -04:00
Michael Shepanski
eb1e508638 Update version and homepage. 2015-03-09 00:28:32 -04:00
Michael Shepanski
edb29fa0d7 Include plex token on all urls 2015-02-23 22:42:29 -05:00
Michael Shepanski
0489efdb1f Search by hostname or ip as well 2015-02-20 15:06:41 -05:00
Michael Shepanski
699843f150 Updates to work with Python3 2015-02-17 15:35:17 -05:00
gz
b6e063c702 Fixed a typo caused by a naming convention refactor 2014-12-30 22:43:40 +02:00
Michael Shepanski
352696147e Move from Bitbucket 2014-12-28 22:21:58 -05:00