SubredditModerationStream¶
- class asyncpraw.models.reddit.subreddit.SubredditModerationStream(subreddit: asyncpraw.models.Subreddit)¶
Provides moderator streams.
- __init__(subreddit: asyncpraw.models.Subreddit)¶
Create a SubredditModerationStream instance.
- Parameters
subreddit – The moderated subreddit associated with the streams.
- edited(only: Optional[str] = None, **stream_options: Any) AsyncGenerator[Union[asyncpraw.models.Comment, asyncpraw.models.Submission], None] ¶
Yield edited comments and submissions as they become available.
- Parameters
only – If specified, one of
"comments"
, or"submissions"
to yield only results of that type.
Keyword arguments are passed to
stream_generator()
.For example, to retrieve all new edited submissions/comments made to all moderated subreddits, try:
subreddit = await reddit.subreddit("mod") async for item in subreddit.mod.stream.edited(): print(item)
- log(action: Optional[str] = None, mod: Optional[Union[asyncpraw.models.Redditor, str]] = None, **stream_options: Any) AsyncGenerator[asyncpraw.models.ModAction, None] ¶
Yield moderator log entries as they become available.
- Parameters
action – If given, only return log entries for the specified action.
mod – If given, only return log entries for actions made by the passed in Redditor.
For example, to retrieve all new mod actions made to all moderated subreddits, try:
subreddit = await reddit.subreddit("mod") async for log in subreddit.mod.stream.log(): print("Mod: {}, Subreddit: {}".format(log.mod, log.subreddit))
- modmail_conversations(other_subreddits: Optional[List[asyncpraw.models.Subreddit]] = None, sort: Optional[str] = None, state: Optional[str] = None, **stream_options: Any) AsyncGenerator[asyncpraw.models.reddit.modmail.ModmailConversation, None] ¶
Yield new-modmail conversations as they become available.
- Parameters
other_subreddits – A list of
Subreddit
instances for which to fetch conversations (default: None).sort – Can be one of: mod, recent, unread, user (default: recent).
state – Can be one of: all, appeals, archived, default, highlighted, inbox, inprogress, join_requests, mod, new, notifications (default: all). “all” does not include mod or archived conversations. “inbox” does not include appeals conversations.
Keyword arguments are passed to
stream_generator()
.To print new mail in the unread modmail queue try:
subreddit = await reddit.subreddit("all") async for message in subreddit.mod.stream.modmail_conversations(): print("From: {}, To: {}".format(message.owner, message.participant))
- modqueue(only: Optional[str] = None, **stream_options: Any) AsyncGenerator[Union[asyncpraw.models.Comment, asyncpraw.models.Submission], None] ¶
Yield comments/submissions in the modqueue as they become available.
- Parameters
only – If specified, one of
"comments"
, or"submissions"
to yield only results of that type.
Keyword arguments are passed to
stream_generator()
.To print all new modqueue items try:
subreddit = await reddit.subreddit("mod") async for item in subreddit.mod.stream.modqueue(): print(item)
- reports(only: Optional[str] = None, **stream_options: Any) AsyncGenerator[Union[asyncpraw.models.Comment, asyncpraw.models.Submission], None] ¶
Yield reported comments and submissions as they become available.
- Parameters
only – If specified, one of
"comments"
, or"submissions"
to yield only results of that type.
Keyword arguments are passed to
stream_generator()
.To print new user and mod report reasons in the report queue try:
subreddit = await reddit.subreddit("mod") async for item in subreddit.mod.stream.reports(): print(item)
- spam(only: Optional[str] = None, **stream_options: Any) AsyncGenerator[Union[asyncpraw.models.Comment, asyncpraw.models.Submission], None] ¶
Yield spam comments and submissions as they become available.
- Parameters
only – If specified, one of
"comments"
, or"submissions"
to yield only results of that type.
Keyword arguments are passed to
stream_generator()
.To print new items in the spam queue try:
subreddit = await reddit.subreddit("mod") async for item in subreddit.mod.stream.spam(): print(item)
- unmoderated(**stream_options: Any) AsyncGenerator[asyncpraw.models.Submission, None] ¶
Yield unmoderated submissions as they become available.
Keyword arguments are passed to
stream_generator()
.To print new items in the unmoderated queue try:
subreddit = await reddit.subreddit("mod") async for item in subreddit.mod.stream.unmoderated(): print(item)
- unread(**stream_options: Any) AsyncGenerator[asyncpraw.models.SubredditMessage, None] ¶
Yield unread old modmail messages as they become available.
Keyword arguments are passed to
stream_generator()
.See also
inbox()
for all messages.To print new mail in the unread modmail queue try:
subreddit = await reddit.subreddit("mod") async for message in subreddit.mod.stream.unread(): print("From: {}, To: {}".format(message.author, message.dest))