#!/bin/sh
ALERTTYPE=`uci -q get alert.$INTERFACE.alert_type || echo 0`
EVENTTYPE=`uci -q get alert.$INTERFACE.event_type || echo 0`
PROFILE_NUMBER=`uci -q get alert.$INTERFACE.profile_number || echo 0`
[ "$ALERTTYPE" == "0" -o "$EVENTTYPE" == "0" ] && return 0

if [ "$ALERTTYPE" == "1" ]; then
	ALERTTYPE="MAIL"
elif [ "$ALERTTYPE" == "2" ]; then
	ALERTTYPE="SMS"
elif [ "$ALERTTYPE" == "3" ]; then
	ALERTTYPE="ALL"
else
	return 0
fi

ALERTCODE=0

case $INTERFACE in
	"wan")
		case $ACTION in
			"ifup")
				[ "$EVENTTYPE" == "1" -o "$EVENTTYPE" == "3" ] && ALERTCODE=1 || return 0
			;;
			"ifdown")
				[ "$EVENTTYPE" == "2" -o "$EVENTTYPE" == "3" ] && ALERTCODE=2 || return 0
			;;
			*)
				return 0
			;;
		esac
	;;
	"voipwan")
		case $ACTION in
			"ifup")
				[ "$EVENTTYPE" == "1" -o "$EVENTTYPE" == "3" ] && ALERTCODE=3 || return 0
			;;
			"ifdown")
				[ "$EVENTTYPE" == "2" -o "$EVENTTYPE" == "3" ] && ALERTCODE=4 || return 0
			;;
			*)
				return 0
			;;
		esac
	;;
	"iptvwan")
		case $ACTION in
			"ifup")
				[ "$EVENTTYPE" == "1" -o "$EVENTTYPE" == "3" ] && ALERTCODE=5 || return 0
			;;
			"ifdown")
				[ "$EVENTTYPE" == "2" -o "$EVENTTYPE" == "3" ] && ALERTCODE=6 || return 0
			;;
			*)
				return 0
			;;
		esac
	;;
	"mngtwan")
		case $ACTION in
			"ifup")
				[ "$EVENTTYPE" == "1" -o "$EVENTTYPE" == "3" ] && ALERTCODE=7 || return 0
			;;
			"ifdown")
				[ "$EVENTTYPE" == "2" -o "$EVENTTYPE" == "3" ] && ALERTCODE=8 || return 0
			;;
			*)
				return 0
			;;
		esac
	;;
	"3gwan")
		case $ACTION in
			"ifup")
				[ "$EVENTTYPE" == "1" -o "$EVENTTYPE" == "3" ] && ALERTCODE=9 || return 0
			;;
			"ifdown")
				[ "$EVENTTYPE" == "2" -o "$EVENTTYPE" == "3" ] && ALERTCODE=10 || return 0
			;;
			*)
				return 0
			;;
		esac
	;;
	*)
		return 0
	;;
esac

[ "$ALERTCODE"!="0" ] && sh /sbin/SendAlert.sh "$ALERTTYPE" "$ALERTCODE" "$PROFILE_NUMBER" 2>/dev/null