summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorroot <root@krebs>2011-08-04 02:10:00 +0200
committerroot <root@krebs>2011-08-04 02:10:00 +0200
commitb23af0261fceb9856cb49c4654700c2b4ae97ede (patch)
tree9dde73bfdd25515b18ce7f94dfd482641c0aef49
parent35a39cacf2e824dab245e858e1e8a658aeae971b (diff)
added stream module for noise
in /etc/sudoers you will need to add: noise ALL=(ALL) NOPASSWD: /krebs/streams/streams noise/modules/stream: is a sudo wrapper for streams/streams
-rwxr-xr-xnoise/modules/stream66
1 files changed, 2 insertions, 64 deletions
diff --git a/noise/modules/stream b/noise/modules/stream
index 1e6fd0c5..476ffff9 100755
--- a/noise/modules/stream
+++ b/noise/modules/stream
@@ -1,64 +1,2 @@
-#! /bin/sh
-inputdir=$HOME/noise/streams
-basename="`basename "$0"`"
-case "$1" in
- (--help)
- if echo "$0 $*" | grep -q '[[:space:]]--verbose\>'; then
- echo -e "\x1B[35mtype \x1B[32m/$basename off \x1B[35mto turn stream off\x1B[m"
- for i in `ls $inputdir` ; do
- filename="$inputdir/$i"
- shortcut=`xmlstarlet sel -t -v /station/@shortcut "$inputdir/$i"`
- title=`xmlstarlet sel -t -v /station/@title "$inputdir/$i"`
- topic=`xmlstarlet sel -t -v /station/@topic "$inputdir/$i"`
- stream=`xmlstarlet sel -t -v /station/@stream "$inputdir/$i"`
- echo -e "\x1B[35mtype \x1B[32m/$basename $shortcut \x1B[35mfor $topic\x1B[m"
- done
- else
- echo "play an audio stream"
- fi
- ;;
- (*)
- exec 2>&1
- ffs='xml'
-
- if test -z "$*" ; then
- echo -e "\x1B[32m/stream off \x1B[33m- turn stream off\x1B[m"
- for i in `ls $inputdir` ; do
- filename="$inputdir/$i"
- shortcut=`xmlstarlet sel -t -v /station/@shortcut "$inputdir/$i"`
- title=`xmlstarlet sel -t -v /station/@title "$inputdir/$i"`
- topic=`xmlstarlet sel -t -v /station/@topic "$inputdir/$i"`
- stream=`xmlstarlet sel -t -v /station/@stream "$inputdir/$i"`
- echo -e "\x1B[32m/stream $shortcut \x1B[33m- $title \x1B[35m$topic\x1B[m"
- done
- else if [ "$1" = "off" ]; then
- [ ! -d /tmp/noise ] || ( echo "no directory /tmp/noise; aborting" ; exit 1 )
- [ -f /tmp/noise/stream.pid ] && ( kill ` cat /tmp/noise/stream.pid ` )
- [ -e /tmp/noise/stream.pid ] && rm /tmp/noise/stream.pid || ( echo "can't remove /tmp/noise/stream.pid; aborting" ; exit 1 )
- else
- for i in `ls $inputdir` ; do
- filename="$inputdir/$i"
- shortcut=`xmlstarlet sel -t -v /station/@shortcut "$inputdir/$i"`
- stream=`xmlstarlet sel -t -v /station/@stream "$inputdir/$i"`
- if [ "$shortcut" == "$1" ]; then
- [ ! -d /tmp/noise ] || ( umask 077 ; mkdir /tmp/noise ) || ( echo "can't create /tmp/noise; aborting" ; exit 1 )
- [ -f /tmp/noise/stream.pid ] && ( kill ` cat /tmp/noise/stream.pid ` )
- [ -e /tmp/noise/stream.pid ] && rm /tmp/noise/stream.pid || ( echo "can't remove /tmp/noise/stream.pid; aborting" ; exit 1 )
- mplayer -cache 2048 -quiet "$stream" &
- ( umask 077 ; echo $! > /tmp/noise/stream.pid )
- break
- fi
- done || cat<<EOF
-\
-Keine Audiostreambeschreibung mit dem Namen
-
- $1.EXT
-
-gefunden... am besten gleich anlegen:
-
- ssh shack@shack.shack:noise/streams/
-
-folgende Dateiendungen werden erkannt: $ffs
-EOF
- fi fi
-esac
+#!/bin/sh
+sudo -u krebs /krebs/streams/streams "$@"