40 lines
912 B
Bash
Executable file
40 lines
912 B
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
if [[ ! -f "$HOME/.private/config/pushover.conf" ]]; then
|
|
>&2 echo "No pushover config file found (~/.private/config/pushover.conf)"
|
|
exit 1
|
|
fi
|
|
|
|
message=
|
|
title=
|
|
priority=
|
|
url=
|
|
device=
|
|
|
|
while getopts t:m:p:u:d: opt; do
|
|
case $opt in
|
|
t) title="$OPTARG" ;;
|
|
m) message="$OPTARG" ;;
|
|
p) priority="$OPTARG" ;;
|
|
u) url="$OPTARG" ;;
|
|
U) url_title="$OPTARG" ;;
|
|
d) device="$OPTARG" ;;
|
|
*) >&2 echo "Invalid option $OPTARG"
|
|
exit 1
|
|
;;
|
|
esac
|
|
done
|
|
shift $((OPTIND-1))
|
|
|
|
. "$HOME/.private/config/pushover.conf"
|
|
|
|
curl -s \
|
|
--form-string "token=$TOKEN" \
|
|
--form-string "user=$USER" \
|
|
--form-string "title=$title" \
|
|
--form-string "message=$message" \
|
|
--form-string "url=$url" \
|
|
--form-string "url_title=$url_title" \
|
|
--form-string "device=$device" \
|
|
https://api.pushover.net/1/messages.json
|