Scripting way to upload videos to peertube and youtube
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

56 lines
2.2 KiB

import pluginInterfaces as pi
import video as vid
from yapsy.PluginManager import PluginManagerSingleton
def helperFunctionnality(options):
pluginManager = PluginManagerSingleton.get()
optionName = "--hearthbeat"
if options.get(optionName):
for plugin in pluginManager.getPluginsOfCategory(pi.PluginTypes.PLATFORM):
plugin.plugin_object.hearthbeat()
return False
else:
options.pop(optionName)
return True
def parseOptions(options):
video = vid.Video()
video.path = _getOption(options, "--file", video.path)
video.thumbnail = _getOption(options, "--thumbnail", video.thumbnail)
video.name = _getOption(options, "--name", video.name)
video.description = _getOption(options, "--description", video.description)
video.playlistName = _getOption(options, "--playlist", video.playlistName)
video.privacy = _getOption(options, "--privacy", video.privacy)
video.category = _getOption(options, "--category", video.category)
video.tags = _getOption(options, "--tag", video.tags)
video.language = _getOption(options, "--language", video.language)
video.originalDate = _getOption(options, "--original-date", video.originalDate)
# TODO: set as an object: { "all": date1, "platformX": date2, …}?
# Maybe the publishAt by platform is better placed in `self.platform`
# And so publishAt would only contains the global date.
video.publishAt = _getOption(options, "--publish-at", video.publishAt)
# TODO: Add a list of licences
video.licence = _getOption(options, "--licence", video.licence)
video.disableComments = _getOption(options, "--disable-comments", video.disableComments)
video.nsfw = _getOption(options, "--nsfw", video.nsfw)
autoOriginalDate = _getOption(options, "--auto-original-date", False)
if autoOriginalDate:
# TODO: Implement
raise NotImplementedError("--auto-original-date functionnality is not yet implemented.")
return video
def _getOption(options, optionName, defaultValue = None):
value = options.get(optionName)
options.pop(optionName)
if value is None:
return defaultValue
return value