71 lines
2.0 KiB
Bash
Executable File
71 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Script de test simple pour la connexion CalDAV Infomaniak
|
|
# Usage: ./test-infomaniak-caldav-simple.sh <email> <password>
|
|
|
|
EMAIL="${1:-a.tmiri@icmaae.foundation}"
|
|
PASSWORD="${2}"
|
|
|
|
if [ -z "$PASSWORD" ]; then
|
|
echo "❌ Usage: $0 <email> <password>"
|
|
echo ""
|
|
echo "Example:"
|
|
echo " $0 a.tmiri@icmaae.foundation 'your-password'"
|
|
exit 1
|
|
fi
|
|
|
|
BASE_URL="https://sync.infomaniak.com/caldav"
|
|
|
|
echo "🔍 Test CalDAV Infomaniak"
|
|
echo "Email: $EMAIL"
|
|
echo "URL: $BASE_URL"
|
|
echo ""
|
|
|
|
# Test PROPFIND (méthode principale utilisée par le code)
|
|
echo "📡 Test PROPFIND..."
|
|
HTTP_CODE=$(curl -s -o /tmp/caldav-response.xml -w "%{http_code}" \
|
|
-X PROPFIND \
|
|
-u "${EMAIL}:${PASSWORD}" \
|
|
-H "Depth: 1" \
|
|
-H "Content-Type: application/xml" \
|
|
--data-binary '<?xml version="1.0" encoding="utf-8" ?>
|
|
<d:propfind xmlns:d="DAV:" xmlns:c="urn:ietf:params:xml:ns:caldav">
|
|
<d:prop>
|
|
<d:displayname />
|
|
<c:calendar-color />
|
|
</d:prop>
|
|
</d:propfind>' \
|
|
"${BASE_URL}/")
|
|
|
|
echo "HTTP Status: $HTTP_CODE"
|
|
echo ""
|
|
|
|
if [ "$HTTP_CODE" = "200" ] || [ "$HTTP_CODE" = "207" ]; then
|
|
echo "✅ SUCCESS - Connexion réussie!"
|
|
echo ""
|
|
echo "Calendriers trouvés:"
|
|
grep -o "<d:displayname>[^<]*</d:displayname>" /tmp/caldav-response.xml | sed 's/<[^>]*>//g' | nl
|
|
echo ""
|
|
echo "Réponse complète sauvegardée dans /tmp/caldav-response.xml"
|
|
elif [ "$HTTP_CODE" = "401" ]; then
|
|
echo "❌ ERREUR 401 - Non autorisé"
|
|
echo ""
|
|
echo "Causes possibles:"
|
|
echo " 1. Mot de passe incorrect"
|
|
echo " 2. 2FA activé - utilisez un mot de passe d'application"
|
|
echo " 3. Compte suspendu"
|
|
echo ""
|
|
echo "Pour générer un mot de passe d'application Infomaniak:"
|
|
echo " 1. Connectez-vous à https://config.infomaniak.com"
|
|
echo " 2. Allez dans 'Mon profil' > 'Mots de passe d'application'"
|
|
echo " 3. Générez un nouveau mot de passe pour 'CalDAV'"
|
|
echo " 4. Utilisez ce mot de passe dans votre compte email"
|
|
else
|
|
echo "❌ ERREUR HTTP $HTTP_CODE"
|
|
echo ""
|
|
echo "Réponse:"
|
|
cat /tmp/caldav-response.xml | head -20
|
|
fi
|
|
|
|
rm -f /tmp/caldav-response.xml
|