Outils pour utilisateurs

Outils du site


commun:migration_baikal_nextcloud_calendriers_contacts

Ceci est une ancienne révision du document !


Migration Baïkal → Nextcloud (calendriers & contacts)

Migration d'un serveur Baïkal (CalDAV/CardDAV) vers une instance Nextcloud existante, avec reconfiguration des clients Android via DAVx⁵.

1. Export depuis Baïkal

Le script exporte le calendrier et le carnet d'adresses default.

Le script

Copier le contenu ci-dessous dans un fichier baikal-export-user.sh :

baikal-export-user.sh
#!/usr/bin/env bash
# Export Baïkal (calendrier + contacts) pour UN utilisateur.
# Usage : ./baikal-export-user.sh
# Sortie : ./baikal-export/<user>/cal-default.ics et contacts-default.vcf
 
set -u
BASE="https://dav.beafrancois.fr/dav/html"   # <-- adapter au serveur Baïkal
OUT="./baikal-export"
 
read -r -p "Nom d'utilisateur Baïkal : " USER
read -r -s -p "Mot de passe pour $USER : " PASS; echo
 
DIR="$OUT/$USER"; mkdir -p "$DIR"
AUTH=(--digest -u "$USER:$PASS")
 
## --- CALENDRIER (default) ---
F="$DIR/cal-default.ics"
curl -s "${AUTH[@]}" "$BASE/cal.php/calendars/$USER/default/?export" -o "$F"
if head -1 "$F" | grep -q BEGIN:VCALENDAR; then
  N=$(grep -c BEGIN:VEVENT "$F")
  echo "[OK] Calendrier : $N événements -> $F"
else
  echo "[!] Calendrier : export invalide (mauvais mot de passe ?) -> $F"
fi
 
## --- CONTACTS (default) ---
F="$DIR/contacts-default.vcf"
: > "$F"
EXPECTED=0
while read -r P; do
  [ -z "$P" ] && continue
  EXPECTED=$((EXPECTED+1))
  curl -s "${AUTH[@]}" "https://dav.beafrancois.fr$P" >> "$F"
  echo "" >> "$F"
done < <(curl -s "${AUTH[@]}" -X PROPFIND -H "Depth: 1" \
  "$BASE/card.php/addressbooks/$USER/default" \
  | tr -d '\r' \
  | grep -o "/dav/html/card.php/addressbooks/$USER/default/[^<]*vcf")
GOT=$(grep -c BEGIN:VCARD "$F")
if [ "$GOT" -eq "$EXPECTED" ] && [ "$GOT" -gt 0 ]; then
  echo "[OK] Contacts : $GOT/$EXPECTED -> $F"
else
  echo "[!] Contacts : $GOT récupérés sur $EXPECTED listés -> $F"
fi

Exécution

Lancer le script :

chmod +x baikal-export-user.sh
./baikal-export-user.sh

Le script demande le nom d'utilisateur puis le mot de passe (baikal).

Les fichiers calendrier et carnet sont créés :

baikal-export/<utilisateur>/cal-default.ics
baikal-export/<utilisateur>/contacts-default.vcf

Le script affiche le nombre d'événements et de contacts récupérés.

Si la sortie affiche [!], l'export a échoué (mot de passe erroné en général). Ne pas continuer avec un fichier invalide.

2. Import dans Nextcloud

Pour l'utilisateur, connecté avec son compte Nextcloud :

  1. Calendrier : application Calendar → Paramètres (en bas à gauche) → Importer un calendrier → sélectionner cal-default.ics → cible : calendrier « Personnel » ou un nouveau calendrier
  2. Contacts : application Contacts → Paramètres → Importer des contacts → sélectionner contacts-default.vcf

Vérifier que les compteurs correspondent aux chiffres notés à l'export.

3. Configuration Android (DAVx⁵)

Suppression de l'ancien compte Baïkal

Supprimer l'ancien compte avant d'ajouter le nouveau, sinon doublons d'événements et de contacts sur le téléphone.

Dans DAVx⁵ → ouvrir le compte Baïkal → menu ⋮ → Supprimer le compte.

Ajout du compte Nextcloud

  1. DAVx⁵ → + → Connexion avec Nextcloud
  2. suit une étape d'authentification qu'il suffit de compléter
  3. Sélectionner les calendriers (détectés automatiquement) et le carnet d'adresses à synchroniser
  4. Lancer une synchronisation manuelle et vérifier dans les applis Agenda et Contacts du téléphone
commun/migration_baikal_nextcloud_calendriers_contacts.1787044913.txt.gz · Dernière modification : de francois

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki