---
tags: [note, Automatisation]
type: "note"
nature: documentation # Options : portrait, lieu, info, concept, script, process, tuto, none
ressource: false
univers: PRO
projects:
  - [[03_PROJETS/VPS-IA]]
  - "PROJET"
date: "2026-09-28"
priority: 10
description: "Catalogue de cas d'usage Node-RED et OpenCode : webhooks SilverBullet, alertes ntfy via Matrix."
---
# Cas d’usage de OpenCode et Node Red

La mise en oeuvre de ces cas d’usage s’inscrit dans le cadre du projet [[03_PROJETS/VPS-IA]] et des travaux sur [[04_NOTES/VPS-IA_NodeRed_Utilisation-OpenCode]].

Elle se base sur le stack : SilverBullet v2, Node-RED, OpenCode Server, ntfy, Tuwunel/FluffyChat et YunoHost, offrant une architecture légère, souveraine et réactive.

Il est notamment possible :
* D’utilisez le Space Lua intégré à SilverBullet pour déclencher des webhooks vers Node-RED sur des événements précis (ex. mise à jour d'un statut de tâche
* D’utilisez **ntfy** pour les notifications unidirectionnelles urgentes (alertes serveur, tâches échues) et **FluffyChat / Matrix** pour l'interactivité (répondre à une alerte pour valider une action via un bot Matrix dans Node-RED).
* De conservez les tâches d'orchestration légère dans Node-RED et déléguez uniquement à l'API d'OpenCode la génération de texte, la synthèse de notes ou le parsing de données non structurées.


## Cas 1 : "Quick Capture" vocale ou texte interactive via Matrix

1.  Vous envoyez un message texte ou un note vocale dans un salon privé sur **FluffyChat**.    
2.  **Node-RED** écoute ce salon via un bot Matrix (ex. `node-red-contrib-matrix`).
3.  Si c'est de l'audio, Node-RED le passe à une API de transcription (ou via OpenCode).    
4.  Node-RED envoie le contenu à **OpenCode** pour structurer le texte (détection de tâches, tags, résumé).    
5.  Le résultat est automatiquement inséré dans la note `Inbox.md` de SilverBullet sous la forme :
    
    ```markdown
    - [ ] Tâche extraite #inbox [[Date]]
    ```
    
6.  Vous recevez un push **ntfy** discret pour confirmer le classement.


## Cas 2 : Revue du soir et synthèses assistées par IA

1.  Chaque soir à 21h, un cron **Node-RED** lit le fichier de la journée `Journal/YYYY-MM-DD.md` dans SilverBullet  
2.  Node-RED vérifie les blocs non cochés ou balisés avec des tags comme `#idees` ou `#a-traiter`.    
3.  Node-RED envoie ces notes à **OpenCode Server** avec un prompt d'extraction de bilan.    
4.  OpenCode génère une synthèse résumant :
    *   Les réussites de la journée.        
    *   Les tâches reportées au lendemain.        
5.  Node-RED injecte ce résumé au bas de votre journal SilverBullet et vous envoie la synthèse sur **FluffyChat**.


## Cas 3 : Système de rappels intelligents et réactifs

1.  Dans SilverBullet, vous notez vos rappels au format standard :
    
    ```markdown
    - [ ] Appeler le garagiste !due(2026-09-28 14:00)
    ```

2.  **Node-RED** scanne vos fichiers `.md` une fois par heure à la recherche de la balise `!due(...)`.    
3.  À l'échéance :  Node-RED envoie une alerte prioritaire via **ntfy** sur votre téléphone (avec des boutons d'action rapide : *Fait*, *Reporter 1h*, *Reporter 1 jour*).          
4.  Si vous cliquez sur *Fait*, le webhook de ntfy pointe vers Node-RED, qui modifie directement le fichier `.md` dans SilverBullet pour cocher la case (`- [x]`).


## Cas 4 : Veille web et résumés automatiques

1.  Vous capturez un lien web depuis votre navigateur ou votre téléphone vers un webhook Node-RED.    
2.  Node-RED extrait le texte brut de l'article (via readability/scraper).    
3.  **OpenCode Server** génère un résumé en 3 puces + les concepts clés.
4.  Node-RED crée automatiquement une fiche de lecture dans `Readings/Nom-Article.md` dans SilverBullet avec la structure :
    
    ```makdown
    ---
    url: "https://..."
    date: 2026-09-26
    tags: #article #ia
    ---
    # Résumé
    - Puce 1
    - Puce 2
    ```


## 3\. Architecture Node-RED recommandée

Pour garder votre Node-RED propre, structurez vos flux par **onglets fonctionnels** :

```
[Ingestion & Webhooks] ──> [Traitement IA (OpenCode)] ──> [Fichiers SilverBullet]
                                  │
                                  └──> [Notifications (ntfy / Matrix)]
```

  Au niveau de la **sécurité de YunoHost :** Assurez-vous que les endpoints d'API appelés par vos PWAs ou webhooks (ex. webhooks ntfy ou Node-RED) passent par des jetons de sécurité (Bearer tokens ou clés API uniques) pour éviter d'exposer Node-RED sans authentification derrière le reverse-proxy.

## Cas 5 : Gestion des e-mails 

* Créer une adresse email dédiée au bot : bot@datagrandest.net
* Configurer la boîte email pour recevoir et envoyer 
* Mettre en place un webmail (vérification que tout fonctionne)
* Demander à OpenCode si tout fonctionne et tester

Usage : 
* Transférer un mail au bot sur bot@datagrandest.net en notant le prompt au début de la réponse
* Le bot interroge sa boîte mail régulièrement (1 heure)
* Il traite les messages non lus et renvoie la réponse

Sécurité :
* Le Bot ne lit et ne traite que les messages de l'email défini au début.
* Le Bot ne fait que répondre au mail transmis
* Si le Bot ne sais pas quoi faire, il retourne ses questions par email 
* Le Bot n'exécute aucune action sur le serveur : le service n'est pas un outil de chat.


  
