#!/bin/bash

NICK="luglog"
SERVER="irc.freenode.net"
CHAN="#rhlug"

CMD="/tmp/luglog.cmd"
FIFODIR="/tmp/logview_fifos"
LOGDIR="$HOME/log/irc"
FMTCMD="date +%Y-%m.log"

[ -e $FIFODIR ] || install -g apache -m 775 -d $FIFODIR
[ -e $CMD     ] || mkfifo $CMD

# attempt to restart after netcuts and timeouts
while true; do
	cat $CMD |
	$HOME/local/bin/sic -h $SERVER -n $NICK | 
	while read -r line; do
		echo "DEGUG: $line" 1>&2
		if [[ "$line" =~ ^irc.freenode.net\ .*\ NOTICE\ $NICK ]]; then
			echo "JOINING CHANNEL" 1>&2
			echo ":j $CHAN"
		fi
		if [[ "$line" =~ ^($CHAN.*|.*>< (JOIN|QUIT|KICK|MODE|PART|NICK)) ]]; then
			log=$LOGDIR/$($FMTCMD)
			echo "LOGGING LINE TO [$log]" 1>&2
			echo "$line" | tee "$FIFODIR/*" >> "$log"
		fi
	done > $CMD
	sleep 30
done
