57 lines
1.6 KiB
Bash
Executable file
57 lines
1.6 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
function upload_to_upstream () {
|
|
api_key=$1
|
|
filepath=$2
|
|
|
|
filepath=$( readlink -f "$filepath" )
|
|
# echo "filepath: $filepath" >&2
|
|
filesize=$(stat -c%s "$filepath")
|
|
# echo "filesize: $filesize" >&2
|
|
|
|
|
|
upload_server=$(curl -s -X GET "https://upstream.to/api/upload/server?key=$api_key" -H "Content-Type: application/json")
|
|
echo "Upload_URL $upload_server" >&2
|
|
upload_server=$(echo $upload_server | jq ".result")
|
|
upload_server=${upload_server//\"}
|
|
echo "Location: $upload_server" >&2
|
|
|
|
hoster_url=$(curl -X POST -F key=$api_key -F "file=@\"$filepath\"" $upload_server)
|
|
|
|
echo "result: $hoster_url" >&2
|
|
|
|
hoster_url=$(echo $hoster_url | jq ".files")
|
|
# hoster_filename=$(echo $hoster_url | jq ".name")
|
|
hoster_url=$(echo $hoster_url | jq ".[0]")
|
|
hoster_url=$(echo $hoster_url | jq ".filecode")
|
|
hoster_url=${hoster_url//\"}
|
|
|
|
if [ "$hoster_url" != "" ] && [ "$hoster_url" != "null" ]; then
|
|
echo "https://upstream.to/$hoster_url"
|
|
else
|
|
echo ""
|
|
fi
|
|
}
|
|
|
|
function upstream_check_if_file_is_alive () {
|
|
file_url=$2
|
|
api_key=$1
|
|
|
|
file_id=${file_url##*/}
|
|
>&2 echo "File ID: $file_id"
|
|
|
|
response=$(curl -s -X GET "https://upstream.to/api/file/info?key=$api_key&file_code=$file_id" -H "Content-Type: multipart/form-data")
|
|
>&2 echo "Response: $response"
|
|
|
|
is_alive=$(echo $response | jq ".result")
|
|
is_alive=$(echo $is_alive | jq ".[0]")
|
|
is_alive=$(echo $is_alive | jq ".status")
|
|
|
|
if [ "$is_alive" == "\"Not found\"" ]; then
|
|
echo "false"
|
|
elif [ $is_alive = '200' ]; then
|
|
echo "true"
|
|
else
|
|
echo "false"
|
|
fi
|
|
}
|