LiveContributorRelationship
- class asyncpraw.models.reddit.live.LiveContributorRelationship(thread: asyncpraw.models.LiveThread)
Provide methods to interact with live threads’ contributors.
- __call__() AsyncIterator[asyncpraw.models.Redditor]
Return a
RedditorList
for live threads’ contributors.Usage:
thread = await reddit.live("ukaeu1ik4sw5") async for contributor in thread.contributor(): print(contributor)
- __init__(thread: asyncpraw.models.LiveThread)
Initialize a
LiveContributorRelationship
instance.- Parameters:
thread – An instance of
LiveThread
.
Note
This class should not be initialized directly. Instead, obtain an instance via:
LiveThread.contributor()
.
- await accept_invite()
Accept an invite to contribute the live thread.
Usage:
thread = await reddit.live("ydwwxneu7vsa") await thread.contributor.accept_invite()
- await invite(redditor: str | asyncpraw.models.Redditor, *, permissions: List[str] | None = None)
Invite a redditor to be a contributor of the live thread.
- Parameters:
redditor – A redditor name or
Redditor
instance.permissions – When provided (not
None
), permissions should be a list of strings specifying which subset of permissions to grant. An empty list[]
indicates no permissions, and when not provided (None
), indicates full permissions.
- Raises:
RedditAPIException
if the invitation already exists.
Usage:
thread = await reddit.live("ukaeu1ik4sw5") redditor = await reddit.redditor("spez", fetch=False) # "manage" and "settings" permissions await thread.contributor.invite(redditor, permissions=["manage", "settings"])
See also
LiveContributorRelationship.remove_invite()
to remove the invite for redditor.
- await leave()
Abdicate the live thread contributor position (use with care).
Usage:
thread = await reddit.live("ydwwxneu7vsa") await thread.contributor.leave()
- await remove(redditor: str | asyncpraw.models.Redditor)
Remove the redditor from the live thread contributors.
- Parameters:
redditor – A redditor fullname (e.g.,
"t2_1w72"
) orRedditor
instance.
Usage:
thread = await reddit.live("ukaeu1ik4sw5") redditor = await reddit.redditor("spez", fetch=False) await thread.contributor.remove(redditor) await thread.contributor.remove("t2_1w72") # with fullname
- await remove_invite(redditor: str | asyncpraw.models.Redditor)
Remove the invite for redditor.
- Parameters:
redditor – A redditor fullname (e.g.,
"t2_1w72"
) orRedditor
instance.
Usage:
thread = await reddit.live("ukaeu1ik4sw5") redditor = await reddit.redditor("spez", fetch=False) await thread.contributor.remove_invite(redditor) await thread.contributor.remove_invite("t2_1w72") # with fullname
See also
LiveContributorRelationship.invite()
to invite a redditor to be a contributor of the live thread.
- await update(redditor: str | asyncpraw.models.Redditor, *, permissions: List[str] | None = None)
Update the contributor permissions for
redditor
.- Parameters:
redditor – A redditor name or
Redditor
instance.permissions – When provided (not
None
), permissions should be a list of strings specifying which subset of permissions to grant (other permissions are removed). An empty list[]
indicates no permissions, and when not provided (None
), indicates full permissions.
For example, to grant all permissions to the contributor, try:
thread = await reddit.live("ukaeu1ik4sw5") await thread.contributor.update("spez")
To grant
"access"
and"edit"
permissions (and to remove other permissions), try:await thread.contributor.update("spez", permissions=["access", "edit"])
To remove all permissions from the contributor, try:
await subreddit.moderator.update("spez", permissions=[])
- await update_invite(redditor: str | asyncpraw.models.Redditor, *, permissions: List[str] | None = None)
Update the contributor invite permissions for
redditor
.- Parameters:
redditor – A redditor name or
Redditor
instance.permissions – When provided (not
None
), permissions should be a list of strings specifying which subset of permissions to grant (other permissions are removed). An empty list[]
indicates no permissions, and when not provided (None
), indicates full permissions.
For example, to set all permissions to the invitation, try:
thread = await reddit.live("ukaeu1ik4sw5") await thread.contributor.update_invite("spez")
To set
"access"
and"edit"
permissions (and to remove other permissions) to the invitation, try:await thread.contributor.update_invite("spez", permissions=["access", "edit"])
To remove all permissions from the invitation, try:
await thread.contributor.update_invite("spez", permissions=[])