astroport/zen/miam_miam.sh

128 lines
4.6 KiB
Bash
Executable File

#!/bin/bash
########################################################################
# Author: Fred (support@qo-op.com)
# Version: 2020.04.16
# License: AGPL-3.0 (https://choosealicense.com/licenses/agpl-3.0/)
########################################################################
MY_PATH="`dirname \"$0\"`" # relative
MY_PATH="`( cd \"$MY_PATH\" && pwd )`" # absolutized and normalized
ME="${0##*/}"
########################################################################
# \\///
# qo-op
############# '$ME' HELLO!! I am getting files from ~/.zen/miam
########################################################################
# ex: '$MY_PATH'/'$ME'
# MOVE ~/.zen/miam/* IN ZenTag AS PASSENGER
# Then find SSB same timestamp message and make a reply ;)
########################################################################
# [ASTROPORT](https://astroport.com)
########################################################################
echo '
___
|\/| | /\ |\/| |_ ._ _ ._
| | _|_ /--\ | | | | |_| | | (_| | \/
_| /
'
tstamp="$1"
# for tstamp in $(ls ~/.zen/miam/); do
[[ $tstamp == "" ]] && echo "MISSING tstamp $tstamp" && exit 1
[ ! -d ~/.zen/miam/$tstamp ] && echo "NOT FOUND ~/.zen/miam/$tstamp" && exit 1
[ -f ~/.zen/miam/$tstamp/msg_key ] && msg_key=$(cat ~/.zen/miam/$tstamp/msg_key) || echo "HEY I cannot find source SSB message in $tstamp" || exit 1
echo "$msg_key"
msg=$(sbotc get '{"id":"'"$msg_key"'"}')
[[ $msg == "" ]] && echo "No SSB message for $tstamp" && continue
msg_root=$(printf %s "$msg" | jq -r .value.content.root)
msg_branch=$(printf %s "$msg" | jq -r .value.content.branch)
# TREATING miam $tstamp FILES
echo "##############################################################"
for file in ~/.zen/miam/$tstamp/*; do
# file --mime-type "$file"
filename=$(basename -- "$file")
extension="${filename##*.}"
filena="${filename%.*}"
case "$extension" in
json)
JSON="$file"
echo "# METADATA FILE"
echo "$filename"
extractor=$(cat "$file" | jq -r '.extractor')
if [[ $extractor == "youtube" ]]; then
id=$(cat "$file" | jq -r '.id')
fulltitle=$(cat "$file" | jq -r '.fulltitle')
description=$(cat "$file" | jq -r '.description')
artist=$(cat "$file" | jq -r '.artist')
album=$(cat "$file" | jq -r '.album')
duration=$(cat "$file" | jq -r '.duration')
upload_date=$(cat "$file" | jq -r '.upload_date')
uploader_id=$(cat "$file" | jq -r '.uploader_id')
echo "YOUTUBE: $id : $fulltitle ($duration s) by $uploader_id "
else
echo "ERROR Unknown METADATA TYPE, please add some code here..." && JSON=""
fi
continue
;;
jpg)
JPG="$file"
echo "# THUMBNAIL FILE"
echo "$filename"
convert "$file" -strip -resize 640 -format jpg ~/.zen/miam/$tstamp/ssb_thumb.jpg
continue
;;
mp4)
MP4="$file"
echo "# VIDEO FILE"
echo "$filename"
continue
;;
mp3)
MP3="$file"
echo "# AUDIO FILE"
echo "$filename"
continue
;;
*)
echo "TYPE is UNKNOWN for $file" && UNKOWN="$file"
continue
;;
esac
done
# File analyse finished...
# WHAT DO WE HAVE THERE?
[[ "$JSON" == "" ]] && echo "NO METADATA !!!!" \
&& echo "BAD PASSENGER ERASING ~/.zen/miam/$tstamp" && rm -Rf ~/.zen/miam/$tstamp \
&& exit 1
[[ -f $MP3 ]] && $MY_PATH/zen_MAKE.sh "1000" "$tstamp" "$MP3" "$JSON" "10" "10"
[[ -f $MP4 ]] && $MY_PATH/zen_MAKE.sh "1000" "$tstamp" "$MP4" "$JSON" "10" "10"
# [[ -f $MP3 ]] && mv "$MP3" "~/.zen/audio/$fulltitle.mp3" # && lltag -a "$artist" -A "$album" -t "$fulltitle" "~/.zen/audio/$fulltitle.mp3"
# [[ -f $MP4 ]] && mv "$MP4" "~/.zen/video/$fulltitle.mp4"
# CLEAN A LITTLE
UNKOWN=""
MP3=""
MP4=""
JPG=""
JSON=""
[[ -d ~/.zen/miam/$tstamp && "$tstamp" != "" ]] && rm -Rf ~/.zen/miam/$tstamp && echo "# DELETE miam, it has been EATEN"
exit 0
#done