CHANNEL_ID=$1 FILE_PATH=$2 CONF_FILE_PATH=pt.conf if [ ! -f $CONF_FILE_PATH ]; then echo "Config file not found...." && exit 1; fi PT_HOST=$(cat $CONF_FILE_PATH | jq -r .host) PT_TOKEN=$(cat $CONF_FILE_PATH | jq -r .access_token) # parse args if [ -z "$1" ] || [ -z "$2" ]; then echo "Usage:\n\tpeertube_upload.sh [channel_id] [file]\n" && exit 1; fi # check for upload file if [ ! -f "$FILE_PATH" ]; then echo "Upload file not found...." && exit 1; fi echo UPLOAD_NAME=$(basename "$FILE_PATH" | sed 's/\(.*\)\..*/\1/') echo .... echo "Host: $PT_HOST" echo .... echo echo "File path: $FILE_PATH" echo "Uploading file: $UPLOAD_NAME...." #echo "Name: ${UPLOAD_NAME%%.*}" echo .... TMPF=$(mktemp) echo Uploading.... curl -H "Authorization: Bearer $PT_TOKEN" https://$PT_HOST/api/v1/videos/upload --max-time 600 \ --form videofile=@"$FILE_PATH" \ --form channelId=$CHANNEL_ID \ --form privacy=1 \ --form name="$UPLOAD_NAME" > $TMPF # 1=Public, 2=Unlisted, 3=Private, 4=Internal echo echo .... if ! $(cat $TMPF | jq -e .error > /dev/null); then echo [#] ok.... else echo [#] error..... echo Error: $(cat $TMPF | jq -r -C .error) fi rm $TMPF echo