Autodarts mit verschiedenen Spielerprofilen nutzen
1. Terminalsession starten und die vorhandene config.toml kopieren z.B.
cp ~/.config/autodarts/config.toml ~/.config/autodarts/spieler1.toml cp ~/.config/autodarts/config.toml ~/.config/autodarts/spieler2.toml
2. Dann im entsprechenden Profil die unter dem Benutzer erstelle Board-ID und API-Key einstellen
nano ~/.config/autodarts/spieler1.toml nano ~/.config/autodarts/spieler2.toml
3. Script im Homeverzeichnis erstellen um die verschiedenen Spielerprofile per Windows- Batch per plink von Windows aus oder per Shellscript linuxseitig aufzurufen.
touch spieler1.sh touch spieler2.sh
4. In beide Dateien das Script einfügen und je nach Profil anpassen nano spieler1.toml
#!/bin/bash
sudo systemctl stop autodarts cd .config/ cd autodarts/
cp spieler1.toml config.toml sudo systemctl start autodarts
Editor mit Strg + X verlassen und mit Y und Enter bestätigen.
Für alle weiteren Profile diesen Schritt wiederholen und die Profilnamen entsprechend anpassen.
Die Scripte ausführbar machen
sudo chmod +x spieler1.sh sudo chmod +x spieler2.sh
5. Batch Datei mit Auswahlmenü auf dem Windows-Rechner erstellen oder shell Script auf dem Linuxrechner
Inhalt Menü Linux
#!/bin/bash #!/bin/bash
# Bash Menu Script Example cls
PS3='Mit welchem Profil soll gespielt werden: ' options=("Option 1" "Option 2" "Option 3" "Ende") select opt in "${options[@]}"
do
case $opt in "Option 1")
./spieler1.sh
;;
"Option 2")
./spieler2.sh
;;
"Option 3")
echo "you chose choice $REPLY which is $opt"
;;
"Ende")
break
;;
*) echo "invalid option $REPLY";; esac
done
Inhalt Batch Datei auf Windows Desktop
@echo off echo.
echo Mit welchem Spielerprofil soll Autodarts starten? pause
// Mittelteil mit Auswahlmenu
:Auswahlmenu cls
echo. echo Auswahlmenu echo ==========
echo.
echo [1]: Spieler1
ping -n 1 localhost>nul echo.
echo [2]: Spieler2
ping -n 1 localhost>nul echo.
echo [5]: Autodarts Restart ping -n 1 localhost>nul echo.
echo [6]: Autodarts Shutdown ping -n 1 localhost>nul
echo.
echo Um die Auswahl zu beenden: ende echo.
set asw=0
set /p asw="Bitte eine Auswahl treffen: " set Programm=darts-hub.exe
set Programm1=darts-caller.exe
if %asw%==1 goto Spieler1 if %asw%==2 goto Spieler2
if %asw%==5 goto AD_Restart
if %asw%==6 goto AD_Shutdown
if %asw%==ende goto END goto END
// Ende des Skripts
:Spieler1 cls
echo.
echo Spieler1 spielt!
tasklist |find /i "%Programm%" >nul if %errorlevel% == 0 (
echo Das Programm "%Programm%" leauft gerade! taskkill /IM darts-hub.exe /F
) else (
echo Das Programm "%Programm%" leauft gerade nicht!
)
tasklist |find /i "%Programm1%" >nul if %errorlevel% == 0 (
echo Das Programm "%Programm1%" leauft gerade! taskkill /IM darts-caller.exe /F
) else (
echo Das Programm "%Programm1%" leauft gerade nicht!
)
plink.exe -ssh username@IP-Adresse -pw passwort ./spieler1.sh start "" "C:\Users\Userverz\Desktop\darts-hub-Profil1.lnk" echo.
pause goto Auswahlmenu
:Spieler2 cls
echo.
echo Spieler2 spielt!
tasklist |find /i "%Programm%" >nul if %errorlevel% == 0 (
echo Das Programm "%Programm%" laeuft gerade! taskkill /IM darts-hub.exe /F
) else (
echo Das Programm "%Programm%" laeuft gerade nicht!
)
tasklist |find /i "%Programm1%" >nul if %errorlevel% == 0 (
echo Das Programm "%Programm1%" laeuft gerade! taskkill /IM darts-caller.exe /F
) else (
echo Das Programm "%Programm1%" laeuft gerade nicht!
)
plink.exe -ssh username@IP-Adresse -pw passwort ./spieler2.sh start "" "C:\Users\Userverz\Desktop\darts-hub-Profil2.lnk" echo.
pause goto Auswahlmenu
:AD_Restart
plink.exe -ssh openhab@autodarts -pw openhab sudo systemctl restart autodarts echo.
pause goto Auswahlmenu
:AD_Shutdown
plink.exe -ssh username@IP-Adresse -pw passwort sudo shutdown -P 0
:END
echo.
echo Auswahl wird jetzt beendet pause
Autodarts - mehrere Spielerprofile einstellen
- Fortunate Son
- Experte
- Beiträge: 125
- Registriert: 9. Jan 2025 08:42
- Wohnort: LA
- Has thanked: 2 times
- Been thanked: 14 times