54 lines
1.0 KiB
Bash
54 lines
1.0 KiB
Bash
#!/bin/bash
|
|
|
|
if [[ -z "$input" ]]; then
|
|
input="$(mktemp .XXXXXX)"
|
|
fi
|
|
|
|
# Check if required dependencies are available
|
|
# Usage: check_dependencies "command1" "command2" ...
|
|
# Returns 0 if all found, 1 if any missing
|
|
check_dependencies() {
|
|
local missing=()
|
|
local cmd
|
|
for cmd in "$@"; do
|
|
if ! command -v "$cmd" &> /dev/null; then
|
|
missing+=("$cmd")
|
|
fi
|
|
done
|
|
|
|
if [[ ${#missing[@]} -gt 0 ]]; then
|
|
echo "Missing dependencies: ${missing[*]}"
|
|
return 1
|
|
fi
|
|
return 0
|
|
}
|
|
|
|
close_bot() {
|
|
intentionalExit=true
|
|
echo -en "QUIT :${quitMessage}\r\n" >> "$input"
|
|
}
|
|
|
|
msg() {
|
|
local msg="PRIVMSG $1 :"
|
|
shift
|
|
echo -en "${msg}${*}\r\n" | tee -a "$input"
|
|
}
|
|
|
|
nick() {
|
|
local msg="NICK $1"
|
|
shift
|
|
echo -en "${msg}\r\n" | tee -a "$input"
|
|
}
|
|
|
|
reply() {
|
|
shift
|
|
local msg="PRIVMSG $1 :"
|
|
echo -en "${msg}${*}\r\n" | tee -a "$input"
|
|
}
|
|
|
|
act() {
|
|
local msg="PRIVMSG $1 :\x01ACTION"
|
|
shift
|
|
echo -en "$msg ${*}\x01\r\n" | tee -a "$input"
|
|
}
|