pub struct DiscussionTopic {Show 23 fields
pub id: u64,
pub course_id: Option<u64>,
pub title: Option<String>,
pub message: Option<String>,
pub html_url: Option<String>,
pub posted_at: Option<DateTime<Utc>>,
pub last_reply_at: Option<DateTime<Utc>>,
pub require_initial_post: Option<bool>,
pub user_can_see_posts: Option<bool>,
pub discussion_subentry_count: Option<u64>,
pub read_state: Option<String>,
pub unread_count: Option<u64>,
pub subscribed: Option<bool>,
pub discussion_type: Option<String>,
pub published: Option<bool>,
pub locked: Option<bool>,
pub pinned: Option<bool>,
pub locked_for_user: Option<bool>,
pub assignment_id: Option<u64>,
pub delayed_post_at: Option<DateTime<Utc>>,
pub due_at: Option<DateTime<Utc>>,
pub course_id_ctx: Option<u64>,
pub group_id: Option<u64>,
/* private fields */
}Expand description
A Canvas discussion topic (announcement or discussion board post).
Fields§
§id: u64§course_id: Option<u64>§title: Option<String>§message: Option<String>§html_url: Option<String>§posted_at: Option<DateTime<Utc>>§last_reply_at: Option<DateTime<Utc>>§require_initial_post: Option<bool>§user_can_see_posts: Option<bool>§discussion_subentry_count: Option<u64>§read_state: Option<String>§unread_count: Option<u64>§subscribed: Option<bool>§discussion_type: Option<String>§published: Option<bool>§locked: Option<bool>§pinned: Option<bool>§locked_for_user: Option<bool>§assignment_id: Option<u64>§delayed_post_at: Option<DateTime<Utc>>§due_at: Option<DateTime<Utc>>§course_id_ctx: Option<u64>§group_id: Option<u64>Implementations§
Source§impl DiscussionTopic
impl DiscussionTopic
Sourcepub async fn update(
&self,
params: UpdateDiscussionParams,
) -> Result<DiscussionTopic>
pub async fn update( &self, params: UpdateDiscussionParams, ) -> Result<DiscussionTopic>
Sourcepub async fn post_entry(
&self,
params: PostEntryParams,
) -> Result<DiscussionEntry>
pub async fn post_entry( &self, params: PostEntryParams, ) -> Result<DiscussionEntry>
Post a new top-level entry to this discussion topic.
§Canvas API
POST /api/v1/courses/:course_id/discussion_topics/:id/entries
Sourcepub fn get_topic_entries(&self) -> PageStream<DiscussionEntry>
pub fn get_topic_entries(&self) -> PageStream<DiscussionEntry>
Stream all top-level entries of this topic.
§Canvas API
GET /api/v1/courses/:course_id/discussion_topics/:id/entries
Sourcepub async fn get_entries(&self, ids: &[u64]) -> Result<Vec<DiscussionEntry>>
pub async fn get_entries(&self, ids: &[u64]) -> Result<Vec<DiscussionEntry>>
Fetch specific entries by ID.
§Canvas API
GET /api/v1/courses/:course_id/discussion_topics/:id/entry_list?ids[]=...
Sourcepub async fn mark_as_read(&self) -> Result<()>
pub async fn mark_as_read(&self) -> Result<()>
Sourcepub async fn mark_as_unread(&self) -> Result<()>
pub async fn mark_as_unread(&self) -> Result<()>
Sourcepub async fn mark_entries_as_read(&self, forced: bool) -> Result<()>
pub async fn mark_entries_as_read(&self, forced: bool) -> Result<()>
Sourcepub async fn mark_entries_as_unread(&self, forced: bool) -> Result<()>
pub async fn mark_entries_as_unread(&self, forced: bool) -> Result<()>
Mark all entries as unread.
§Canvas API
DELETE /api/v1/courses/:course_id/discussion_topics/:id/read_all
Sourcepub async fn subscribe(&self) -> Result<()>
pub async fn subscribe(&self) -> Result<()>
Subscribe to this topic.
§Canvas API
PUT /api/v1/courses/:course_id/discussion_topics/:id/subscribed
Sourcepub async fn unsubscribe(&self) -> Result<()>
pub async fn unsubscribe(&self) -> Result<()>
Unsubscribe from this topic.
§Canvas API
DELETE /api/v1/courses/:course_id/discussion_topics/:id/subscribed
Trait Implementations§
Source§impl Clone for DiscussionTopic
impl Clone for DiscussionTopic
Source§fn clone(&self) -> DiscussionTopic
fn clone(&self) -> DiscussionTopic
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DiscussionTopic
impl Debug for DiscussionTopic
Source§impl<'de> Deserialize<'de> for DiscussionTopic
impl<'de> Deserialize<'de> for DiscussionTopic
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for DiscussionTopic
impl !RefUnwindSafe for DiscussionTopic
impl Send for DiscussionTopic
impl Sync for DiscussionTopic
impl Unpin for DiscussionTopic
impl UnsafeUnpin for DiscussionTopic
impl !UnwindSafe for DiscussionTopic
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more