From 5f28729298601a3b2b2ae49efd3402f732f6a28b Mon Sep 17 00:00:00 2001 From: James Patrick Date: Fri, 22 Nov 2019 14:52:45 -0500 Subject: [PATCH] A push over script that doesn't hardcode tokens. --- zsh/modules/bin/tellme | 44 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100755 zsh/modules/bin/tellme diff --git a/zsh/modules/bin/tellme b/zsh/modules/bin/tellme new file mode 100755 index 0000000..e26734e --- /dev/null +++ b/zsh/modules/bin/tellme @@ -0,0 +1,44 @@ +#! /bin/bash + +# Load config file if it exist. +export CONFIG=${XDG_CONFIG_HOME:-~/.config}/tellme/creds +[ -f $CONFIG ] && export $(grep -v '^#' $CONFIG | xargs) + +usage(){ + echo "You have to tell me something" + exit -1 +} + +setup(){ + echo "It doesn't look like I've been setup yet. I will need the Application & User tokens." + read -r -p " Application Token: " APPLICATION_TOKEN + read -r -p " User Token: " USER_TOKEN + mkdir -p $(dirname $CONFIG) + cat <<-EOF > $CONFIG + application_token=$APPLICATION_TOKEN + user_token=$USER_TOKEN + EOF + chmod 600 $CONFIG + echo "Config setup at $CONFIG" + echo +} + +if [[ -z $application_token || -z $user_token ]] ; then + setup + export $(grep -v '^#' $CONFIG | xargs) +fi + +if [[ $# -eq 0 ]] ; then + usage +fi + +message=$@ +curl -s \ + --form-string "token=$application_token" \ + --form-string "user=$user_token" \ + --form-string "message=$message" \ + https://api.pushover.net/1/messages.json 1>/dev/null + +[[ $? -eq 0 ]] && echo "message sent" || echo "ERROR SENDING NOTIFICATION" + +printf '\a' #Rings bell