Commit graph

4368 commits

Author SHA1 Message Date
croneter
6f553e5c94 Fix PKC background sync not working in some cases 2020-02-15 18:40:14 +01:00
croneter
51d1538f95 Rewire the ProcessingQueue to ensure that we can exhaust it completely and don't get stuck 2020-02-15 17:47:17 +01:00
croneter
73ffb706f8 Make sure we're receiving valid item from the processing queue in case we should be aborting sync 2020-02-15 17:47:17 +01:00
croneter
a4a0b075bf Increase logging for the number of items we actually process 2020-02-15 17:47:17 +01:00
croneter
9a0ce533ee Rename method 2020-02-15 17:47:17 +01:00
croneter
ddd356deda Refactor code 2020-02-15 17:47:16 +01:00
croneter
b69070275f Make sure OrdererQueue returns the correct queue size 2020-02-15 17:47:16 +01:00
croneter
d116bbdfe9 Rename method 2020-02-14 13:40:46 +01:00
croneter
25172c2f57 Other Kodi add-ons can now search for Plex items using plugin://plugin.video.plexkodiconnect?mode=search&query=<your search string here> 2020-02-02 14:09:10 +01:00
croneter
23ac39a860 Fix DirectPaths when a video's folder name is identical to a video's filename (you will need to manually reset the Kodi database) 2020-01-31 21:12:48 +01:00
croneter
4a95b1007b
Merge pull request #1090 from croneter/improve-threader
Improve thread pool management to render PKC snappier
2019-12-20 14:18:23 +01:00
croneter
0255551ea9 Don't spin up 2 separate threads but use the thread pool 2019-12-20 14:17:49 +01:00
croneter
fe857cb609 Improve thread pool management to render PKC snappier 2019-12-20 14:17:49 +01:00
croneter
a1e6cdcf29 Attempt to fix broken pipe error 2019-12-15 07:36:50 +01:00
croneter
e8d601d7d7
Merge pull request #1086 from croneter/fix-thread
Fix PKC becoming unresponsive e.g. when switching the PMS
2019-12-13 16:55:08 +01:00
croneter
fd80bc9cf3
Merge pull request #1085 from croneter/optimize-db
Optimize the new sync process and fix some bugs that were introduced
2019-12-13 16:54:48 +01:00
croneter
b611a66ff5 Fix sync getting stuck 2019-12-13 14:00:46 +01:00
croneter
58a86d34f1 Clarify class description 2019-12-13 14:00:46 +01:00
croneter
6510d5e399 Fix display of item numbers during playstate sync 2019-12-13 14:00:46 +01:00
croneter
b55b22efb0 Clarify variables 2019-12-13 14:00:46 +01:00
croneter
136af95351 Speed up and simplify sync of playstates 2019-12-13 14:00:40 +01:00
croneter
654748218e Get section iterators in a dedicated thread to gain speed 2019-12-13 14:00:40 +01:00
croneter
0d537f108e Lower timeout for a DB connection from 30s to 10s 2019-12-13 14:00:40 +01:00
croneter
a715b3a473 raise exception instead of returning None if PKC needs to exit and we're trying to connect to a DB 2019-12-13 14:00:40 +01:00
croneter
b4e132af85 Optimize code 2019-12-13 14:00:40 +01:00
croneter
6d39adbd8c Use sqlite isolation_level=None in order to use autocommit mode and thus avoid sqlite auto-committing 2019-12-13 14:00:40 +01:00
croneter
70b7a44514 Avoid duplicate code 2019-12-13 14:00:39 +01:00
croneter
3000bfcd7d Always use sqlite WAL mode (did not switch back to normal journal mode automatically anyway) 2019-12-13 14:00:39 +01:00
croneter
9182e0ad76 Fix PKC becoming unresponsive e.g. when switching the PMS 2019-12-13 07:38:52 +01:00
croneter
ed3301a523 Fix PKC not starting up on iOS 2019-12-10 08:15:10 +01:00
croneter
baa33f19b1
Merge pull request #1082 from croneter/fix-operationalerror
Fix OperationalError when starting with a fresh PKC installation
2019-12-08 16:48:27 +01:00
croneter
59424b2a7c
Merge pull request #1081 from croneter/fix-user
Fix AttributeError if user enters an invalid pin code
2019-12-08 16:48:12 +01:00
croneter
80181873d1 Fix OperationalError when starting with a fresh PKC installation 2019-12-08 16:41:43 +01:00
croneter
f9755cc39c Fix AttributeError if user enters an invalid pin code 2019-12-08 16:33:08 +01:00
croneter
ab998f7941 Fix IndexError 2019-12-08 16:24:14 +01:00
croneter
4ebe11fcc4
Merge pull request #1079 from croneter/wal
Don't use WAL mode for sqlite connections, it is not making any difference
2019-12-08 10:32:03 +01:00
croneter
c3749c0bd2
Merge pull request #1078 from croneter/optimize-db
Optimize adding values to Kodi databases by not using sqlite COALESCE command
2019-12-08 10:31:47 +01:00
croneter
9080ca89b9 Don't use WAL mode for sqlite connections, it is not making any difference 2019-12-08 10:23:50 +01:00
croneter
e257e5426e Optimize adding values to Kodi databases by not using sqlite COALESCE command 2019-12-08 10:23:01 +01:00
croneter
2744b9da7e Copy entire plex.db to avoid db-locks entirely 2019-12-08 10:09:57 +01:00
croneter
a87dfa0a7a Don't use a dedicated thread to get section generators 2019-12-08 10:09:57 +01:00
croneter
8f86f43a93 Rewire library sync to speed it up and fix sync getting stuck in rare cases 2019-12-08 10:09:56 +01:00
croneter
f4ea051c81
Merge pull request #1073 from croneter/fix-userswitch
Optimize threads by using events instead of a polling mechanism. Fixes PKC becoming unresponsive, e.g. when switching users
2019-11-30 16:27:06 +01:00
croneter
343fce2102
Merge pull request #1072 from croneter/fix-bool
Make sure bool is returned instead of an int
2019-11-30 16:26:50 +01:00
croneter
aad68340cf
Merge pull request #1069 from croneter/fix-operationalerror
Fix OperationalError when resetting PKC
2019-11-30 16:26:36 +01:00
croneter
c85e1e2bd0 Optimize threads by using events instead of a polling mechanism. Fixes PKC become unresponsive, e.g. when switching users 2019-11-30 13:48:51 +01:00
croneter
e01e50a650 Make sure bool is returned instead of an int 2019-11-30 13:46:08 +01:00
croneter
56324b1e88 Fix OperationalError when resetting PKC 2019-11-25 08:03:06 +01:00
croneter
bafd3545f4 Improve sync resiliance when certain items are not to be synced to Kodi 2019-11-24 14:58:39 +01:00
croneter
e52b67c3a9 Fix to correctly wipe Kodi databases 2019-11-15 13:38:41 +01:00
croneter
2446cdc41a
Merge pull request #1062 from croneter/faster-server-list
Check faster for available Plex Media Server to connect to
2019-11-14 17:36:47 +01:00
croneter
999743c6c1 Check faster for available Plex Media Server to connect to 2019-11-14 17:34:50 +01:00
croneter
5273e874e0
Merge pull request #1060 from croneter/fix-keyerror
Fix KeyError when using Plex search capabilities
2019-11-14 17:21:42 +01:00
croneter
aff0fd7a5f
Merge pull request #1059 from croneter/fix-regex
Fix a couple of issues with music when using direct paths: correctly escape music paths for Kodi regex matching
2019-11-14 17:21:13 +01:00
croneter
8e72033aef
Merge pull request #1058 from croneter/fix-locked-db
Fix database being locked in rare cases
2019-11-14 17:20:48 +01:00
croneter
24ec8dd8e4
Merge pull request #1057 from croneter/increase-batch
Increase batch size for library sync from 500 to 2000 to increase sync speed
2019-11-14 17:20:24 +01:00
croneter
1654c3175e
Merge pull request #1056 from croneter/optimize
Optimize some code
2019-11-14 17:20:06 +01:00
croneter
2359430260 Fix KeyError when using Plex search capabilities 2019-11-14 16:11:07 +01:00
croneter
e17d9bf1dd Fix a couple of issues with music when using direct paths: escape the path for Kodi regex matching 2019-11-14 15:44:29 +01:00
croneter
3b8f712289 Fix database being locked in rare cases 2019-11-14 14:39:07 +01:00
croneter
2fcbc1f9b7 Optimize code 2019-11-13 17:55:44 +01:00
croneter
7a8cec5968 Increase batch size for library sync from 500 to 2000 to increase sync speed 2019-11-13 17:53:46 +01:00
croneter
f67ff2f136 Fix recently added albums sort order (you will have to reset the Kodi database manually) 2019-11-13 17:49:16 +01:00
croneter
5dc7b96072
Merge pull request #1048 from croneter/fix-transcoding
Fix transcoding quality degenerating quickly while playing with a new setting to deactivate auto quality for transcoding (applicable e.g. for Chromecast)
2019-11-07 07:06:26 +01:00
croneter
9e930f09ca Fix transcoding quality degenerating quickly while playing with a new setting to deactivate auto quality for transcoding 2019-11-07 07:00:46 +01:00
croneter
4f59a1e2a9 Fix Kodi playback jumping to the beginning of a video that just started 2019-11-06 18:39:19 +01:00
croneter
07c8a1c67d
Merge pull request #1039 from croneter/fix-external-player
Fix resume when using an external player
2019-11-03 14:34:30 +01:00
croneter
b6d6482c4a Fix resume when using an external player 2019-11-03 14:32:51 +01:00
croneter
ab77ddbe8b Fix resume for Kodi on low powered devices, e.g. Raspberry Pi 2019-11-03 14:24:20 +01:00
croneter
a9b5ba4162 Get rid of some obsolete code for the ContextMonitor we dropped 2019-11-01 13:40:45 +01:00
croneter
38636b6943
Merge pull request #1034 from croneter/fix-filetable
Optimize clean-up of file table in the Kodi video database after stopping playback
2019-11-01 13:34:50 +01:00
croneter
14113d0ff7
Merge pull request #1033 from croneter/optimize
Get rid of some obsolete imports
2019-11-01 13:34:37 +01:00
croneter
ca1e0d7b3d
Merge pull request #1032 from croneter/optimize-code
Get rid of ContextMonitor and the dedicated Python thread - with new resume mechanics, this is not needed anymore
2019-11-01 13:34:19 +01:00
croneter
db80f2b69a Optimize clean-up of file table in the Kodi video database 2019-11-01 13:15:34 +01:00
croneter
8abbe74145 Get rid of some obsolete imports 2019-11-01 13:07:15 +01:00
croneter
5e3f3daf90 Get rid of ContextMonitor and the dedicated Python thread - with new resume mechanics, this is not needed anymore 2019-11-01 13:00:34 +01:00
croneter
da90e61ca8 Fix resume when starting playback via PMS or when force transcoding 2019-11-01 12:54:49 +01:00
croneter
e73c14bcf4 Fix PKC resuming instead of playing from the beginning 2019-10-31 20:09:31 +01:00
croneter
cdb8141adf
Merge pull request #1027 from croneter/language
Always use the current Kodi language when communicating with the PMS (restart Kodi when changing the language!)
2019-10-31 13:39:18 +01:00
croneter
1618d96699
Merge pull request #1026 from croneter/search
Support Plex search across all media and Plex Media Servers: Navigate to the PlexKodiConnect Add-on, then "Search"
2019-10-31 13:38:59 +01:00
croneter
8e8a42ad12
Merge pull request #1025 from croneter/fix-playlists
Fix PKC throwing error if m3u playlist contains resume information
2019-10-31 13:38:40 +01:00
croneter
ee5a71c5ce
Merge pull request #1024 from croneter/fix-crash
Fix Kodi crashing when casting from e.g. Plex Web or Plex for Windows
2019-10-31 13:38:23 +01:00
croneter
0a06a6ad78 Always use the current Kodi language when communicating with the PMS 2019-10-31 13:01:08 +01:00
croneter
845cfb44d5 Support Plex search across all media and Plex Media Servers 2019-10-31 12:51:21 +01:00
croneter
80d55a5388 Fix PKC throwing error if m3u playlist contains resume information 2019-10-31 07:47:34 +01:00
croneter
8830cf22db Fix Kodi crashing when casting from Plex Web 2019-10-30 17:53:40 +01:00
croneter
730ac203ad Remove hack to detect replaying of the last video - does not work anymore 2019-10-30 17:30:52 +01:00
croneter
9f2210a5e7 Rewire PKC resume mechanism 2019-10-30 17:30:52 +01:00
croneter
76e1b1c629 Fix resume when casting to PKC 2019-10-29 08:03:32 +01:00
croneter
ca52117c4f Fix resume not working in some cases 2019-10-25 14:09:05 +02:00
croneter
1fa1035a43 Delete temporary subtitles on playback stop 2019-10-05 17:00:39 +02:00
croneter
af23a4aabd
Merge pull request #1011 from croneter/fix-subtitle-naming
Improve subtitle naming
2019-10-05 16:58:41 +02:00
croneter
2506dbeb43
Merge pull request #1010 from croneter/fix-subtitles
Fix external subtitles not being available
2019-10-05 16:58:18 +02:00
croneter
a601311cd8
Merge pull request #1009 from croneter/fix-string
Fix a missleading string
2019-10-05 16:57:56 +02:00
croneter
8a3e580975
Merge pull request #1008 from croneter/fix-viewcount
Fix PKC increasing the Plex watch count by 2 instead of 1
2019-10-05 16:57:29 +02:00
croneter
8fc76386e2 Merge branch 'bernimoses-master' into beta-version 2019-10-05 16:55:41 +02:00
croneter
a5ac528329 Improve subtitle naming 2019-10-05 16:39:01 +02:00
croneter
2f0767d086 Fix NameError when transcoding 2019-10-05 12:59:48 +02:00
croneter
b0fbb3ac09 Fix regression: labeling of playmethods 2019-10-05 12:43:12 +02:00
croneter
04272a9d3f Fix a missleading string 2019-10-05 12:04:48 +02:00
croneter
7ea9222e47 Fix PKC increasing the Plex watch-count by 2 instead of 1 2019-10-05 11:32:29 +02:00
croneter
d75e2a0109 Remember currently playing item directly 2019-10-05 11:31:44 +02:00
croneter
ae0e121b13 Optimize code 2019-10-05 10:46:33 +02:00
bernimoses
9933480f8d Add tmdb provider sync. 2019-10-03 22:17:00 +02:00
croneter
eef8a94b35
Merge pull request #1001 from croneter/fix-playerror
Fix Play Error in scenarios (older PMS version?) where posting playqueues using an uri `server://` is not possible and `library://` is necessary
2019-09-29 18:50:31 +02:00
croneter
5fb2279c53 Fix PlexKodiConnect Play error in rare scenarios (an older PMS version?), where posting playqueues using an uri server:// is not possible and library:// is necessary 2019-09-29 17:45:16 +02:00
croneter
1e60dd11df Fix rare AttributeError on PKC startup when modifying advancedsettings.xml 2019-09-24 08:16:04 +02:00
croneter
a8ee68ca4c
Merge pull request #990 from croneter/fix-escape
Correctly escape URLs for Direct Paths
2019-09-22 13:23:41 +02:00
croneter
2e90a30dba
Merge pull request #988 from croneter/optimize-migration
Don't migrate PKC settings if we're dealing with a clean new PKC installation
2019-09-22 13:22:48 +02:00
croneter
801695fdd4 Don't migrate PKC settings if we're dealing with a fresh PKC installation 2019-09-22 13:17:10 +02:00
croneter
f8ec9bbf9e
Merge pull request #987 from croneter/fix-migration
Force-scan every single item in the library - seems like we could lose some recently added items otherwise when updating PKC
2019-09-22 13:15:19 +02:00
croneter
e26cf09fef Force a re-scan of every single Plex item - we might have lost some recently added 2019-09-22 13:14:05 +02:00
croneter
a0c55d5b15
Merge pull request #992 from croneter/fix-obsolete
Remove some obsolete code
2019-09-22 13:11:25 +02:00
croneter
5a7d997da2 Correctly escape URLs for Direct Paths 2019-09-22 12:52:32 +02:00
croneter
3ae447012a Remove some obsolete code 2019-09-16 07:13:33 +02:00
croneter
1d210c2fde Remove obsolete import 2019-09-10 17:59:10 +02:00
croneter
5205964c60 Fix resume when force-transcoding 2019-09-08 16:17:33 +02:00
croneter
52c1a0e47d
Merge pull request #975 from croneter/fix-play-decision
Rework logic for using direct paths, direct play, direct streaming and transcoding, using the PMS StreamingBrain
2019-09-08 15:28:29 +02:00
croneter
a1a174a9e1
Merge pull request #979 from croneter/fix-update
Only enforce advancedsettings.xml 'cleanonupdate' to be false for PKC add-on paths
2019-09-08 15:26:00 +02:00
croneter
fbb65913db
Merge pull request #978 from croneter/fix-sync-items
Force a full sync of all items after choosing a new PMS, changing a PMS' address and changing which Plex libraries to sync
2019-09-08 15:25:30 +02:00
croneter
58e26be021
Merge pull request #977 from croneter/fix-sync
Fix PKC background sync synching items to Kodi even though entire section should not be synched
2019-09-08 15:25:00 +02:00
croneter
9b12647957 New setting to force transcode only 4K and above 2019-09-08 15:22:09 +02:00
croneter
7bd02861dc Allow for 4k transcoding and direct streaming 2019-09-08 15:22:09 +02:00
croneter
b5fec41448 Dont decide playback on optimizedForStreaming 2019-09-08 15:22:09 +02:00
croneter
e498736a96 Let PMS StreamingBrain decide on whether we need to force-transcode 2019-09-08 15:22:09 +02:00
croneter
69049c62f1 New setting to choose "Direct Streaming" 2019-09-08 15:22:09 +02:00
croneter
7bb469702a Fix wording: "direct path" is not "direct play" 2019-09-08 15:06:07 +02:00
croneter
816913031c Optimize code 2019-09-08 15:06:07 +02:00
croneter
080eef441e Only enforce advancedsettings.xml cleanonupdate to be false for PKC add-on paths 2019-08-29 10:59:50 +02:00
croneter
e009c371b2 Force a full sync of all items after choosing a new PMS, changing a PMS' address and changing which Plex libraries to sync 2019-08-29 10:32:59 +02:00
croneter
65a921c3cc Fix PKC background sync synching items to Kodi even though entire section should not be synched 2019-08-29 10:08:01 +02:00
croneter
228cdc437d Never give up trying to connect to the PMS or Alexa using websockets 2019-08-17 09:52:58 +02:00
croneter
0541d38b3d
Merge pull request #967 from croneter/fix-racing
Fix playback report not working after having played a non-Plex video file
2019-08-10 13:28:34 +02:00
croneter
f1aa42b957 Merge branch 'beta-version' into code-opt 2019-08-10 13:27:11 +02:00
croneter
ac633d99e5
Merge pull request #964 from croneter/fix-report
Change how items are added to Plex playqueues by using PMS machine identifier
2019-08-10 13:24:53 +02:00
croneter
cfe3f55234
Merge pull request #962 from croneter/fix-extras
Fix extras not playing when path substitution is enabled
2019-08-10 13:24:33 +02:00
croneter
7ff4baac3a
Merge pull request #960 from croneter/fix-attributeerror
Fix rare AttributeError when shutting down Kodi
2019-08-10 13:24:17 +02:00
croneter
80abe0b34b Fix playback report not working after having played a non-Plex video file 2019-08-10 12:01:23 +02:00
croneter
a4526080db Code optimizations for PlaylistItem 2019-08-09 20:44:42 +02:00
croneter
95b469efb5 Faster lookup of elements in our plex.db 2019-08-09 20:42:31 +02:00
croneter
24ebb38f74 Reuse existing code 2019-08-09 20:42:12 +02:00
croneter
4f6156cf30 Rename class to PlaylistItem 2019-08-09 20:41:51 +02:00
croneter
6b5750910c Optimize logging 2019-08-09 20:41:30 +02:00
croneter
0d7a1b3a9f Change way item is added to Plex playqueue by using PMS machine identifier 2019-08-09 17:06:14 +02:00
croneter
b7f13a8842 Fix extras not playing when path substitution is enabled 2019-08-09 08:16:17 +02:00
croneter
f5026b637d Fix rare AttributeError when Kodi exits 2019-08-08 19:54:39 +02:00
croneter
b1d59e65be Fix Plex Companion device restarting playback when reconnecting to PKC 2019-08-06 07:33:35 +02:00
croneter
34e84cd037 Correctly detect whether we already synched a Kodi playlist 2019-08-02 11:32:03 +02:00
croneter
d2b5bc8d23
Merge pull request #954 from croneter/fix-companion
Fix Plex Companion casting from iOS and Android
2019-08-02 10:51:49 +02:00
croneter
064e573af9
Merge pull request #953 from croneter/optimize-sync
Sync playlists immediately after synching new/changed items and show an info dialog
2019-08-02 10:51:28 +02:00
croneter
b5bd13f7bd
Merge pull request #952 from croneter/less-logging
Less logging when comparing PKC versions
2019-08-02 10:51:10 +02:00
croneter
335bfc34c5
Merge pull request #946 from croneter/faster-playlists
Faster sync of playlists
2019-08-02 10:50:55 +02:00
croneter
91da038413
Merge pull request #950 from croneter/fix-check
Remove obsolete check if path is indeed in unicode
2019-08-02 10:50:30 +02:00
croneter
2cee5512d9
Merge pull request #948 from croneter/new-function
Separate function to wipe all synched Plex playlists
2019-08-02 10:50:12 +02:00
croneter
46830d29a9
Merge pull request #949 from croneter/unicode
Add unicode representation to Playlist() class
2019-08-02 10:49:56 +02:00
croneter
bae923d34a Fix Plex Companion casting from iOS and Android 2019-08-02 10:46:04 +02:00
croneter
33ed1bed83 Sync playlists immediately after synching new/changed items and show pop-up info 2019-08-02 10:25:53 +02:00
croneter
bcc97df209 Less logging when comparing PKC versions 2019-08-02 10:17:02 +02:00
croneter
7d8802467f Ensure playlists are freshly synched on PKC version bump 2019-08-01 14:53:49 +02:00
croneter
26fa1ff909 Use file size and last modification time to compare Kodi playlist files instead of slow MD5 hash of file 2019-08-01 14:53:49 +02:00
croneter
dca1bb6835 Remove obsolete check 2019-08-01 14:51:45 +02:00
croneter
53f77a7a97 Add unicode representation to Playlist() class 2019-08-01 14:50:09 +02:00
croneter
a83cf93150 Separate function to wipe all synched Plex playlists 2019-08-01 14:48:42 +02:00
croneter
85e0909105 Fix potential playlist sync issues with dot in playlist name 2019-08-01 14:38:44 +02:00
croneter
9b98ee9ec3 Fix On Deck for shows not appending showname and season and episode number 2019-07-27 12:08:42 +02:00
croneter
4b598200b9 AttributeError: 'NoneType' object has no attribute 'attrib' on playback startup 2019-07-21 12:11:28 +02:00
croneter
61f13f516b
Merge pull request #932 from croneter/fix-companion
Fix casting to PlexKodiConnect always starting the first episode
2019-07-14 13:00:52 +02:00
croneter
024bf31b83
Merge pull request #930 from croneter/upnext
Support for the Up Next Kodi add-on
2019-07-14 13:00:37 +02:00
croneter
5438fe4388 Fix casting to PlexKodiConnect always starting the first episode 2019-07-14 12:57:20 +02:00
croneter
38977a8ca6 Support for the Upnext Kodi add-on 2019-07-14 12:09:25 +02:00
croneter
a43e0801b4 Rename video nodes for ondeck 2019-07-14 07:46:09 +02:00
croneter
3436035530 Provide more metadata for unsynced directory-like items like a show 2019-07-13 14:49:59 +02:00
croneter
84d4e5aa99
Merge pull request #922 from croneter/fix-path
Fix 'Plex.nodes.<id>.path' not linking directly to entire library
2019-07-13 10:32:44 +02:00
croneter
33d20f0d0b Fix Plex.nodes.<id>.path not linking directly to entire library 2019-07-09 07:54:17 +02:00
croneter
e718fd3276 Fix sections that are not synced not displaying correct menu 2019-07-09 07:37:18 +02:00
croneter
76cbd27ae3
Merge pull request #919 from croneter/fix-actor-image
Fix missing cast artwork if an actor also acted as director or writer for another movie. You will have to manually reset the Kodi DB.
2019-07-07 18:09:38 +02:00
croneter
868cecfe35 Fix missing cast artwork if an actor acts as director or writer 2019-07-07 18:05:56 +02:00
croneter
a5aa0c2594 Reset PKC video library XMLs on PKC update 2019-07-06 21:22:12 +02:00
croneter
fc237383aa Ensure correct Container.Type is set for PKC widgets 2019-07-06 21:20:23 +02:00
croneter
416c424f52 Fix PKC potentially marking a video as watched on startup; don't sync time with toggling video watch state but use PMS epoch time 2019-06-28 17:47:01 +02:00
croneter
5466bb759c
Merge pull request #910 from croneter/fix-playlists
Fix PKC creating thousands of playlists if a single Kodi playlist wasn't unique
2019-06-28 16:47:34 +02:00
croneter
eb3e655213 Cleanup due to wrong assumption that kodi playlist hash was unique 2019-06-28 15:54:55 +02:00
croneter
58ba03b94b Ensure faulty index on Plex DB is correctly recreated on PKC update 2019-06-28 15:46:40 +02:00
croneter
fb76f49fbd Fix PKC creating thousands of playlists if there are 2 identical Kodi playlists 2019-06-28 15:20:22 +02:00
croneter
f32a8c534f Fix FutureWarning 2019-06-25 18:12:46 +02:00
croneter
671bbbd9a9 Fix Trakt add-on not recognizing id of tv shows 2019-06-22 18:34:12 +02:00
croneter
f506b971ce
Merge pull request #899 from croneter/fix-listitem
Fix for Kodi 17 Krypton TypeError on playback start: 'offscreen' is an invalid keyword argument for this function
2019-06-16 14:16:35 +02:00
croneter
c91f62108b
Merge pull request #898 from croneter/fix-skin
Fix widgets not being populated after very first PlexKodiConnect library sync
2019-06-16 14:16:20 +02:00
croneter
68cf59293f Fix for Kodi 17 Krypton TypeError on playback start: 'offscreen' is an invalid keyword argument for this function 2019-06-16 14:11:53 +02:00
croneter
67dfca32b5 Fix widgets not being populated after first PKC sync 2019-06-16 13:49:42 +02:00
croneter
b99b17d0f9 Don't restart Kodi if user chose to enter PKC settings on install 2019-06-15 16:01:02 +02:00
croneter
3627c9e6bb
Merge pull request #890 from croneter/widget-limit
Improve some PKC widgets
2019-06-14 20:03:06 +02:00
croneter
d4f23db945
Merge pull request #889 from croneter/fix-tvshows
Fix In Progress widgets being broken and tv shows showing up as completely watched
2019-06-14 20:02:46 +02:00
croneter
a463bd521f Add an additional, faster On Deck node for movies 2019-06-14 18:07:19 +02:00
croneter
0bf7ada6e3 Delete Plex video node files when migrating to PKC version 2.8.2 2019-06-14 12:46:37 +02:00
croneter
1c245683ad Introduce limits to the number of videos shown in PKC widgets to speed them up 2019-06-14 12:38:01 +02:00
croneter
12b84b42bb Fix In Progress widgets not displaying anything and all shows being marked as watched 2019-06-14 12:14:39 +02:00
croneter
a761a8987d Fix TypeError for Direct Paths: init() got an unexpected keyword argument ‘item’ 2019-06-14 11:11:00 +02:00
croneter
cd524cb978
Merge pull request #883 from croneter/fix-valueerror
Fix ValueError if casting to int/float
2019-06-12 20:05:37 +02:00
croneter
e433f6f719 Fix RuntimeError: Unknown exception thrown from the call "XBMCAddon::xbmcplugin::setResolvedUrl" 2019-06-12 19:59:16 +02:00
croneter
e08e9b0d32 Fix ValueError if casting to int/float 2019-06-12 13:17:17 +02:00
croneter
563e86c8db
Merge pull request #880 from croneter/playlist-sync-dialog
Add additional info dialog for PKC synching playlists
2019-06-12 13:04:04 +02:00
croneter
03a9f84b9e Fix rare UnicodeDecodeError on library sync 2019-06-12 13:02:29 +02:00
croneter
1cbd65861c Add additional info dialog for PKC synching playlists 2019-06-12 12:18:09 +02:00
croneter
d96ac192d1 Fix casting to int silently failing 2019-06-12 11:53:41 +02:00
croneter
a46cb731cf Refactor Plex API 2019-06-12 11:53:41 +02:00
croneter
8e8cf18c0a Add comment: potential fix Kodi to immediately resuming the video if the user restarted playback 2019-06-02 19:30:28 +02:00
croneter
6bd5b28e0c Fix playback when the same video is started again from a widget 2019-06-02 13:47:50 +02:00
croneter
3ba09e1ff0 Increase logging 2019-06-02 13:30:23 +02:00
croneter
d0c0ab2a56 Fix video thrown by Plex Companion not resuming 2019-06-02 13:12:04 +02:00
croneter
04d328de3e Improve video resuming behavior; add a resume dialog for playback startup via PMS 2019-06-02 13:12:03 +02:00
croneter
bcb89aed88 Also play trailers if user chose to resume movie from the beginning 2019-06-01 16:15:14 +02:00
croneter
ccb95a0169 Fix Kodi always playing the same file version of a video 2019-06-01 16:15:14 +02:00
croneter
9171169956 Another attempt to keep Kodi from crashing on playback startup 2019-05-30 14:24:18 +02:00
croneter
10c7c79035 Hopefully fix Kodi crashing on playback startup for good 2019-05-29 21:01:51 +02:00
croneter
3e7533d965
Merge pull request #845 from croneter/update-widgets
Refresh widgets only on homescreen to prevent cursor from jumping within libraries
2019-05-28 20:11:49 +02:00
croneter
59aa9f3a55
Merge pull request #844 from croneter/no-refresh
Don't refresh container when user chose to delete or refresh an item from the context menu
2019-05-28 20:11:24 +02:00
croneter
f993373a4f Revert "Merge pull request #841 from croneter/section-uuid"
This reverts commit edb9d6e2b0, reversing
changes made to a603bd33ae.
2019-05-28 18:42:04 +02:00
croneter
7e829c1bad Refresh widgets only on homescreen to prevent cursor from jumping within libraries 2019-05-01 08:56:11 +02:00
croneter
1a7a36820a Don't refresh container when use chose to delete or refresh an item 2019-05-01 08:35:32 +02:00
croneter
ab8089d3b1 Rename section.section_id to section.id 2019-04-27 11:52:42 +02:00
croneter
e76fd03915 Safe section uuid when synching 2019-04-27 11:52:42 +02:00
croneter
ab5ab966e4 Use section for sync process 2019-04-27 11:52:42 +02:00
croneter
6a292d29f6 Safe Plex library section uuid to plex.db instead of kodi tagid 2019-04-27 11:52:42 +02:00
croneter
cc854a120f
Merge pull request #837 from croneter/fix-lastplayed
Fix last-played node value to ensure a playcount greater than zero
2019-04-21 10:06:20 +02:00
croneter
5c11ab21ed
Merge pull request #834 from croneter/reload-skin
Reload skin on resetting PKC video nodes
2019-04-21 10:05:43 +02:00
croneter
9b45a84d7e Correctly clear window variables e.g. on user switch 2019-04-20 17:28:43 +02:00
croneter
453098ef4f Fix last played node value for playcount 2019-04-20 14:16:54 +02:00
croneter
0c60f984d1 Reload skin on resetting PKC video nodes 2019-04-17 16:19:57 +02:00
croneter
e554195228
Merge pull request #831 from croneter/fix-customization
Fix some appearance tweak settings
2019-04-14 14:56:14 +02:00
croneter
86c6e44ad6
Merge pull request #829 from croneter/fix-transcoding
Fix transcoding not working
2019-04-14 14:55:46 +02:00
croneter
203edf90f0
Merge pull request #828 from croneter/fix-4k
Fix 4k H265 not being transcoded
2019-04-14 14:55:35 +02:00
croneter
2791dc7b57
Merge pull request #827 from croneter/fix-nodes
Fix music and picture nodes pointing to video library
2019-04-14 14:55:19 +02:00
croneter
4dcf057631
Merge pull request #826 from croneter/fix-ne
Fix unequality when comparing sections
2019-04-14 14:55:06 +02:00
croneter
15c4da46a9 Reenable setting: recently added: don't show watched movies 2019-04-14 14:49:44 +02:00
croneter
5cc67f41e1 Reenable setting: recently added: don't show watched episodes 2019-04-14 14:41:14 +02:00
croneter
eb1214f0c7 New setting to reloade Plex video nodes 2019-04-14 14:20:03 +02:00
croneter
75a6ecd1cf Fix transcoding not working 2019-04-14 13:13:48 +02:00
croneter
9c4c6bf07f Fix 4k H265 not being transcoded 2019-04-14 11:37:03 +02:00
croneter
34f1c7d1b9 Fix music and picture nodes pointing to video library 2019-04-14 11:03:05 +02:00
croneter
65e377a49f Remove obsolete import 2019-04-14 10:29:08 +02:00
croneter
02a03bd0f2 Fix unequality when comparing sections 2019-04-13 12:51:14 +02:00
croneter
e93fd94a71 Fix Plex Companion logging error messages 2019-04-05 17:54:03 +02:00
croneter
b178526ca1
Merge pull request #819 from croneter/fix-kodi-crash
Attempt to fix rare Kodi crash on PKC exit
2019-04-05 17:13:09 +02:00
croneter
b1aceb1e90 Fix possible UnicodeEncodeError 2019-04-05 17:12:05 +02:00
croneter
11f636c4b9 Fix UnicodeEncodeError on playback startup 2019-04-05 17:12:05 +02:00
croneter
26689e16d4 Attempt to fix rare Kodi crash on PKC exit 2019-04-05 16:47:59 +02:00
croneter
bca657ab08
Merge pull request #807 from croneter/fix-unicode
Fixes to unicode
2019-03-30 17:50:30 +01:00
croneter
d5a7bab8db
Merge pull request #809 from croneter/cleanup
Cleanup code, remove some obsolet methods and functions
2019-03-30 17:50:11 +01:00
croneter
aadb22e531 Fix FutureWarning 2019-03-30 17:34:51 +01:00
croneter
c1bb083933 Cleanup plex_api.py 2019-03-30 17:32:42 +01:00
croneter
1ac19109ba Turn urllib and urlparse unicode-safe 2019-03-30 17:32:42 +01:00
croneter
b4d036ed6b Monkey patch xml.etree.ElementTree to always return unicode 2019-03-30 09:56:22 +01:00
croneter
d5781d0906 Remove obsolete method 2019-03-30 09:54:31 +01:00
croneter
88cc4e220c Remove obsolete method 2019-03-30 09:54:24 +01:00
croneter
068379c0eb
Merge pull request #802 from croneter/quick-fix-direct-paths
Fix UnicodeEncodeError for Direct Paths and some PKC video nodes
2019-03-29 14:25:37 +01:00
croneter
e1bdce2b99 Revert need to reset the Kodi DB 2019-03-29 14:03:46 +01:00
croneter
90f445cc75 Fix UnicodeEncodeError 2019-03-28 20:08:45 +01:00
croneter
2013b498d6 Add function to urlencode unicode 2019-03-28 20:07:40 +01:00
croneter
456897a3cc
Merge pull request #800 from croneter/fix-direct-music
Fix duplicate music entries for direct paths (forces a Kodi database reset!)
2019-03-28 14:04:53 +01:00
croneter
de80885aa5 Fix playback sometimes not being reported for direct paths 2019-03-28 13:48:50 +01:00
croneter
c308c06929 Fix duplicate music entries for direct paths (requires DB reset!) 2019-03-28 13:47:35 +01:00
croneter
de19813a85
Merge pull request #794 from croneter/fix-nfs-masterlock
Fix Kodi Masterlock for nfs paths (requires restart)
2019-03-26 18:49:50 +01:00
croneter
648d88b9b2
Merge pull request #791 from croneter/fix-widget-loading
Wait for PKC to authorize before loading widgets
2019-03-26 18:48:51 +01:00
croneter
c072f0f439
Merge pull request #790 from croneter/fix-startup
Fix TypeError on Kodi start
2019-03-26 18:48:34 +01:00
croneter
5a8eb0db4b Fix Kodi Masterlock for nfs paths (requires restart) 2019-03-26 18:00:35 +01:00
croneter
8a2ce01aee Wait for PKC to authorize before loading widgets 2019-03-25 20:54:55 +01:00
croneter
448714e6a2 Fix TypeError on Kodi start 2019-03-25 20:51:28 +01:00
croneter
d05c29776c Fix UnicodeDecodeError for libraries with non-ASCII paths 2019-03-25 17:47:42 +01:00
croneter
2c101d9145
Merge pull request #783 from croneter/fix-widgets
Fix node paths for skins
2019-03-21 20:35:14 +01:00
croneter
c996d51085 Fix video node path for widgets 2019-03-21 20:22:41 +01:00
croneter
7cb6c75f3b Fix adding of show title, season and episode number 2019-03-21 20:06:52 +01:00
croneter
9665f34ee6 Fix Typo 2019-03-20 19:19:57 +01:00
croneter
a8a229967c
Merge pull request #777 from croneter/fix-profile-switch
Fix PKC synching playstate to wrong user on profile switch. Be aware that Kodi profile switches are error-prone
2019-03-17 17:59:20 +01:00
croneter
58b15e69a9
Merge pull request #775 from croneter/fix-nodes
Fix nodes for skin use
2019-03-17 17:58:28 +01:00
croneter
392f3f6359
Merge pull request #774 from croneter/fix-unicode
Fix sync not working due to non-ASCII Plex library names
2019-03-17 17:58:15 +01:00
croneter
71af3d0ca6
Merge pull request #773 from croneter/fix-direct-paths
Fix playback sometimes not being reported for direct paths
2019-03-17 17:58:00 +01:00
croneter
b5b9dd51a5
Merge pull request #771 from croneter/fix-playlist-sync
Fix 'NoneType' object has no attribute 'kodi_path'
2019-03-17 17:57:49 +01:00
croneter
815cd20d39 Ensure Plex companion thread quits on time 2019-03-17 17:56:31 +01:00
croneter
9d07a58c50 Replace waitForAbort() with sleep() 2019-03-17 17:56:31 +01:00
croneter
d068c37c49 Fix PKC synching playstate to wrong user on profile switch
- BUT: Kodi profiles seem to be a mess!
2019-03-17 16:53:13 +01:00
croneter
ba4f1d15d6 Increase logging 2019-03-17 16:26:48 +01:00
croneter
3c70a84704 Catch all exceptions, just in case 2019-03-17 15:42:29 +01:00
croneter
37bbf61a63 Ensure that reference to threader is gone on shutdown 2019-03-17 15:33:42 +01:00
croneter
41483e6731 Add more exit points when synching 2019-03-17 15:31:02 +01:00
croneter
9a6485737f Fix 'all' video node not leading to all library items 2019-03-17 12:57:38 +01:00
croneter
a2b57909cb Hopefully fix On Deck video node not working 2019-03-17 12:57:38 +01:00
croneter
3d4642dc56 Fix sync not working due to non-ASCII Plex library names 2019-03-17 11:54:09 +01:00
croneter
68ca41545c Fix playback sometimes not being reported for direct paths 2019-03-17 11:41:43 +01:00
croneter
db0f7f283e Simplify code to get path and filename 2019-03-17 11:30:44 +01:00
croneter
eef0eda426 Fix 'NoneType' object has no attribute 'kodi_path' 2019-03-16 17:47:23 +01:00
croneter
c6e635b39b Fix float() argument must be a string or a number 2019-03-16 17:34:47 +01:00
croneter
7d040e37ae
Merge pull request #759 from croneter/version-bump
Beta version bump 2.7.5
2019-03-10 18:06:12 +01:00
croneter
bda58deb6e
Merge pull request #722 from croneter/widget_overhaul
Giant overhaul of widgets
2019-03-10 18:01:13 +01:00
croneter
86cde7c69a
Merge pull request #760 from croneter/fix-keyerror
Fix some KeyErrors when playing songs
2019-03-10 18:00:53 +01:00
croneter
e50c0c011e Allow searching the PMS 2019-03-10 18:00:05 +01:00
croneter
5b7595c681 Rework widgets and listitems 2019-03-10 18:00:04 +01:00
croneter
4ea77370e8 Beta version bump 2.7.5
- Includes a migration!
2019-03-10 13:27:27 +01:00
croneter
c99cead6f5 Ignore all file events for playlists caused by PKC 2019-03-10 13:22:38 +01:00
croneter
8c51ee5c7a Ignore all websocket playlist messages caused by PKC 2019-03-10 13:22:38 +01:00
croneter
62ecefdcca Less logging 2019-03-10 11:25:02 +01:00
croneter
c69176d4a1 Fix some KeyErrors when playing songs 2019-03-09 16:19:29 +01:00
croneter
349829a754 Fix PKC not synching new items if an older Kodi db is present 2019-02-26 17:41:35 +01:00
croneter
c17dda40dd
Merge pull request #744 from croneter/fix-theme-log-entries
Fix PKC trying to initialize playqueues over and over again
2019-02-24 11:27:03 +01:00
croneter
33cae69cc4 Fix PKC not starting due to a higher version Kodi database 2019-02-24 11:19:35 +01:00
croneter
36c78b0d6e Fix PKC trying to initialize playqueues over and over again 2019-02-23 08:53:37 +01:00
croneter
a9ff70fac7 Fix PKC not exiting correctly due to a call to xbmc.getCondVisibility 2019-02-22 08:11:58 +01:00
croneter
fa9ca95e2e Remove obsolete check for Kodi profile switch 2019-02-21 09:15:29 +01:00
croneter
2c12f2e705 Update to new style Python class 2019-02-21 08:47:52 +01:00
croneter
3c9eb71324 Fix websocket threads not exiting correctly 2019-02-21 08:47:36 +01:00
croneter
78def504bc
Merge pull request #732 from croneter/fix-typeerror
Fix rare TypeError: unsupported operand type(s) for /: 'NoneType' and 'int' on playback startup
2019-02-16 19:05:50 +01:00
croneter
2942300f10
Merge pull request #731 from croneter/improve-db
Improve plex db lookups by creating better db indicees
2019-02-16 19:05:36 +01:00
croneter
4a83aae573 Fix TypeError: unsupported operand type(s) for /: 'NoneType' and 'int' 2019-02-16 17:59:03 +01:00
croneter
056150a2da Improve plex db lookups by creating better db indicees 2019-02-16 14:05:09 +01:00
croneter
823f6b6e3f Fix KeyError: u'kodi_type' 2019-02-16 12:17:56 +01:00
croneter
94da14744d Fix PKC crashing on recreating the database 2019-02-08 15:33:29 +01:00
croneter
d8aada43a6
Merge pull request #714 from croneter/version-bump
Beta version bump 2.6.8
2019-02-08 15:20:25 +01:00
croneter
a9bfae2b13
Merge pull request #715 from croneter/codacy
Implement Codacy suggestions
2019-02-08 15:20:11 +01:00
croneter
7a0b9c8fca
Merge pull request #713 from croneter/fix-collections
Fix processing of collections in special cases
2019-02-08 15:20:00 +01:00
croneter
80f3542737
Merge pull request #712 from croneter/fix-videos-disappearing
Fix movies or shows disappearing in fringe cases
2019-02-08 15:19:50 +01:00
croneter
da1cb6e3d7
Merge pull request #717 from croneter/fix-playlists
Fix rare case where thousands of identical playlists could be generated
2019-02-08 15:19:37 +01:00
croneter
a0d6674f7e
Merge pull request #711 from croneter/fix-unresponsive
Fix PKC becoming unresponsive
2019-02-08 15:19:23 +01:00
croneter
d617535a05 Beta version bump 2.6.8 2019-02-08 15:18:41 +01:00
croneter
873c9e74f5 Fix rare case where thousands of identical playlists could be generated 2019-02-08 15:15:52 +01:00
croneter
e6cd80a7dd Implement Codacy suggestions 2019-02-08 13:52:33 +01:00
croneter
1a1e4b113d Prompt user to select libraries to sync upon changing PMS 2019-02-08 13:24:14 +01:00
croneter
50d770718d Choose which Plex libraries PKC should sync 2019-02-08 13:24:14 +01:00
croneter
6447281404 Fix processing of collections in special cases 2019-02-08 13:02:55 +01:00
croneter
f98e2df42f Fix movies or shows disappearing in fringe cases 2019-02-08 13:01:10 +01:00
croneter
cd728b4c32 Fix PKC becoming unresponsive 2019-02-08 12:59:12 +01:00
croneter
3b18a92ab4 Fix PKC becoming unresponsive 2019-02-08 12:58:53 +01:00
croneter
05a6700d55
Merge pull request #708 from croneter/improve-playerror-messages
Improve error messages when playback failes
2019-02-06 16:16:09 +01:00
croneter
c7eab63960 Improve error message when playback failes 2019-02-06 16:14:14 +01:00
croneter
1787e51c7c Zentrally register threads and introduce a way to wait for their suspension 2019-02-06 14:19:10 +01:00
croneter
63201db07d
Merge pull request #707 from croneter/version-bump
Beta version bump 2.6.6
2019-02-05 18:59:53 +01:00
croneter
d8796a174e
Merge pull request #706 from croneter/fix-pms-logs
Optimize headers for communication with PMS to appear like a Plex Media Player
2019-02-05 18:59:43 +01:00
croneter
6bf0cf4894
Merge pull request #705 from croneter/improve-sync-dialog
Improve sync dialog
2019-02-05 18:59:28 +01:00
croneter
950a2de0f5
Merge pull request #704 from croneter/fix-slow-sync
Greatly speed up sync for episodes, especially for large libraries
2019-02-05 18:59:16 +01:00
croneter
74dc249a37 Enforce database reset 2019-02-05 18:57:50 +01:00
croneter
9208cf2cb3 Optimize headers for communication with PMS to appear like PMP 2019-02-05 18:52:10 +01:00
croneter
01c0c36244 Increase batch size for playstates by a factor 10 2019-02-05 16:54:40 +01:00
croneter
ca16f73637 Make sure we're not showing an item's title while synching playstate 2019-02-05 15:48:24 +01:00
croneter
4786372490 Improve sync dialog for Estuary by switching item's title and sync count 2019-02-05 15:48:02 +01:00
croneter
2234e49cf8 Greatly speed up episode sync for large libraries 2019-02-05 15:32:50 +01:00
croneter
e65c9d6c94 Increase sync processing batch size from 200 to 500 2019-02-05 13:21:08 +01:00
croneter
0e16eb703a Do not allow insecure HTTPS websocket connections for Kodi Leia in any case 2019-02-05 13:10:00 +01:00
croneter
7b21caceae Allow websocket redirects 2019-02-05 13:09:59 +01:00
croneter
bf6e52bf20
Merge pull request #698 from croneter/improve-logging
Improve logging
2019-02-04 16:23:49 +01:00
croneter
76004f1aa6 Improve logging 2019-02-04 16:15:58 +01:00
croneter
20225f12b4 Fix extras not playing 2019-02-04 12:51:16 +01:00