39 lines
1.0 KiB
Bash
Executable File
39 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Simple, minimalist command line tool to post status to hubzilla via the API. Requires curl.
|
|
# Put it in your path, and sneeze your statuses to the zot network from your shell.
|
|
|
|
CONF=${HOME}/.hubzilla
|
|
|
|
usage () {
|
|
echo "usage: hz [conffile]"
|
|
echo "Create a conf file, either in .hubzilla in your home directory, or supplied as an arg"
|
|
echo " USER=youruserame "
|
|
echo " PASS=yourpass"
|
|
echo " HUB=your.hub.domain.org"
|
|
echo
|
|
echo "Type \"hz\" (with or without a conf file as an arg), then enter your message. Use ctrl-D to send.."
|
|
|
|
}
|
|
|
|
CUR=`which curl`
|
|
|
|
[ "$CUR" ] || { echo "curl is not installed or on your path"; usage; exit 1; }
|
|
|
|
[ "$1" ] && CONF="$1"
|
|
|
|
|
|
. ${CONF}
|
|
|
|
[ "$USER" ] || { echo "no USER"; usage; exit 1; }
|
|
[ "$PASS" ] || { echo "no PASS"; usage; exit 1; }
|
|
[ "$HUB" ] || { echo "no HUB"; usage; exit 1; }
|
|
|
|
echo "enter your message to be posted as $USER @ $HUB, then hit Ctrl-D to send."
|
|
|
|
MSG=$(cat)
|
|
|
|
curl -ssl -u${USER}:${PASS} --data-urlencode "body=${MSG}" https://${HUB}/api/z/1.0/item/update
|
|
|
|
|