aboutsummaryrefslogtreecommitdiffstats
path: root/commands/tell-on_join
diff options
context:
space:
mode:
authortv <tv@nomic.retiolum>2014-04-20 12:30:17 +0200
committertv <tv@nomic.retiolum>2014-04-20 12:30:17 +0200
commit7862c9c38d8109f8f307e7c1a6f374c9d4f0f41e (patch)
treecde93ad9545ead486a3672ff2c4fd70617315990 /commands/tell-on_join
parentc16a558704572fc120244b912b9d4c2e4e2a1c3b (diff)
reaktor.py: add on_join hook: tell NICK MSG...
Diffstat (limited to 'commands/tell-on_join')
-rwxr-xr-xcommands/tell-on_join19
1 files changed, 19 insertions, 0 deletions
diff --git a/commands/tell-on_join b/commands/tell-on_join
new file mode 100755
index 0000000..2dbff41
--- /dev/null
+++ b/commands/tell-on_join
@@ -0,0 +1,19 @@
+#! /bin/sh
+set -euf
+
+# require flock from util-linux
+if test "${FLOCK-}" != "$state_file"; then
+ exec env FLOCK="$state_file" flock "$state_file" "$0" "$@"
+fi
+
+to="$_from"
+
+# print messages
+sed -n '/^'"$to"' /{
+ s/^\([^ ]\+\) \([^ ]\+\) <\([^>]\+\)> \(.*\)/\1: \4 2-- \2, \3/p
+}' "$state_file"
+
+# delete messages
+sed -i '/^'"$to"' /{
+ d
+}' "$state_file"