Commit graph

4610 commits

Author SHA1 Message Date
croneter
c664f05718 Fix a racing condition that could lead to the sync getting stuck
Fixup racing
2021-07-23 10:30:51 +02:00
croneter
e36656dc81 Improve logging
fixup logging
2021-07-23 10:30:45 +02:00
croneter
78a3cc434a Fix AttributeError: module 'urllib' has no attribute 'parse' 2021-07-18 14:46:04 +02:00
BrutuZ
423e87046d Support forced HAMA IDs when using tvdb uniqueID 2021-07-18 12:20:57 +02:00
BrutuZ
b8569df1b3 Support for the Plex HAMA agent to let Kodi identify animes (using Kodi's uniqueID 'anidb')
Support HAMA's forced AniDB IDs
2021-07-18 12:18:48 +02:00
croneter
3983011066
Merge pull request #1520 from croneter/py3-update-translations
Update translations from Transifex
2021-06-05 15:44:52 +02:00
croneter
defa43d596
Merge pull request #1515 from croneter/py3-fix-versions
Fix auto-picking of video stream if several video versions are available
2021-06-05 15:44:20 +02:00
croneter
4f9c2d88ea Update translations from Transifex 2021-06-05 15:41:53 +02:00
croneter
f3b97e42f8 Fix auto-picking of video stream if several video versions are available 2021-06-05 14:54:13 +02:00
croneter
f53d817908 Add an additional Plex Hub "PKC Continue Watching" that merges the Plex Continue Watching with On Deck 2021-06-05 14:05:20 +02:00
croneter
bb3fa955b2 Fix websockets and AttributeError: 'NoneType' object has no attribute 2021-05-29 16:41:19 +02:00
croneter
485dfeceb6
Merge pull request #1499 from croneter/fix-arrow
Get rid of Python arrow; hopefully fix many Python import errors (also occuring in other add-ons!)
2021-05-26 21:06:01 +02:00
croneter
8d2b3ac1af Get rid of Python arrow; hopefully fix many Python import errors (also occuring in other add-ons!) 2021-05-26 21:00:41 +02:00
croneter
c0ec4cc23e Attempt to fix websocket threading issues and AttributeError: 'NoneType' object has no attribute 'is_ssl' or 'settimeout' 2021-05-26 20:50:55 +02:00
croneter
6d566c6cd2
Merge pull request #1490 from croneter/py3-update-websockets
Update websocket client to 1.0.0
2021-05-24 20:30:01 +02:00
croneter
9872266c61
Merge pull request #1494 from croneter/py3-fix-typeerror
Fix videos not starting due to a TypeError
2021-05-24 20:29:52 +02:00
croneter
7720d3f392 Fix videos not starting due to TypeError 2021-05-24 20:26:25 +02:00
croneter
f5b8084543 Show warning message to remind user to use Estuary for database resets 2021-05-24 15:51:41 +02:00
croneter
cb7a5c04e0 Update websocket client to 1.0.0 2021-05-24 13:02:57 +02:00
croneter
0e1d6c5832
Merge pull request #1486 from croneter/py3-fix-direct-paths
Direct Paths: fix several issues with episodes
2021-05-24 09:43:26 +02:00
croneter
bf5591354b Force PKC database reset 2021-05-24 09:39:26 +02:00
croneter
5a0de0e5f7 Fix PKC widgets not working at all in some cases 2021-05-24 09:35:36 +02:00
croneter
cfdcfb4bc4 Direct Paths: fix several issues with episodes 2021-05-23 18:03:18 +02:00
croneter
f33152049e
Merge pull request #1472 from croneter/py3-fix-attributeerror
Fix AttributeError: module 'shutil' has no attribute 'copy_tree'
2021-05-14 08:52:08 +02:00
croneter
4f8b4a9f44 Fix AttributeError: module 'shutil' has no attribute 'copy_tree' 2021-05-14 08:46:06 +02:00
croneter
56a74255b6 Fix Alexa and RuntimeError: dictionary keys changed during iteration 2021-05-02 14:35:24 +02:00
croneter
7760174900 Fix regression: fix add-on paths always falling back to direct paths 2021-05-02 14:10:33 +02:00
croneter
991eaad5df
Merge pull request #1464 from croneter/fix-message
Add PKC setting to disable verification whether we can access a media file
2021-05-02 13:50:14 +02:00
croneter
e6bf68b6f2
Merge pull request #1463 from croneter/adjust-paths
Direct paths: corrections to more closely mirror Kodi's way of saving movie and tv show files to the db
2021-05-02 13:49:53 +02:00
croneter
74a19966d2
Merge pull request #1462 from croneter/fix-playlists
Make sure that the correct file system encoding is used for playlists
2021-05-02 13:49:27 +02:00
croneter
054332079d Require Kodi database reset for PKC versions < 3.1.3 2021-05-02 13:40:02 +02:00
croneter
a355aee718 Direct paths: set exclude=0 and allAudio=0 in video path table 2021-05-02 13:38:31 +02:00
croneter
f716df0c29 Direct paths: fix pathId in Kodi movie table 2021-05-02 13:38:25 +02:00
croneter
9c8cb61c48 Add PKC setting to disable check whether we can access a media file 2021-05-02 12:55:32 +02:00
croneter
9aa283eea3 Make sure that the correct file system encoding is used for playlists 2021-05-02 12:29:40 +02:00
croneter
f5af67427f Fix a rare AttributeError when using playlists 2021-04-30 10:26:33 +02:00
croneter
f634554699
Merge pull request #1451 from croneter/fix-companion
Fix PKC not showing up as a casting target in some cases
2021-04-17 14:19:42 +02:00
croneter
7d4a144521
Merge pull request #1450 from croneter/fix-unicode
Fix UnicodeEncodeError if Plex playlist name contains illegal chars
2021-04-17 14:19:23 +02:00
croneter
35c9aeff8b Fix ImportError: cannot import name 'dir_util' from 'distutils' 2021-04-17 14:15:55 +02:00
croneter
281fe05158 Fix PKC not showing up as a casting target in some cases 2021-04-17 14:01:56 +02:00
croneter
fbc1ee8985 Fix UnicodeEncodeError if Plex playlist name contains illegal chars 2021-04-17 13:57:23 +02:00
croneter
2ec5cf026e
Merge pull request #1440 from croneter/fix-direct-paths
Direct paths: fix filename showing instead of full video metadata during playback
2021-04-05 16:11:00 +02:00
croneter
0032e6a106 Require Kodi database reset for PKC versions < 3.1.1 2021-04-05 15:27:36 +02:00
croneter
f8f9b98f70 Direct paths: fix movie details not showing on playback 2021-04-05 14:43:17 +02:00
croneter
fa681c9c0e Update translations from Transifex 2021-03-20 14:38:19 +01:00
croneter
db4f75da0c Fix resume not working if Kodi player start-up is slow 2021-03-19 18:30:24 +01:00
croneter
9151c149e5
Merge pull request #1411 from croneter/fix-socket
Fix error socket.timeout: timed out
2021-03-17 21:41:46 +01:00
croneter
92daa29592
Merge pull request #1410 from croneter/new-websocket
Fix instantaneous background sync and Alexa not working
2021-03-17 21:41:30 +01:00
croneter
c4433644ef Adapt websocket client logic 2021-03-17 21:40:52 +01:00
croneter
736f072ccf Fix error socket.timeout: timed out 2021-03-17 21:31:19 +01:00
croneter
8cdb9c999a Hopefully fix RuntimeError: no add-on "plugin.video.plexkodiconnect" 2021-03-17 21:16:11 +01:00
croneter
3918810338 Add new Python websocket client 2021-03-14 16:30:52 +01:00
croneter
35824fe4d0
Merge pull request #1397 from croneter/py3-add-websocket-info
Add information to PKC settings for background sync and Alexa whether a connection has been successfully made
2021-03-14 14:09:38 +01:00
croneter
ed9a2ca0ac
Merge pull request #1396 from croneter/fix-skip-intro
Rename skip intro skin file
2021-03-14 14:01:57 +01:00
croneter
de91987464 Add information to PKC settings about status of websocket and Alexa websocket connections 2021-03-14 13:54:40 +01:00
croneter
c7ff3f573a Rename skip intro skin file 2021-03-14 12:55:51 +01:00
croneter
ed93771d12
Merge pull request #1384 from croneter/py3-sync-playstates
Quickly sync recently watched items before synching the playstates of the entire Plex library
2021-03-07 17:19:18 +01:00
croneter
ec3616c66a
Merge pull request #1377 from croneter/py3-fix-websocket
Improve logging for websocket JSON loads
2021-03-07 17:18:49 +01:00
croneter
2dc2b0d99b Sync recently watched items individually before synching every playstate 2021-03-07 15:16:23 +01:00
croneter
dd69928b20 Improve logging for websocket JSON loads 2021-03-01 10:57:59 +01:00
croneter
64ac1f5349 Fix TypeError: function missing required argument 'message' 2021-03-01 10:39:17 +01:00
croneter
c39151e746 Fix UnboundLocalError: local variable 'user' referenced before assignment 2021-02-26 13:08:05 +01:00
croneter
c49fe06d0f
Merge pull request #1364 from croneter/py3-seasonnames
Sync name and user rating of a TV show season to Kodi
2021-02-24 17:45:12 +01:00
croneter
cd940d60f7 Sync name and user rating of a TV show season to Kodi 2021-02-24 17:20:37 +01:00
croneter
caf8903873 Fix rare TypeError: expected string or buffer on playback start 2021-02-24 15:22:18 +01:00
croneter
8dd533e071 Fix TypeError: function missing required argument 'message' 2021-02-21 17:12:15 +01:00
croneter
3ea4b1fa46
Merge pull request #1340 from croneter/py3-update-translations
Update translations
2021-02-13 18:14:06 +01:00
croneter
e6e99ba52b Fix skip intros sometimes not working due to a RuntimeError 2021-02-13 18:09:21 +01:00
croneter
b3ba45f900 Update translations 2021-02-13 18:05:41 +01:00
croneter
47550e9367
Merge pull request #1334 from croneter/fix-nextup
Fix Kodi add-on NextUp not working
2021-02-09 19:50:51 +01:00
croneter
7f8939cee7 Add skip intro functionality 2021-02-09 18:14:31 +01:00
croneter
6719b97d87 Fix Kodi add-on NextUp not working 2021-02-09 18:03:17 +01:00
croneter
0b577aaabe
Merge pull request #1328 from croneter/fix-keyerror
Fix KeyError: u'game' if Plex Arcade has been activated
2021-02-07 13:11:58 +01:00
croneter
63d7732021 Fix KeyError: u'game' if Plex Arcade has been activated 2021-02-07 13:00:58 +01:00
croneter
d73d0b42d9 Fix AttributeError: 'App' object has no attribute 'threads' when sync is cancelled 2021-02-06 12:20:52 +01:00
croneter
0db8ae490c
Merge pull request #1310 from croneter/fix-deadlock
Hopefully fix rare case when sync would get stuck indefinitely
2021-01-31 17:43:00 +01:00
croneter
e21f4c143d Hopefully fix rare case when sync would get stuck indefinitely 2021-01-31 17:39:44 +01:00
croneter
82e38366f5 Revert "Add a ton of debug logging for library sync to find deadlock"
This reverts commit 06f7d88d22.
2021-01-31 17:38:37 +01:00
croneter
7465117b00 ValueError: invalid literal for int() for invalid dates sent by Plex 2021-01-31 17:20:17 +01:00
croneter
f6e54ac2b6
Merge pull request #1309 from croneter/fix-streams
Fix PKC not auto-picking audio/subtitle stream when transcoding
2021-01-28 13:06:28 +01:00
croneter
a6defcc05a
Merge pull request #1308 from croneter/fix-valueerror
Fix ValueError when deleting a music album
2021-01-28 13:05:59 +01:00
croneter
06f7d88d22 Add a ton of debug logging for library sync to find deadlock 2021-01-28 10:02:55 +01:00
croneter
78f1099a4f Fix PKC not auto-picking audio/subtitle stream when transcoding 2021-01-27 16:28:25 +01:00
croneter
5346a1f0a7 Fix ValueError when deleting a music album 2021-01-27 15:45:09 +01:00
croneter
ae3ea91c10 Fix OSError: Invalid argument when Plex returns an invalid timestamp 2021-01-25 13:01:03 +01:00
croneter
98ac67058e Fix sqlite3.OperationalError on PKC upgrade 2021-01-24 17:02:47 +01:00
croneter
0e6ca0d290 Add some additional exif picture metadata to listitems. But Kodi skins do not seem to be using that info, unfortunately 2021-01-24 16:35:27 +01:00
croneter
dd70170caa Fix pictures from Plex picture libraries not working/displaying 2021-01-24 15:01:55 +01:00
croneter
9d02e19a68 Optimize capitalization 2021-01-24 14:53:43 +01:00
croneter
3825072c5e Alter Plex DB table movie on PKC update to sync TMDB trailers 2021-01-20 17:17:43 +01:00
croneter
c1727e2b5b Look for missing trailers using TMDB 2021-01-20 17:17:43 +01:00
croneter
8fe72d281f
Merge pull request #1265 from Nyaran/feature/py39_thread_is_alive
Change `thread.isAlive` to `thread.is_alive`
2021-01-09 17:46:03 +01:00
croneter
83bb5a54c1
Merge pull request #1272 from croneter/fix-sets
Fix missing Kodi tags for movie collections/sets
2021-01-09 17:45:36 +01:00
croneter
d97a7fdb44 Fix missing Kodi tags for movie collections/sets 2021-01-09 17:31:29 +01:00
croneter
baa2b17615 Fix PKC using main user's token if PMS address changes 2021-01-09 17:25:18 +01:00
croneter
8d34e66764 Improve some code 2021-01-09 17:25:12 +01:00
croneter
a9a4d43cb2 Improve logic when writing credentials to settings file 2021-01-09 17:24:16 +01:00
Nyaran
48034d60ed
Change thread.isAlive to thread.is_alive 2021-01-05 14:11:27 +01:00
croneter
fd001fa496 Fix AttributeError: module has no attribute try_decode 2021-01-03 13:56:08 +01:00
croneter
390a832887 Fix rare KeyError when using PKC widgets 2021-01-02 13:31:50 +01:00
croneter
e2bdfb9c7f Update translations 2021-01-02 13:31:35 +01:00
croneter
b7bc919608 Fix docstrings 2020-12-27 17:31:08 +01:00
croneter
a77c6b81f7 Remove some obsolete imports 2020-12-27 17:29:01 +01:00
croneter
6fa19e3495 Remove some obsolete code for Kodi Krypton 2020-12-27 17:22:23 +01:00
croneter
b4a7a9ec41 Fix function arguments 2020-12-27 17:22:23 +01:00
croneter
5e4cfdef52 Fix docstring 2020-12-27 17:22:22 +01:00
croneter
427fc47e7a Remove obsolete imports 2020-12-27 17:22:22 +01:00
croneter
8f5c64b33e Simplify code 2020-12-27 17:22:16 +01:00
croneter
4cf7c753e0 Remove obsolete function in utils.py 2020-12-27 17:22:16 +01:00
croneter
1f2b19ce42 Cleanup save handling of xml.etree.ElementTree 2020-12-27 17:22:15 +01:00
croneter
0dda58ebd3 Fix utils.py imports 2020-12-27 17:22:15 +01:00
croneter
dc2967c8da Add logic to safely enable the Kodi webserver for artwork caching 2020-12-27 17:22:15 +01:00
croneter
3bfe05c5bb Fix suspension of artwork caching 2020-12-27 17:22:15 +01:00
croneter
9c975cfe24 Fix playlist sync: __bool__ returning str instead of bool 2020-12-27 17:22:15 +01:00
croneter
193778f0f4 Fix hashing for playlists 2020-12-27 17:22:15 +01:00
croneter
88a84672c3 Remove encoding and decoding of filepaths 2020-12-27 17:22:14 +01:00
croneter
5c81c15cfd Fix resume not working 2020-12-27 17:22:14 +01:00
croneter
2ef95b1480 Music: include bitrate for songs (channels + sampling rate won't work yet due to Plex not listing this info for an album's children) 2020-12-27 17:22:14 +01:00
croneter
f4923eda22 Music: sync kodi_type for albums additionally 2020-12-27 16:06:17 +01:00
croneter
4da58d72dd Music: do not sync obsolete artwork 2020-12-27 16:06:17 +01:00
croneter
4b9fda9e81 Music: replace songs's year with release date 2020-12-27 16:06:17 +01:00
croneter
71d0cccdaa Fix lookup including year (iyear) 2020-12-27 16:06:17 +01:00
croneter
b5093eb6be Music: replace album's year with release date 2020-12-27 16:06:17 +01:00
croneter
09b2c54675 Remove Music sync code for older Kodi version before Kodi Matrix 2020-12-27 16:06:17 +01:00
croneter
bd8af8652e Music: remove sync of artist fanart 2020-12-27 16:06:16 +01:00
croneter
da66c62f81 Fix check of exception value 2020-12-27 16:06:16 +01:00
croneter
cc20464c15 Fix backgroundthreads and TypeError '<' not supported between instances 2020-12-27 16:06:16 +01:00
croneter
8bdfcbabc8 Fix Plex GDM discovery request 2020-12-27 13:16:45 +01:00
croneter
8ca9613d62 Fix Plex GDM discovery in local LAN 2020-12-27 13:16:45 +01:00
croneter
cc587ed714 Make seek more resilient. Kodi bug still: JSONRPC error Received value does not match any of the union type definitions 2020-12-27 13:16:45 +01:00
croneter
c22b4c782d Remove obsolete encodes and decodes 2020-12-27 13:16:44 +01:00
croneter
ab73d3c1fd Fix playback not starting 2020-12-27 13:16:44 +01:00
croneter
ae949c45ae Some string encoding fixes 2020-12-27 13:16:44 +01:00
croneter
6904494e31 Get rid of utils.try_encode and utils.try_decode 2020-12-27 13:16:44 +01:00
croneter
d306f36869 More string bytes fixes 2020-12-27 13:16:43 +01:00
croneter
d7525274e9 Fix Queue 2020-12-27 13:16:43 +01:00
croneter
382411bff0 Variety of string and bytes fixes 2020-12-27 13:16:43 +01:00
croneter
e32fa567bc Adjust urllib.parse unquote, quote, quote_plus, unquote 2020-12-27 13:16:42 +01:00
croneter
599f134204 Fix encoding for PKC logging 2020-12-19 07:30:40 +01:00
croneter
1d46779d57 Adjust call signature for json.loads 2020-12-19 07:28:31 +01:00
croneter
a56655356c Depricate listitem.setThumbnailImage and listItem.setIconImage 2020-12-19 07:28:10 +01:00
croneter
dcd6756a7d Fix encoding of file paths 2020-12-18 20:01:06 +01:00
croneter
a1f4bc75e6 Update PKC compatibility checks for Kodi 19 2020-12-18 20:00:14 +01:00
croneter
4b4dc1afbf Fix class __repr__ to account for Python 3 2020-12-18 19:59:33 +01:00
croneter
f771b8d3aa Fix logging for Python 3 2020-12-18 19:32:28 +01:00
croneter
ac4b6fc7b5 Fixes to enable an import of the watchdog module 2020-12-18 18:08:39 +01:00
croneter
750cf953da Update Python watchdog module to 1.0.2 2020-12-18 17:50:39 +01:00
croneter
58eaa14043 Clean up imports 2020-12-18 17:43:24 +01:00
croneter
436b1fda83 Automatically convert source code from Python 2 to 3 using futurize 2020-12-18 17:10:20 +01:00
croneter
7a7ead863d
Merge pull request #1250 from croneter/fix-fanart-matching
Greatly improve matching logic for The Movie Database if Plex does not provide an appropriate id
2020-12-18 15:54:09 +01:00