Last active
June 8, 2018 07:11
-
-
Save Bluscream/ef2091610760b5a151c66b17ff9e040b to your computer and use it in GitHub Desktop.
TeaSpeak scripts
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/expect -f | |
| set passwd "serveradmin-passwd" | |
| set sid 1 | |
| spawn telnet 127.0.0.1 10011 | |
| expect "command." | |
| send "login serveradmin $passwd\n" | |
| expect "error id=0 msg=ok" | |
| send "use sid=$sid\n" | |
| expect "error id=0 msg=ok" | |
| send "serversnapshotcreate\n" | |
| expect -re "hash(.*)" | |
| exec echo "hash$expect_out(1,string)" > lastdump.ts3 | |
| expect "error id=0 msg=ok" | |
| send "quit\n" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| cd common | |
| cp config.bak.yml config.bak2.yml | |
| cp config.yml config.bak.yml | |
| nano config.yml |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| # dirname=$(ls -t /home/*/ | head -1) | |
| echo "Make sure to use \". latest.sh\"" | |
| versionurl="latest" | |
| if [ $# -ne 0 ] | |
| then | |
| if [ "$1" = "build" ] | |
| then | |
| versionurl="buildIndex.txt" | |
| version=$(curl -k https://repo.teaspeak.de/${versionurl}) | |
| dirname="TeaSpeak-${version}" | |
| cd "${dirname}" | |
| fi | |
| fi | |
| cd "${dirname::-1}" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/sh | |
| tail -fn0 /home/TeaSpeak-1.1.29-beta-2/logs/log_general.log | while read line ; do | |
| echo "$line" | grep "cl->state == ConnectionState::DISCONNECTED && cl->getExternalType() == ClientType::CLIENT_VOICE" | |
| if [ $? = 0 ] | |
| then | |
| killall screen | |
| sh /home/TeaSpeak-1.1.29-beta-2/teastart_autorestart.sh start | |
| fi | |
| done |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| tail -f common/last.log | grep -o 'Password: [[:digit:]]\{7\}' | read -t 1200 dummy_var | |
| [ $? -eq 0 ] && echo 'ok' || echo 'server not up' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/expect -f | |
| set passwd "serveradmin-passwd" | |
| set sid 1 | |
| spawn telnet 127.0.0.1 10011 | |
| expect "command." | |
| send "login serveradmin $passwd\n" | |
| expect "error id=0 msg=ok" | |
| send "use sid=$sid\n" | |
| expect "error id=0 msg=ok" | |
| send "serversnapshotcreate\n" | |
| expect -re "hash(.*)" | |
| exec echo "hash$expect_out(1,string)" > lastdump.ts3 | |
| expect "error id=0 msg=ok" | |
| send "quit\n" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| echo "# getting version" | |
| versionurl="latest" | |
| if [ $# -ne 0 ] | |
| then | |
| if [ "$1" = "build" ] | |
| then | |
| versionurl="buildIndex.txt" | |
| else | |
| echo "# ony build is an valid agument" | |
| exit 1 | |
| fi | |
| fi | |
| echo "# version url ${versionurl}" | |
| version=$(curl -k https://repo.teaspeak.de/${versionurl}) | |
| echo "# newest version is ${version}" | |
| requesturl="https://repo.teaspeak.de/server/linux/x64/TeaSpeak-${version}.tar.gz" | |
| echo "# requesting from ${requesturl}" | |
| wget --no-check-certificate "$requesturl" | |
| dirname="teaspeak" | |
| filename="TeaSpeak-${version}.tar.gz" | |
| echo "# unzip and moving $filename" | |
| tar -xzf $filename -C ${dirname} | |
| rm $filename | |
| cd ${dirname} | |
| echo "# making scripts executable" | |
| chmod +x *.sh | |
| ./teastart_minimal.sh | |
| ./teastart_autorestart.sh start | |
| echo "# now updated to ${version}" | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| TS3_QUERY_PASS="JYfOBBD" | |
| # python3 update.py | |
| # exit | |
| echo "# installing requirements" | |
| apt install sudo | |
| sudo apt install ffmpeg youtube-dl curl wget screen tar gzip | |
| echo "# getting latest version" | |
| version=$(curl -k https://repo.teaspeak.de/latest) | |
| echo "# newest version is ${version}" | |
| requesturl="https://repo.teaspeak.de/server/linux/x64/TeaSpeak-${version}.tar.gz" | |
| echo "# requesting from ${requesturl}" | |
| wget --no-check-certificate "$requesturl" | |
| if [ $# -eq 0 ] | |
| then | |
| dirname="TeaSpeak-${version}" | |
| if [ -d "$dirname" ]; then | |
| while : | |
| do | |
| echo "Folder $dirname already exists!" | |
| read -t10 -p "Do you want to continue anyway? (Y/N): " | |
| if [ $? -gt 128 ]; then | |
| echo "timed out waiting for user response" | |
| exit | |
| fi | |
| case $REPLY in | |
| [yY]*) | |
| echo "continuing" | |
| break | |
| ;; | |
| [nN]*) | |
| echo "exiting" | |
| exit | |
| ;; | |
| *) echo "Please enter Y or N" | |
| ;; | |
| esac | |
| done | |
| fi | |
| else | |
| dirname="$1" | |
| fi | |
| filename="TeaSpeak-${version}.tar.gz" | |
| echo "# stopping old server" | |
| # { echo "login serveradmin pass"; echo "serverprocessstop reasonmsg=Server\supdate\sto\s${version}!"; sleep 1; } | telnet 127.0.0.1 10011 | |
| screen -x TeaSpeak | |
| # end now | |
| # pkill -f TeaSpeak | |
| echo "# backing up old files" | |
| cp common/config.yml common/config.pre_update.yml | |
| cp common/TeaData.sqlite common/TeaData.pre_update.sqlite | |
| # olddir=$(find . -type d -maxdepth 1 -print | grep -m1 'TeaSpeak-') | |
| # tar -zcvf $olddir.tar.gz $olddir/ | |
| # rm -rf $olddir | |
| echo "# unzip and moving $filename" | |
| mkdir ${dirname} | |
| tar -xzf $filename -C ${dirname} | |
| mv $filename "${dirname}/$filename" | |
| echo "# creating symlinks for common files" | |
| cd ${dirname} | |
| ln -s /home/common/teaspeak/config.yml "config.yml" | |
| ln -s /home/common/teaspeak/TeaData.sqlite "TeaData.sqlite" | |
| # ln -s /home/common/files/ "files/" | |
| ./teastart_minimal.sh | |
| echo "# making scripts executable" | |
| chmod +x *.sh | |
| # cp logs/log_*_general.log /home/common/last.log | |
| ./teastart_autorestart.sh start | |
| # ../restore.sh "${dirname}" | |
| echo "# now updated to ${version}" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment