चैनल
Channels Libre WebUI में public/private rooms और direct messages जोड़ते हैं, जिनमें threads, reactions, pins, unread state, attachments और durable encrypted chat पर @model replies हैं।
प्रकार और सदस्यता
| प्रकार | कौन देखता है | कौन जुड़ता है |
|---|---|---|
public | सभी | स्वयं |
private | केवल members | owner invite करता है |
dm | दो लोग | automatic |
Access केवल membership से: हर read, write, download और event इसे जाँचता है; outsiders को existence खोले बिना 404। Global administrator content नहीं पढ़ सकता।
Owner rename, archive, invite, remove, moderate और delete करता है। Owner केवल channel delete करके निकलता है। DM pair के लिए deduplicate होता है।
Timeline
created_at और ID keyset cursors वाली durable ordered timeline।
- Idempotent posts client ID से।
- Tombstone deletion content साफ, position सुरक्षित।
- Editing केवल author,
editedAtसहित। - Threads एक level।
- Reactions user+emoji pair में unique।
- Pins members manage करते हैं।
Names, descriptions और messages encrypted हैं।
Unread
हर membership का monotonic cursor। Server per-channel count करता है; अपने messages unread नहीं। POST /api/channels/:channelId/read केवल आगे जाता है।
Real time
Changes channel:<id> और SSE GET /api/channels/:channelId/events में। हर delivery से पहले membership। SQL source of truth; missed events reread से recover।
Attachments
POST /api/channels/:channelId/attachments, 15 मिनट का one-time claim। Bytes uploader के; download पर membership जाँच।
@model replies
Reply तुरंत pending दिखता और durable job से केवल invoking member के रूप में पूरा होता है: उसका access, credentials, routing। Generation से पहले membership; errors visible।
Context 30 messages तक। One-shot completion; tools, knowledge और web search अभी नहीं जुड़े।
Limits
प्रति user 50 channels, 200 members, 50,000 messages, 8,000 characters, 5 × 10 MB attachments, 200 reactions।
सीमाएँ
Presence/typing, अलग channel export या leave के अलावा per-channel notification settings नहीं।