From 6b09e03faff764fef2c867877e410357f43bf543 Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 28 Dec 2010 21:19:47 +0100 Subject: added modules: ping, pong --- modules/ping | 24 ++++++++++++++++++++++++ modules/pong | 26 ++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100755 modules/ping create mode 100755 modules/pong (limited to 'modules') diff --git a/modules/ping b/modules/ping new file mode 100755 index 00000000..acf2529f --- /dev/null +++ b/modules/ping @@ -0,0 +1,24 @@ +#! /bin/sh +cd /tmp/noise +case "$1" in + (--help) : ;; + ('') + . $NOISE_pid/environment + ping_timestamp=${ping_timestamp-0} + ping_challenger=${ping_challenger-0} + if test $ping_challenger != 0 ; then + echo There is already a ping challange running + else + timestamp=`date +%s%N` + for client in * ; do + echo /ping $NOISE_pid $timestamp >$client/linefeed & + done + fi + ;; + (*) + echo "/set -q ping_timestamp $2" >$NOISE_pid/linefeed + if test $NOISE_pid != $1 ; then + echo "/set -q ping_challenger $1" >$NOISE_pid/linefeed + echo "PING?" + fi +esac diff --git a/modules/pong b/modules/pong new file mode 100755 index 00000000..eb2df46d --- /dev/null +++ b/modules/pong @@ -0,0 +1,26 @@ +#! /bin/sh +cd /tmp/noise +case "$1" in + (--help) : ;; + ('') + . $NOISE_pid/environment + ping_timestamp=${ping_timestamp-0} + ping_challenger=${ping_challenger-0} + if test $ping_challenger = 0 ; then + echo There is no ping challange running + else + timestamp=`date +%s%N` + echo /pong $NOISE_pid $timestamp >$ping_challenger/linefeed + ## reset ping TODO /unset + echo /set -q ping_timestamp 0 >$NOISE_pid/linefeed + echo /set -q ping_challenger 0 >$NOISE_pid/linefeed + fi + ;; + (*) + . $1/environment + # XXX is attendee the right counterpart to 'challenger'? + attendee_nick=$chat_nick + . $NOISE_pid/environment + time=`echo "scale=3; ($2 - $ping_timestamp)/10^9" | bc` + echo "PONG! $attendee_nick ${time}s" +esac -- cgit v1.2.3