Redsmite Sync

by redsmite-com
5
4
3
2
1
Score: 35/100

Description

This plugin has not been manually reviewed by Obsidian staff. Automatically synchronizes your Redsmite reports to your vault.

Reviews

No reviews yet.

Stats

stars
15
downloads
0
forks
1
days
NaN
days
NaN
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
0
commits

Latest Version

Invalid date

Changelog

README file from

Github

Redsmite Sync — Plugin Obsidian

Synchronise automatiquement vos comptes-rendus (CRs) Redsmite dans votre vault Obsidian.

Fonctionnalités

  • Sync automatique — poll périodique (configurable, 1-60 min) des CRs en attente
  • Smart placement — le plugin propose un dossier basé sur le nom du client, et apprend vos préférences (après 2 confirmations identiques, le placement devient automatique)
  • Idempotence — un CR déjà présent dans le vault n'est pas re-téléchargé
  • Desktop only — fonctionne sur Windows, macOS, Linux (pas mobile)

Installation

Le plugin est disponible sur le Community Plugin Store d'Obsidian :

  1. Ouvrir Obsidian → ParamètresPlugins tiers
  2. Désactiver le "Mode restreint" si ce n'est pas déjà fait
  3. Cliquer Parcourir → rechercher "Redsmite"
  4. Cliquer InstallerActiver

Les mises à jour sont automatiques via Obsidian.

Configuration

Après activation, aller dans Paramètres → Redsmite Sync :

Paramètre Description Défaut
Token API Token d'authentification Redsmite (fourni par votre administrateur)
Dossier cible Dossier par défaut pour les CRs sans correspondance client Redsmite
Intervalle de sync Fréquence de vérification des nouveaux CRs (minutes) 5 min

Le bouton Tester la connexion vérifie que le token est valide.

Les correspondances client-dossier sont apprises automatiquement : après 2 placements confirmés dans le même dossier pour un client, les CRs suivants y sont classés sans intervention.

Architecture

Plugin (desktop, TypeScript)
  ↓ poll toutes les N minutes
Supabase Edge Function /obsidian-pending
  ↓ retourne les CRs non synchronisés
Plugin : smart placement (propose dossier → confirmation utilisateur)
  ↓
Plugin : télécharge le markdown via /obsidian-cr-md/:id
  ↓ écrit le fichier .md dans le vault
Supabase Edge Function /obsidian-ack/:id
  ↓ marque le CR comme synchronisé (obsidian_synced = true)

Développement

Prérequis

  • Node.js 18+
  • npm

Commandes

npm install          # installer les dépendances
npm run build        # compiler main.ts → main.js (production)
npm run dev          # compiler en mode watch (développement)

Structure

main.ts                  # Plugin principal (polling, sync, smart placement)
settings.ts              # Types et valeurs par défaut des settings
settings-tab.ts          # UI de configuration dans Obsidian
smart-placement-modal.ts # Modale de validation du dossier cible
folder-suggest-modal.ts  # Sélecteur de dossier fuzzy
manifest.json            # Métadonnées du plugin (id, version, compatibilité)
esbuild.config.mjs       # Config de build esbuild

Publier une mise à jour

  1. Modifier le code
  2. Bumper la version dans manifest.json ET package.json
  3. Build : npm run build
  4. Commit + push
  5. Créer une GitHub Release avec le tag = version (ex: 1.1.0)
  6. Attacher main.js et manifest.json comme assets de la release
  7. Les utilisateurs BRAT reçoivent la mise à jour automatiquement

Backend requis

Ce plugin nécessite les Edge Functions Supabase suivantes déployées en production :

  • obsidian-pending — GET, retourne les CRs en attente de sync
  • obsidian-ack — POST, marque un CR comme synchronisé
  • obsidian-cr-md — GET, retourne le contenu markdown d'un CR

Et la migration api_tokens_obsidian appliquée (table api_tokens + colonne obsidian_synced sur meeting_notes).

Licence

Propriétaire — Redsmite SAS