Initialer Commit
This commit is contained in:
commit
fc2a7b2ce0
3 changed files with 56 additions and 0 deletions
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
*.log
|
||||||
|
.env
|
||||||
|
node_modules/
|
||||||
1
README.md
Normal file
1
README.md
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
# Matrix_Get-Token_Toolbox
|
||||||
52
get-token.sh
Executable file
52
get-token.sh
Executable file
|
|
@ -0,0 +1,52 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# --- EINGABE: SERVER-DATEN ---
|
||||||
|
read -p "Matrix-Domain [http://matrix-client.matrix.org]: " DOMAIN
|
||||||
|
DOMAIN=${DOMAIN:-http://matrix-client.matrix.org}
|
||||||
|
|
||||||
|
# Wenn du unterwegs bist, drücke hier einfach direkt Enter (leer lassen)
|
||||||
|
read -p "Lokale Server-IP (Leer lassen, wenn du unterwegs bist!): " SERVER_IP
|
||||||
|
|
||||||
|
# --- EINGABE: BENUTZER-DATEN ---
|
||||||
|
read -p "Matrix-Benutzername: " USERNAME
|
||||||
|
read -s -p "Matrix-Passwort: " PASSWORD
|
||||||
|
echo ""
|
||||||
|
|
||||||
|
echo "Verbinde mit Matrix-Server https://$DOMAIN ..."
|
||||||
|
|
||||||
|
# --- RESOLVE LOGIK PRÜFEN ---
|
||||||
|
# Wenn eine IP eingegeben wurde, nutzen wir --resolve. Wenn nicht, fragen wir direkt das Internet ab.
|
||||||
|
if [ -n "$SERVER_IP" ]; then
|
||||||
|
# Wichtig: Nur die reine IP eintragen (z.B. 192.168.10.118), ohne Port (:6167)!
|
||||||
|
RESOLVE_PARAM="--resolve ${DOMAIN}:443:${SERVER_IP}"
|
||||||
|
else
|
||||||
|
RESOLVE_PARAM=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
# --- API-ABRUF ---
|
||||||
|
RESPONSE=$(curl -k -s -X POST \
|
||||||
|
$RESOLVE_PARAM \
|
||||||
|
"https://${DOMAIN}/_matrix/client/v3/login" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{
|
||||||
|
"type": "m.login.password",
|
||||||
|
"identifier": { "type": "m.id.user", "user": "'"$USERNAME"'" },
|
||||||
|
"password": "'"$PASSWORD"'"
|
||||||
|
}')
|
||||||
|
|
||||||
|
# --- TOKEN EXTRAKTION ---
|
||||||
|
TOKEN=$(echo "$RESPONSE" | grep -o '"access_token":"[^"]*' | cut -d'"' -f4)
|
||||||
|
|
||||||
|
if [ -n "$TOKEN" ]; then
|
||||||
|
echo "✅ Login für @${USERNAME} auf ${DOMAIN} erfolgreich!"
|
||||||
|
echo "Dein Token lautet:"
|
||||||
|
echo "$TOKEN"
|
||||||
|
else
|
||||||
|
echo "❌ Fehler beim Login für @${USERNAME}!"
|
||||||
|
echo "Antwort vom Server war:"
|
||||||
|
if [ -z "$RESPONSE" ]; then
|
||||||
|
echo "[Keine Antwort vom Server – Internetverbindung, IP oder Portfreigabe prüfen]"
|
||||||
|
else
|
||||||
|
echo "$RESPONSE"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
Loading…
Add table
Reference in a new issue