extsay-ng/extsay.sh
author Mikael Berthe <mikael@lilotux.net>
Fri, 02 Apr 2010 23:45:20 +0200
changeset 22 b6b45c2eb022
parent 21 9798e3aaa851
child 23 cf95a475825c
permissions -rwxr-xr-x
[extsay] Improve script portability
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
21
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     1
#! /bin/sh
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     2
#
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     3
# Copyright (C) 2010 Mikael Berthe <mikael@lilotux.net>
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     4
#
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     5
# Copy this script on your system and specify the path for mcabber
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     6
# by setting the 'extsay_script_path' option.
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     7
#
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     8
# This script is free software.
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
     9
# MiKael, 2010-04-02
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    10
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    11
FIFOPATH="$HOME/.mcabber/mcabber.fifo"
22
b6b45c2eb022 [extsay] Improve script portability
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
    12
b6b45c2eb022 [extsay] Improve script portability
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
    13
tmpdir=${TMPDIR:=$TMP}
b6b45c2eb022 [extsay] Improve script portability
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
    14
tmpdir=${tmpdir:="/tmp"}
21
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    15
editor=${EDITOR:="vi"}
22
b6b45c2eb022 [extsay] Improve script portability
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
    16
21
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    17
jid="."
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    18
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    19
# Use argument as a recipient JID, if it is provided
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    20
[ $# -eq 1 ] && jid=$1
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    21
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    22
# Leave if the FIFO is not available
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    23
[ -p $FIFOPATH ] || exit 255
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    24
22
b6b45c2eb022 [extsay] Improve script portability
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
    25
tf=$(mktemp $tmpdir/extsay-XXXXXX) || exit 255
21
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    26
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    27
# This will not work if the editor runs in the background!
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    28
$editor $tf
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    29
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    30
# Send the message using MCabber's pipe
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    31
if [ -s $tf ]; then
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    32
    cmd="say_to -f $tf $jid"
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    33
    echo $cmd >> $FIFOPATH
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    34
fi
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    35
22
b6b45c2eb022 [extsay] Improve script portability
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
    36
# Do not remove the file too soon
b6b45c2eb022 [extsay] Improve script portability
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
    37
(sleep 20 ; rm $tf)&
b6b45c2eb022 [extsay] Improve script portability
Mikael Berthe <mikael@lilotux.net>
parents: 21
diff changeset
    38
21
9798e3aaa851 Add module extsayng, rename previous one to extsay_old
Mikael Berthe <mikael@lilotux.net>
parents:
diff changeset
    39
exit 0