From fff3b50074c6a1cec205f19b5a063244bf4b9d3c Mon Sep 17 00:00:00 2001 From: LecygneNoir Date: Sat, 20 Jul 2019 09:04:26 +0200 Subject: [PATCH 1/2] Add the default channel_id when creating a public Peertube playlist, cf #38 --- lib/pt_upload.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/pt_upload.py b/lib/pt_upload.py index 4b38b22..fc5a6b6 100644 --- a/lib/pt_upload.py +++ b/lib/pt_upload.py @@ -65,7 +65,7 @@ def get_playlist_by_name(user_playlists, options): return playlist['id'] -def create_playlist(oauth, url, options): +def create_playlist(oauth, url, options, default_channel): template = ('Peertube: Playlist %s does not exist, creating it.') logging.info(template % (str(options.get('--playlist')))) # We use files for form-data Content @@ -74,7 +74,7 @@ def create_playlist(oauth, url, options): files = {'displayName': (None, str(options.get('--playlist'))), 'privacy': (None, "1"), 'description': (None, "null"), - 'videoChannelId': (None, "null"), + 'videoChannelId': (None, str(default_channel)), 'thumbnailfile': (None, "null")} try: response = oauth.post(url + "/api/v1/video-playlists/", @@ -199,18 +199,18 @@ def upload_video(oauth, secret, options): fields.append(("thumbnailfile", get_file(options.get('--thumbnail')))) fields.append(("previewfile", get_file(options.get('--thumbnail')))) + default_channel = get_default_channel(user_info) + fields.append(("channelId", str(default_channel))) + if options.get('--playlist'): playlist_id = get_playlist_by_name(user_playlists, options) if not playlist_id and options.get('--playlistCreate'): - playlist_id = create_playlist(oauth, url, options) + playlist_id = create_playlist(oauth, url, options, default_channel) elif not playlist_id: logging.warning("Playlist `" + options.get('--playlist') + "` does not exist, please set --playlistCreate" " if you want to create it") exit(1) - default_channel = get_default_channel(user_info) - fields.append(("channelId", str(default_channel))) - multipart_data = MultipartEncoder(fields) headers = { From 384a50ca63be5eb7a9f8e87f5fe33848edebadd4 Mon Sep 17 00:00:00 2001 From: LecygneNoir Date: Sat, 20 Jul 2019 09:06:34 +0200 Subject: [PATCH 2/2] Changelog and bump for hotfix 0.6.3 --- CHANGELOG.md | 5 +++++ prismedia_upload.py | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 403319f..4501f2b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog +## v0.6.3 + +### Fixes +Fix Critical bug #38 that prevent upload when creating playlists on Peertube, as public playlist need a non-null channel_id. + ## v0.6.2 **Warning**: your Peertube instance should be at least in v1.3.0 to use this new functionality. diff --git a/prismedia_upload.py b/prismedia_upload.py index 71ba287..6e4159c 100755 --- a/prismedia_upload.py +++ b/prismedia_upload.py @@ -92,7 +92,7 @@ except ImportError: 'see https://github.com/ahupp/python-magic\n') exit(1) -VERSION = "prismedia v0.6.2" +VERSION = "prismedia v0.6.3" VALID_PRIVACY_STATUSES = ('public', 'private', 'unlisted') VALID_CATEGORIES = (