Mercurial > ~mikael > mcabber > hg
view mcabber/contrib/events/eventcmd.pastebin @ 2223:965e0282c128
Backed out changeset fa516ef22145
Turns out that in this hash the value pointer is the same as the
key pointer, so there's no need to free both the key and the value.
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Fri, 06 Nov 2015 22:31:40 +0100 |
parents | 4889f429fdd0 |
children |
line wrap: on
line source
#!/bin/sh # # event_command url handling script for mcabber # by # * Alexander Clouter <alex@digriz.org.uk> # * Jamie Lentin <jamie@lentin.co.uk> # # For tinyurl'ing (sending tinyurl's of URL's sent to you # resent as a headline to yourself) you set your *own* # jabber id for 'me' and it's probably best leaving # 'tinyurltrigger' unless you know what you are doing. # # For pastebin support (dumping the URL as an HTML anchor # into a local file that could be exported by a webserver # or as a file a web-browser can open) tinker with the # pastebin lines. # # If you want to disable a one of the facilities, just # comment out the pair of variables you do not want. # #set -x ## configuration # tinyurl'ifier me=jim@jabber.li tinyurltrigger=24 # pastebin support pastebin_file=~/bitbucket/stuff/pastebin.html pastebin_line_count=10 # Don't do 'owt unless recieving a message [ x$1 != xMSG ] && exit 0 [ x$2 != xIN ] && exit 0 jid=$3 # do nothing if it's from self [ "$jid" = "$me" ] && exit 0 # If receiving a message, scan for links url=$(cat "$4" | awk 'BEGIN { RS="( |\n|\t)+"; FS="�"; } /(https?|ftp):\/\// { print $1 }') if [ -n "$url" ]; then date=$(/bin/date) if [ -n "$me" -a ${#url} -ge $tinyurltrigger ]; then tinyurl=`wget -q -O - http://tinyurl.com/api-create.php?url="$url"` echo "say_to -q -h $me <= $jid $url" > ~/.mcabber/mcabber.fifo echo "say_to -q -h $me $tinyurl" > ~/.mcabber/mcabber.fifo fi if [ -n "$pastebin_file" ]; then if [ ! -f "$pastebin_file" ]; then touch "$pastebin_file" fi sed -i -e :a -e '$q;N;11,$D;ba' "$pastebin_file" printf '%s (%s): <a href="%s">%s</a><br/>\n' "$date" "$jid" "$url" "$url" >> $pastebin_file fi fi [ -n "$4" ] && rm "$4" exit 0