Μετάβαση στο κύριο περιεχόμενο

Ειδοποιήσεις

Το Libre WebUI διατηρεί μόνιμα εισερχόμενα ανά χρήστη, ώστε δραστηριότητα ομάδας — αναφορές, άμεσα μηνύματα, κοινοποιήσεις, αποτυχίες αυτοματισμών και υπενθυμίσεις — να φτάνει ακόμη κι όταν η σχετική σελίδα είναι κλειστή.

Τα εισερχόμενα

Οι ειδοποιήσεις είναι πρώτα γραμμές βάσης: κρυπτογραφημένος τίτλος και σώμα, όριο 500 ανά χρήστη (διαγράφονται οι παλιότερες) και προαιρετικό κλειδί πηγής για αποφυγή διπλοτύπων. Η επιφάνεια REST παραθέτει, μετρά μη αναγνωσμένες, σημειώνει μία ή όλες και διαγράφει.

Η ζωντανή παράδοση χρησιμοποιεί μόνιμη ροή notify:<userId> μέσω GET /api/notifications/events (SSE). Η ταυτότητα προέρχεται από την πιστοποιημένη συνεδρία, ποτέ από input πελάτη, και τα SQL εισερχόμενα είναι η πηγή αλήθειας. Χαμένο γεγονός ανακτάται διαβάζοντας τη λίστα, όχι αναπαράγοντας τη ροή.

Τι παράγει ειδοποιήσεις

ΤύποςΠότε παράγεται
channel-dmΚάποιος στέλνει άμεσο μήνυμα
channel-mentionΚάποιος σας κάνει @mentions ή απαντά στο μήνυμά σας
channel-inviteΠροστίθεστε σε κανάλι
shareΚάποιος μοιράζεται πόρο μαζί σας
automation-failedΑποτυγχάνει αυτοματισμός σας, εκτός αν εξαιρέθηκε
calendar-reminderΦτάνει η ώρα υπενθύμισης γεγονότος
work-run-finishedΟ μισθωμένος agent Work ολοκληρώνει εκτέλεση
work-run-attentionAgent σταματά για input ή σφάλμα
work-takeoverAgent Work ζητά να αναλάβετε την οθόνη
work-approvalΕκτέλεση Work περιμένει έγκριση ενέργειας με παρενέργεια
systemΑνακοινώσεις επιπέδου εγκατάστασης

Δημοσιεύονται μόνο στον επηρεαζόμενο χρήστη. Αναφορά ονόματος που δεν είναι μέλος του καναλιού δεν παράγει τίποτα.

Εξερχόμενα webhook

Οι διαχειριστές μπορούν να καταχωρούν στόχους webhook για γεγονότα ομάδας.

  • Προστατευμένη έξοδος. Οι στόχοι περνούν την ίδια πολιτική με servers εργαλείων: ακριβές URL, χωρίς redirects και χωρίς ιδιωτικές/link-local διευθύνσεις, εκτός αν ο διαχειριστής επιτρέψει host μέσω TOOLS_PRIVATE_NETWORK_ALLOWLIST. Τα ονόματα επιλύονται και ελέγχονται σε κάθε παράδοση.
  • Υπογεγραμμένα. Με secret, κάθε παράδοση φέρει X-Libre-Signature: sha256=<hmac> υπολογισμένο στο ακριβές σώμα.
  • Αποχαρακτηρισμένα. Ο φάκελος περιέχει είδος γεγονότος, τύπο, τίτλο, ID και timestamps. Σώματα, μηνύματα, prompt και έγγραφα δεν εγκαταλείπουν την εγκατάσταση.
  • Μόνιμα. Οι παραδόσεις είναι μόνιμες εργασίες με περιορισμένα retries· 5xx επαναλαμβάνεται, 4xx θεωρείται απόφαση παραλήπτη και κλείνει.
  • Περιορισμένα. Κάθε στόχος εγγράφεται σε συγκεκριμένους τύπους ή *.

Push browser

Το Settings → Notifications καταχωρεί τον browser για Web Push, ώστε αναφορές, κοινοποιήσεις, υπενθυμίσεις και ολοκληρωμένη εργασία να φτάνουν με κλειστή καρτέλα.

  • VAPID (RFC 8292). Ο server υπογράφει με ζεύγος ES256 που δημιουργείται μία φορά και κρυπτογραφείται ή ορίζεται με VAPID_PUBLIC_KEY/VAPID_PRIVATE_KEY (VAPID_SUBJECT για contact claim). Δεν χρησιμοποιείται τρίτη βιβλιοθήκη ή λογαριασμός.
  • Κρυπτογραφημένο payload (RFC 8291). Κάθε μήνυμα κρυπτογραφείται με aes128gcm για τα κλειδιά της συσκευής· η υπηρεσία μεταφέρει ciphertext που δεν διαβάζει.
  • Ανά συσκευή και συνεδρία. Η εγγραφή ανήκει στον browser και τη συνεδρία. Logout (ή "sign out other sessions") αφαιρεί και το push. Τα endpoints κρυπτογραφούνται με keyed lookup token και πρέπει να είναι δημόσια HTTPS.
  • Μόνιμο. Η παράδοση έχει retries και κατάργηση εγγραφής σε 404/410.
  • Το payload έχει τίτλο, προαιρετικό σώμα, τύπο και σύνδεσμο με ίδια αποχαρακτηρισμένη στάση.

Το push απαιτεί παραγωγική εφαρμογή (ο service worker καταχωρείται μόνο εκεί) και ασφαλές origin. Ο ίδιος worker προσφέρει offline shell και εγκατάσταση: το manifest κάνει το Libre WebUI εγκαταστάσιμο, η πλοήγηση offline χρησιμοποιεί cached shell και τα hashed assets αποθηκεύονται αμετάβλητα. Η κίνηση API δεν γίνεται cache.

Όρια

  • Προτιμήσεις ανά τύπο δεν έχουν υλοποιηθεί ακόμη. Οι αυτοματισμοί τιμούν τη δική τους ρύθμιση και η έξοδος από κανάλι σταματά τις ειδοποιήσεις του.