diff options
author | tv <tv@also> | 2011-08-12 14:05:52 +0200 |
---|---|---|
committer | tv <tv@also> | 2011-08-12 14:05:52 +0200 |
commit | 56c0db6825605e4d5d2c7e697c6d3948e1efc23a (patch) | |
tree | 845aa49848ec44399ab67d207e3b25b9676a863b /cholerab/ttycnser.sh | |
parent | 574169b46300f28f8a149ec6758edbaa6ddb883f (diff) |
cholerab ttycnser: move prototype
Move the ttycnser shell-script prototype in order to errect the
node-based TTY Cholerab Notification Service which is going to
listen to JSON-RPC notifications over HTTP.
Diffstat (limited to 'cholerab/ttycnser.sh')
-rwxr-xr-x | cholerab/ttycnser.sh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/cholerab/ttycnser.sh b/cholerab/ttycnser.sh new file mode 100755 index 00000000..0972dbbb --- /dev/null +++ b/cholerab/ttycnser.sh @@ -0,0 +1,27 @@ +#! /bin/sh +set -euf + +tty="${TMPDIR-/tmp}/ttycnser.$LOGNAME.tty" + +case "${mode-server}" in + (server) + host=0.0.0.0 + port=8080 + export mode=client + echo "ttycnser @ $host $port" >&2 + exec tcpserver $host $port "$0" + ;; + (client) + line="`read line && echo "$line"`" + echo -n '7[2;1H[2K[33;1m>>>> '"$line"'8' > "$tty" + ;; + (install) + # TODO tell the user to do something like + # PROMPT_COMMAND="`mode=install ~/p/krebscode/painload/cholerab/ttycnser`" + echo "ln -snf '`tty`' '$tty'" + ;; + (*) + echo 'Error 1: You are made of stupid!' >&2 + exit 23 + ;; +esac |