view mcabber/contrib/events/eventcmd.osd @ 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
#
# Sample events script for mcabber
# Use OSD to display events on the user's desktop
#
# To use this script, set the "events_command" option to the path of
# the script (see the mcabberrc.example file for an example)
#
# MiKael, 2006-01-07

XOSD_CMD_PIPE='osd_cat --pos=bottom --align=center --delay=4 --color=magenta --font=-*-courier-*-*-*-*-14-*-*-*-*-*-iso8859-15'

event=$1
arg1=$2
arg2=$3
filename=$4
# Note that the 4th argument is only provided for incoming messages
# and when 'event_log_files' is set.

if [ "$event" = "MSG" ]; then
  case "$arg1" in
    IN)
      # Incoming message from buddy $arg2
      echo "You have an IM from <$arg2>" | $XOSD_CMD_PIPE > /dev/null 2>&1
      if [ -n "$filename" -a -f "$filename" ]; then
        # We could process filename here...
        /bin/rm $filename
      fi
      ;;
    MUC)
      # Groupchat message in room $arg2
      if [ -n "$filename" && -f "$filename" ]; then
        # We could process filename here...
        /bin/rm $filename
      fi
      ;;
    OUT)
      # Outgoing message for buddy $arg2
      ;;
  esac
elif [ "$event" = "STATUS" ]; then
  # Buddy $arg2 status is $arg1 (_, O, I, F, D, N, A)
  echo "<$arg2> has changed status to: [$arg1]" | $XOSD_CMD_PIPE > /dev/null 2>&1
  echo > /dev/null
fi