annna-message-radio - annna - Annna the nice friendly bot. HTML git clone git://bitreich.org/annna/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/annna/ DIR Log DIR Files DIR Refs DIR Tags DIR README --- annna-message-radio (1935B) --- 1 #!/bin/sh -e 2 3 export PATH="/br/bin:$PATH" 4 5 cfgbase="$(pwd)" 6 ircbase="$(cat ${cfgbase}/ircbase)" 7 modbase="$(cat ${cfgbase}/modbase)" 8 9 server="$1" 10 ircuser="$(cat ${cfgbase}/${server}/ircuser)" 11 channel="$2" 12 user="$3" 13 text="$4" 14 cmd="$5" 15 16 [ "$user" = "${ircuser}" ] && exit 17 18 case "${text}" in 19 "${ircuser}, next song please.") /usr/bin/mpc -q next; exit;; 20 "${ircuser}, prev song please.") /usr/bin/mpc -q prev; exit;; 21 "${ircuser}, please shuffle.") /usr/bin/mpc -q shuffle; exit;; 22 "${ircuser}, please toggle random.") /usr/bin/mpc -q random; exit;; 23 "${ircuser}, please toggle single.") /usr/bin/mpc -q single; exit;; 24 "${ircuser}, please toggle consume.") /usr/bin/mpc -q consume; exit;; 25 "${ircuser}, please rescan.") /usr/bin/mpc -q rescan; exit;; 26 "${ircuser}, how many people listen to the radio?") 27 annna-say -s "${server}" -c "${channel}" "${user}, $(/br/bin/bitreich-radio-listener-count)" 28 exit;; 29 "${ircuser}, please radio play "*) 30 url="$(printf "%s\n" "${text}" | cut -c 25- | sed 's,\t, ,g')" 31 { 32 ytdl-mpd -a -m -q "$url" 33 annna-say -s "${server}" -c "${channel}" "Your download ${url} is done." 34 } & 35 exit;; 36 "${ircuser}, please radio say "*) 37 word="$(printf "%s\n" "${text}" | cut -c 25- | sed 's,\t, ,g')" 38 { 39 printf "%s\n" "${word}" | bitreich-radio-speak 40 annna-say -s "${server}" -c "${channel}" "The speech is done." 41 } & 42 exit;; 43 "${ircuser}, please stop speaking on radio.") 44 if pkill -f bitreich-radio-speak >/dev/null 2>&1; 45 then 46 annna-say -s "${server}" -c "${channel}" "${user}, I stopped speaking." 47 else 48 annna-say -s "${server}" -c "${channel}" "${user}, sorry, no instances found." 49 fi 50 exit;; 51 "${ircuser}, please radio status.") 52 mpc_status="$(/usr/bin/mpc status | grep '\[.*\]' -o | tr -d '[]')" 53 [ -z "$mpc_status" ] && mpc_status="gone" 54 annna-say -s "${server}" -c "${channel}" "The radio is ${mpc_status}." 55 exit;; 56 esac 57 58 annna-message-common "${server}" "${channel}" "${user}" "${text}" "${cmd}" 59