#!/bin/bash set -e usage () { cat <&2; exit 1 ;; esac senderinfo="$1" rcpts="$2" msg="$3" exec <"$senderinfo" while read settingname value; do case "$settingname" in #*|'') continue;; *) vn=PIZZANOTIFY_$settingname eval "$vn=\"\$value\"" export $vn ;; esac done exec <"$rcpts" line=0 while read method data; do line=$(( $line+1 )) case "$method" in #*|'') continue ;; [^a-z]*) echo >&2 "huh ? $rcpts:$line: $method"; continue ;; esac log=log-$method-$line.txt exec >$log set +e printf >&2 "$method" exec 3>&2 2>&1 set -x ./"via-$method" "$msg" $data 2>&1 rc=$? set +x exec 2>&3 3>&- set -e if [ $rc != 0 ]; then printf >&2 -- "-FAIL:%s\n" $log else printf >&2 " " fi done exec >&2 echo >&2