Skip to main content

nextcloud_talk/
lib.rs

1//! Nextcloud Talk (Spreed) API client and domain models.
2//!
3//! Provides strongly typed representations and an asynchronous client for
4//! interacting with Nextcloud Talk conversations (rooms) and chat messages via
5//! Nextcloud's OCS endpoints:
6//! - [`Room`] and [`RoomType`] — conversations, access levels, and metadata beneath
7//!   `/ocs/v2.php/apps/spreed/api/v4/room`
8//! - [`ChatMessage`] — chat messages and system events beneath
9//!   `/ocs/v2.php/apps/spreed/api/v1/chat`
10//! - [`TalkClient`] — client wrapping [`nextcloud_ocs::OcsClient`]
11//!
12//! Official documentation:
13//! - [Nextcloud Talk API](https://nextcloud-talk.readthedocs.io/en/latest/)
14#![deny(missing_docs)]
15#![forbid(unsafe_code)]
16
17mod client;
18mod message;
19mod room;
20mod room_type;
21mod wire;
22
23pub use client::{CHAT_API_PATH, ROOM_API_PATH, TalkClient};
24pub use message::ChatMessage;
25pub use room::Room;
26pub use room_type::{RoomType, UnknownRoomTypeError};