mirror of
https://github.com/danog/id3bot.git
synced 2024-11-30 04:19:02 +01:00
Rewrite
This commit is contained in:
parent
0dec976985
commit
8a8cd3c9db
@ -7,8 +7,7 @@
|
||||
|
||||
# Depends on JSON.sh (http://github.com/dominictarr/JSON.sh) (MIT/Apache),
|
||||
# and on tmux (http://github.com/tmux/tmux) (BSD).
|
||||
# This file is public domain in the USA and all free countries.
|
||||
# Elsewhere, consider it to be WTFPLv2. (wtfpl.net/txt/copying)
|
||||
# Licensed under gplv3
|
||||
|
||||
if [ ! -f "JSON.sh/JSON.sh" ]; then
|
||||
echo "You did not clone recursively! Downloading JSON.sh..."
|
||||
|
21
commands.sh
21
commands.sh
@ -1,8 +1,7 @@
|
||||
#!/bin/bash
|
||||
# Edit your commands in this file.
|
||||
|
||||
# This file is public domain in the USA and all free countries.
|
||||
# Elsewhere, consider it to be WTFPLv2. (wtfpl.net/txt/copying)
|
||||
# Licensed under gplv3
|
||||
|
||||
if [ "$1" = "source" ];then
|
||||
# Place the token in the token file
|
||||
@ -14,8 +13,6 @@ if [ "$1" = "source" ];then
|
||||
FILE_REGEX='.*'
|
||||
else
|
||||
if ! tmux ls | grep -v send | grep -q $copname; then
|
||||
[ ! -z ${URLS[*]} ] && {
|
||||
}
|
||||
[ ! -z ${LOCATION[*]} ] && send_location "${USER[ID]}" "${LOCATION[LATITUDE]}" "${LOCATION[LONGITUDE]}"
|
||||
|
||||
# Inline
|
||||
@ -51,8 +48,18 @@ else
|
||||
'/start')
|
||||
send_message "${USER[ID]}" "This bot can be used to edit the id3 tags of audio files.
|
||||
Available commands:
|
||||
• /start: Start bot and start editing process.
|
||||
• /cancel: Cancel any currently running interactive chats.
|
||||
• /start: Start bot and start editing process.
|
||||
• /cancel: Cancel any currently running interactive chats.
|
||||
• /artist "ARTIST" Set the artist information
|
||||
• /album "ALBUM" Set the album title information
|
||||
• /song "SONG" Set the song title information
|
||||
• /comment "DESCRIPTION":"COMMENT":"LANGUAGE" Set the comment information (both description and language optional)
|
||||
• /genre num Set the genre number
|
||||
• /year num Set the year
|
||||
• /track num/num Set the track number/(optional) total tracks
|
||||
• /art URL or image Set the album art.
|
||||
• /done End the process
|
||||
|
||||
Written by Daniil Gentili (@danogentili, https://daniil.it).
|
||||
Check out my other bots: @video_dl_bot, @mklwp_bot, @caption_ai_bot, @cowsaysbot, @cowthinksbot, @figletsbot, @lolcatzbot, @filtersbot, @id3bot, @pwrtelegrambot
|
||||
https://github.com/danog/id3bot
|
||||
@ -64,7 +71,7 @@ https://github.com/danog/id3bot
|
||||
if tmux ls | grep -q $copname; then killproc && send_message "${USER[ID]}" "Command canceled.";else send_message "${USER[ID]}" "No command is currently running.";fi
|
||||
;;
|
||||
*)
|
||||
if tmux ls | grep -v send | grep -q $copname;then inproc; else send_message "${USER[ID]}" "$MESSAGE" "safe";fi
|
||||
if tmux ls | grep -v send | grep -q $copname;then inproc; fi
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
68
question
68
question
@ -2,7 +2,7 @@
|
||||
|
||||
# Licensed under GPLV3
|
||||
|
||||
echo "Send me the audio files that you whish to modify (up to 1.5 gigabytes thanks to @pwrtelegram)"
|
||||
echo "Send me the audio files that you wish to modify (up to 1.5 gigabytes thanks to @pwrtelegram)"
|
||||
read url
|
||||
url=$(echo "$url" | sed 's/^\s*//g;s/\s*$//g')
|
||||
name="$RANDOM"$(basename "$url")
|
||||
@ -10,16 +10,66 @@ wget "$url" -qO /tmp/"$name" || { echo "Couldn't download file. Please try again
|
||||
mimetype "$name" | sed 's/.*\s//' | grep -qE '^audio/' || { echo "You didn't send me an audio file."; rm "$NAME" &>/dev/null; exit 1; }
|
||||
|
||||
help=$(id3v2 --help 2>&1)
|
||||
echo "Now send me the following tags (send null to ignore tag)"
|
||||
for f in artist album song comment genre year track;do
|
||||
echo "$help" | sed '/\-\-'$f'/!d;s/.*\-\-'$f'//g'
|
||||
case "$f" in
|
||||
"comment") echo "Set the comment information (both description and language optional)";;
|
||||
"genre") id3v2 -L | tr -s '\n' ", " | tr -d '&';echo;;
|
||||
esac
|
||||
echo "Now send me the appropriate command to set the the id3 tags, type /done when you're done."
|
||||
|
||||
until [ "$read" == "/done" ];do
|
||||
read "read"
|
||||
[ "$read" != "null" ] && id3v2 --$f "$read" "$name"
|
||||
case "$read" in
|
||||
"/artist")
|
||||
echo "Send me the artist information"
|
||||
read wut
|
||||
id3v2 --artist "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
||||
;;
|
||||
"/album")
|
||||
echo "Send me the album information"
|
||||
read wut
|
||||
id3v2 --album "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
||||
;;
|
||||
"/song")
|
||||
echo "Send me the song's name"
|
||||
read wut
|
||||
id3v2 --song "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
||||
|
||||
;;
|
||||
"/comment")
|
||||
echo "Send me some comments in the format DESCRIPTION:COMMENT:LANGUAGE"
|
||||
read wut
|
||||
id3v2 --comment "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
||||
;;
|
||||
"/genre")
|
||||
echo "Send me the genre number"
|
||||
echo "Available genres: 0: Blues, 1: Classic Rock, 2: Country, 3: Dance, 4: Disco, 5: Funk, 6: Grunge, 7: Hip-Hop, 8: Jazz, 9: Metal, 10: New Age, 11: Oldies, 12: Other, 13: Pop, 14: RB, 15: Rap, 16: Reggae, 17: Rock, 18: Techno, 19: Industrial, 20: Alternative, 21: Ska, 22: Death Metal, 23: Pranks, 24: Soundtrack, 25: Euro-Techno, 26: Ambient, 27: Trip-Hop, 28: Vocal, 29: Jazz Funk, 30: Fusion, 31: Trance, 32: Classical, 33: Instrumental, 34: Acid, 35: House, 36: Game, 37: Sound Clip, 38: Gospel, 39: Noise, 40: AlternRock, 41: Bass, 42: Soul, 43: Punk, 44: Space, 45: Meditative, 46: Instrumental Pop, 47: Instrumental Rock, 48: Ethnic, 49: Gothic, 50: Darkwave, 51: Techno-Industrial, 52: Electronic, 53: Pop-Folk, 54: Eurodance, 55: Dream, 56: Southern Rock, 57: Comedy, 58: Cult, 59: Gangsta, 60: Top 40, 61: Christian Rap, 62: Pop/Funk, 63: Jungle, 64: Native American, 65: Cabaret, 66: New Wave, 67: Psychedelic, 68: Rave, 69: Showtunes, 70: Trailer, 71: Lo-Fi, 72: Tribal, 73: Acid Punk, 74: Acid Jazz, 75: Polka, 76: Retro, 77: Musical, 78: Rock Roll, 79: Hard Rock, 80: Folk, 81: Folk-Rock, 82: National Folk, 83: Swing, 84: Fast Fusion, 85: Bebob, 86: Latin, 87: Revival, 88: Celtic, 89: Bluegrass, 90: Avantgarde, 91: Gothic Rock, 92: Progressive Rock, 93: Psychedelic Rock, 94: Symphonic Rock, 95: Slow Rock, 96: Big Band, 97: Chorus, 98: Easy Listening, 99: Acoustic,100: Humour,101: Speech,102: Chanson,103: Opera,104: Chamber Music,105: Sonata,106: Symphony,107: Booty Bass,108: Primus,109: Porn Groove,110: Satire,111: Slow Jam,112: Club,113: Tango,114: Samba,115: Folklore,116: Ballad,117: Power Ballad,118: Rhythmic Soul,119: Freestyle,120: Duet,121: Punk Rock,122: Drum Solo,123: A capella,124: Euro-House,125: Dance Hall,126: Goa,127: Drum Bass,128: Club-House,129: Hardcore,130: Terror,131: Indie,132: Britpop,133: Negerpunk,134: Polsk Punk,135: Beat,136: Christian Gangsta Rap,137: Heavy Metal,138: Black Metal,139: Crossover,140: Contemporary Christian,141: Christian Rock ,142: Merengue,143: Salsa,144: Thrash Metal,145: Anime,146: JPop,147: Synthpop."
|
||||
read wut
|
||||
id3v2 --genre "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
||||
;;
|
||||
"/year")
|
||||
echo "Send me the year"
|
||||
read wut
|
||||
id3v2 --year "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
||||
;;
|
||||
"/track")
|
||||
echo "Send me the the track number in the format track number/(optional) total tracks"
|
||||
read wut
|
||||
id3v2 --track "$wut" /tmp/"$name" || { echo "Couldn't set id3 tag."; continue; };
|
||||
;;
|
||||
"/art")
|
||||
echo "Send me the album art (URL or image)"
|
||||
read art
|
||||
extension="${art##*.}"
|
||||
wget "$art" -qO /tmp/"$name"art."$extension" || { echo "Couldn't download file. Please try again in a few minutes."; rm /tmp/"$name"art."$extension"; continue; }
|
||||
echo "Removing old images..."
|
||||
eyeD3 --remove-images /tmp/"$name" &>/dev/null
|
||||
echo "Adding new image..."
|
||||
eyeD3 --add-image=/tmp/"$name"art."$extension":FRONT_COVER /tmp/"$name" &>/dev/null || { echo "Couldn't insert album art. Please check the image format."; rm /tmp/"$name"art."$extension"; continue; }
|
||||
rm /tmp/"$name"art."$extension"
|
||||
;;
|
||||
"/done")
|
||||
break
|
||||
;;
|
||||
esac
|
||||
echo "Done."
|
||||
done
|
||||
|
||||
echo "Send /start to restart the process and check out my other bots: @video_dl_bot, @mklwp_bot, @caption_ai_bot, @cowsaysbot, @cowthinksbot, @figletsbot, @lolcatzbot, @filtersbot, @id3bot, @pwrtelegrambot"
|
||||
echo "myfilelocationstartshere /tmp/$name"
|
||||
exit
|
||||
|
Loading…
Reference in New Issue
Block a user