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.
71 lines
1.2 KiB
71 lines
1.2 KiB
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
|
|
|