centerICQ läuft im rxvt Terminal mittels screen, Sprachansage

Gespeichert von Erik Wegner am/um
Body

Legen Sie eine Verknüpfung zu diesem Skript an. Der Vorteil ist: beim Starten wird geprüft, ob bereits ein screen läuft, dieses wird dann in den Vordergrund geholt, ansonsten wird eine neue Instanz gestartet. Beim Scließen des rxvt-Fensters läuft centerICQ im Hintergrund weiter und kann durch den erneuten Aufruf in den Vordergrund geholt werden.

Script screen_centericq.sh

#!/bin/bash
# Der Aufruf kann mit der Option -U ergaenzt
# werden, wenn ein Unicode-Terminal verwendet
# wird
SCRNAME="centericq"
PROG="/usr/bin/centericq"
OPTS="-a -O $1"
T=xterm-color

if [[ $(screen -list | grep ${SCRNAME}) != "" ]]
 then screen ${OPTS} -d -r ${SCRNAME}
 else screen ${OPTS} -S "${SCRNAME}" -T ${T} "${PROG}"
fi

Hinweise, welche Terminals zur Verfügung stehen (Parameter T), liefert der Aufruf find /usr/share/terminfo/ | less

Befehlszeile der Verknüpfung:

rxvt -title "centerICQ" -geometry 100x25 -fn fixed -bg black +sb -fg green -e /home/user/screen_centericq.sh

Ansage per Sprachausgabe, welche Bekannten online sind

Dafür stellt centerICQ die Datei ~/.centerICQ/external zur Verfügung, dort können für bestimmte Aktionen externe Programme aufgerufen werden. Voraussetzung ist die Einrichtung der Sprachausgabe wie im Artikel im LinuxWiki beschrieben.

%action neuer_user_online_sprachausgabe
event online
proto all
status all
%exec
name=`head -n 46 $CONTACT_INFODIR/info | tail -n 1`
case $EVENT_NETWORK in
  icq) net="aissikkkju";;
  jab) net="Dschabber";;
  aim) net="A-I-M";;
  irc) net="I-R-C";;
  msn) net="M-S-N";;
  yahoo) net="Jahhuh";;
esac
/usr/local/bin/say "Benutzer $name im $net-Netzwerk ist jetzt online."