Cleaned up the code a bit, the formatting at least, there's plenty more to do.
This commit is contained in:
parent
273e24a63a
commit
5984a2dbb2
56
bot.sh
56
bot.sh
@ -1,15 +1,14 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
if [ "$(whoami)" = "root" ]; then
|
if [ "$(whoami)" = "root" ]; then
|
||||||
echo "This bot should not be ran as root."
|
echo "This bot should not be ran as root."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
[ -f functions.sh ] && source functions.sh
|
[ -f functions.sh ] && source functions.sh
|
||||||
[ -f bot.cfg ] && source bot.cfg
|
[ -f bot.cfg ] && source bot.cfg
|
||||||
input=".botinput"
|
input=".botinput"
|
||||||
|
|
||||||
close_bot()
|
close_bot() {
|
||||||
{
|
|
||||||
echo -en "QUIT :$quitMessage\r\n" >> "$input"
|
echo -en "QUIT :$quitMessage\r\n" >> "$input"
|
||||||
rm "$input"
|
rm "$input"
|
||||||
exit 0
|
exit 0
|
||||||
@ -22,8 +21,7 @@ echo "NICK $nick" > "$input"
|
|||||||
echo "USER $user" >> "$input"
|
echo "USER $user" >> "$input"
|
||||||
echo "JOIN #$channel" >> "$input"
|
echo "JOIN #$channel" >> "$input"
|
||||||
|
|
||||||
tail -f "$input" | telnet "$server" "$port" | while read result
|
tail -f "$input" | telnet "$server" "$port" | while read -r result ; do
|
||||||
do
|
|
||||||
# log the session
|
# log the session
|
||||||
echo "$(date "+[$dateFormat]") $result" >> "$log"
|
echo "$(date "+[$dateFormat]") $result" >> "$log"
|
||||||
# do things when you see output
|
# do things when you see output
|
||||||
@ -60,9 +58,9 @@ do
|
|||||||
fi
|
fi
|
||||||
echo "MODE #$channel +o $who" | tee -a "$input"
|
echo "MODE #$channel +o $who" | tee -a "$input"
|
||||||
if [ "${greet^^}" = "TRUE" ]; then
|
if [ "${greet^^}" = "TRUE" ]; then
|
||||||
set -f
|
set -f
|
||||||
./triggers/greet/greet.sh "$who" "$from"
|
./triggers/greet/greet.sh "$who" "$from"
|
||||||
set +f
|
set +f
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
# run when someone leaves
|
# run when someone leaves
|
||||||
@ -75,9 +73,9 @@ set +f
|
|||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
if [ "${leave^^}" = "TRUE" ]; then
|
if [ "${leave^^}" = "TRUE" ]; then
|
||||||
set -f
|
set -f
|
||||||
./triggers/bye/bye.sh "$who" "$from"
|
./triggers/bye/bye.sh "$who" "$from"
|
||||||
set +f
|
set +f
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
# run when a message is seen
|
# run when a message is seen
|
||||||
@ -102,23 +100,23 @@ set +f
|
|||||||
will="${command#* }"
|
will="${command#* }"
|
||||||
command="${command%% *}"
|
command="${command%% *}"
|
||||||
if command -v "./modules/${command% *}/${command% *}.sh" ; then
|
if command -v "./modules/${command% *}/${command% *}.sh" ; then
|
||||||
echo "Calling module ./modules/${command% *}/${command% *}/${command% *}.sh \"$who\" \"$from\" $will" >> "$log"
|
echo "Calling module ./modules/${command% *}/${command% *}/${command% *}.sh \"$who\" \"$from\" $will" >> "$log"
|
||||||
# Disable wildcards
|
# Disable wildcards
|
||||||
set -f
|
set -f
|
||||||
./modules/${command% *}/${command% *}.sh "$who" "$from" $will
|
./modules/${command% *}/${command% *}.sh "$who" "$from" $will
|
||||||
# Enable wildcards
|
# Enable wildcards
|
||||||
set +f
|
set +f
|
||||||
else
|
|
||||||
./modules/say/say.sh "$who" "$from" "$who: $(shuf -n1 "response/error.txt")"
|
|
||||||
fi
|
|
||||||
else
|
else
|
||||||
set -f
|
./modules/say/say.sh "$who" "$from" "$who: $(shuf -n1 "response/error.txt")"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
set -f
|
||||||
./triggers/keywords/keywords.sh "$who" "$from" "$result"
|
./triggers/keywords/keywords.sh "$who" "$from" "$result"
|
||||||
set +f
|
set +f
|
||||||
fi
|
fi
|
||||||
# "#" would mean it's a channel
|
# "#" would mean it's a channel
|
||||||
if [ "$(echo "$from" | grep '#')" ]; then
|
if [ "$(echo "$from" | grep '#')" ]; then
|
||||||
test "$(echo "$result" | grep ":$nick:")" || continue
|
[[ "$(echo "$result" | grep ":$nick:")" ]] || continue
|
||||||
will="${result#*#*:}"
|
will="${result#*#*:}"
|
||||||
will="${will#*:}"
|
will="${will#*:}"
|
||||||
else
|
else
|
||||||
@ -133,14 +131,14 @@ set -f
|
|||||||
command="${will%% *}"
|
command="${will%% *}"
|
||||||
will="${will#* }"
|
will="${will#* }"
|
||||||
if [ -z "$(ls modules/ | grep -i -- "$command")" ] || [ -z "$command" ]; then
|
if [ -z "$(ls modules/ | grep -i -- "$command")" ] || [ -z "$command" ]; then
|
||||||
set -f
|
set -f
|
||||||
./modules/help/help.sh "$who" "$from"
|
./modules/help/help.sh "$who" "$from"
|
||||||
set +f
|
set +f
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
set -f
|
set -f
|
||||||
./modules/$command/$command.sh "$who" "$from" $will
|
./modules/$command/$command.sh "$who" "$from" $will
|
||||||
set +f
|
set +f
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "$result" >> "$log"
|
echo "$result" >> "$log"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user