add more info to test.sh

This commit is contained in:
Aleksej 2022-06-14 01:21:53 +02:00
parent 6e40fba236
commit 405e7c21c3
No known key found for this signature in database
GPG Key ID: 4DB9C85100A6D17F
4 changed files with 39 additions and 3 deletions

View File

@ -4,3 +4,5 @@ PASSWORD = bottestpassword
NICK = xmppbot
ROOM1 = testroom1@conference.localhost
ROOM2 = testroom2@conference.localhost
HOST = 127.0.0.1
PORT = 25222

View File

@ -1,5 +1,16 @@
#!/bin/bash
# Check if docker is installed
if ! command -v docker run &> /dev/null
then
echo "No docker detected. If you are running debian based system, you can install docker with"
echo "sudo apt install docker.io
exit
fi
echo "Docker detected"
# Run ejabberd docker as a daemon
echo "Starting ejabberd docker container"
docker run --name xmppbot-test -d -p 25222:5222 ejabberd/ecs
# Wait few seconds for ejabberd to boot
@ -15,9 +26,11 @@ docker exec -it xmppbot-test bin/ejabberdctl create_room testroom1 conference.lo
docker exec -it xmppbot-test bin/ejabberdctl create_room testroom2 conference.localhost localhost
# Run xmpp mirror bot
echo "Running xmpp mirror bot"
python3 ../xmppmirror & XMPPMIRRORPID=$!
# Run xmpp test bot
echo "Running test bot"
python3 testbot & TESTBOTPID=$!
# Wait for bots to connect
@ -27,10 +40,20 @@ sleep 10
for i in $(cat testmsgs.txt); do sleep 5; done
# Kill bots
if ps -p $XMPPMIRRORPID > /dev/null
then
echo "Killing xmpp mirror bot"
kill $XMPPMIRRORPID
fi
if ps -p $TESTBOTPID > /dev/null
then
echo "Killing test bot"
kill $TESTBOTPID
fi
# Stop and remove containter
echo "Stopping and removing docker container"
docker stop xmppbot-test
docker rm xmppbot-test

View File

@ -4,3 +4,5 @@ PASSWORD = admintestpassword
NICK = admin
ROOM1 = testroom1@conference.localhost
ROOM2 = testroom2@conference.localhost
HOST = 127.0.0.1
PORT = 25222

View File

@ -59,6 +59,12 @@ if __name__ == '__main__':
NICK = config.get('credentials', 'NICK')
ROOM1 = config.get('credentials', 'ROOM1')
ROOM2 = config.get('credentials', 'ROOM2')
HOST = None
PORT = 5222
if "host" in config.options('credentials'):
HOST = config.get('credentials', 'HOST')
if "port" in config.options('credentials'):
PORT = config.get('credentials', 'PORT')
xmpp = MUCBot(JID, PASSWORD, NICK, ROOM1, ROOM2)
@ -67,6 +73,9 @@ if __name__ == '__main__':
xmpp.register_plugin('xep_0199') # XMPP Ping
# Connect to the XMPP server and start processing XMPP stanzas.
if HOST != None:
xmpp.connect(address=(HOST,int(PORT)))
else:
xmpp.connect()
xmpp.process()