summaryrefslogtreecommitdiffstats
path: root/Reaktor/commands
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
commit231c6e68078ea86f48d91ed065794fce52c25ac6 (patch)
tree27f3b9676435a06d97a228a5a39daaddf199b39a /Reaktor/commands
parent2fe69bee8a4207cb83e3e6ce3de74069a6e5f3b1 (diff)
reaktor.py: add on_join hook: tell NICK MSG...
Diffstat (limited to 'Reaktor/commands')
-rwxr-xr-xReaktor/commands/tell-on_join19
-rwxr-xr-xReaktor/commands/tell-on_privmsg17
2 files changed, 36 insertions, 0 deletions
diff --git a/Reaktor/commands/tell-on_join b/Reaktor/commands/tell-on_join
new file mode 100755
index 00000000..2dbff41a
--- /dev/null
+++ b/Reaktor/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"
diff --git a/Reaktor/commands/tell-on_privmsg b/Reaktor/commands/tell-on_privmsg
new file mode 100755
index 00000000..5d0aff41
--- /dev/null
+++ b/Reaktor/commands/tell-on_privmsg
@@ -0,0 +1,17 @@
+#! /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
+
+from="$_prefix"
+to="$1"; shift
+msg="$*"
+date=$(date)
+
+# TODO tell now, if already joined
+printf '%s %s <%s> %s\n' "$to" "$from" "$date" "$msg" >> "$state_file"
+
+echo 'Consider it noted.' # that's what lambdabot says...