Files
stormbot/functions.sh

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"
}