#!/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" }