jive-messengerd 1.89 KB
Newer Older
Andrew Wright's avatar
Andrew Wright committed
1 2
#!/bin/sh

Andrew Wright's avatar
Andrew Wright committed
3 4
# jive-messengerd
#
Andrew Wright's avatar
Andrew Wright committed
5
# chkconfig: 2345 20 80
Andrew Wright's avatar
Andrew Wright committed
6 7
# description: Used to start and stop the jive messenger XMPP server
# 
Andrew Wright's avatar
Andrew Wright committed
8 9
# Script used to start jive messenger as daemon
# The script has currently been tested on Redhat Fedora Core 3,
10
# but should theoretically work on most UNIX like systems
Andrew Wright's avatar
Andrew Wright committed
11
#
12
# before running this script make sure $MESSENGER_HOME/bin/messenger is
Andrew Wright's avatar
Andrew Wright committed
13
# executable by the user you want to run messenger as
14
# (chmod +x $MESSENGER_HOME/bin/messenger)
Andrew Wright's avatar
Andrew Wright committed
15 16 17 18 19 20 21 22 23 24 25
#
# This script should be copied into /etc/init.d and linked into
# your default runlevel directory.
# You can find your default runlevel directory by typing: 
# grep default /etc/inittab
#
# Link to the directory like follows
# cd /etc/rc<num>.d
# ln -s ../init.d/jive-messengerd $90jive-messengerd
#

26 27
# Set this to tell this script where messenger lives
# If this is not set the script will look for /opt/jive_messenger, then /usr/local/jive_messenger
Andrew Wright's avatar
Andrew Wright committed
28 29
#export MESSENGER_HOME=

Andrew Wright's avatar
Andrew Wright committed
30 31 32
# If there is a different user you would like to run this script as,
# change the following line
export MESSENGER_USER=jive
Andrew Wright's avatar
Andrew Wright committed
33 34 35

# -----------------------------------------------------------------

36 37 38 39 40 41 42 43 44 45 46 47
# If a messenger home variable has not been specified, try to determine it
if [ ! $MESSENGER_HOME ]; then 
	if [ -d "/opt/jive_messenger" ]; then
		MESSENGER_HOME="/opt/jive_messenger"
	elif [ -d "/usr/local/jive_messenger" ]; then
		MESSENGER_HOME="/usr/local/jive_messenger"
	else
		echo "Could not find Jive Messenger installation under /opt or /usr/local" 
		echo "Please specify the Jive Messenger installation location in environment variable MESSENGER_HOME"
		exit 1
	fi
fi
Andrew Wright's avatar
Andrew Wright committed
48 49


50 51 52 53
function execCommand() {
	OLD_PWD=`pwd`
	cd $MESSENGER_HOME/bin
	CMD="./messenger $1"
54
	su -c "$CMD" $MESSENGER_USER &
55 56 57 58 59 60
	cd $OLD_PWD
}


start() {
	execCommand "start"
Andrew Wright's avatar
Andrew Wright committed
61 62 63
}

stop() {
64
	execCommand "stop"
Andrew Wright's avatar
Andrew Wright committed
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
}


case "$1" in
	start)
		start
		;;
	stop)
		stop
		;;
	*)
		echo "Usage $0 {start|stop}"
		exit 1
esac

exit 0