logo
pub struct RoomPowerLevels {
    pub ban: Int,
    pub events: BTreeMap<RoomEventType, Int>,
    pub events_default: Int,
    pub invite: Int,
    pub kick: Int,
    pub redact: Int,
    pub state_default: Int,
    pub users: BTreeMap<OwnedUserId, Int>,
    pub users_default: Int,
    pub notifications: NotificationPowerLevels,
}
Available on crate feature events only.
Expand description

The effective power levels of a room.

This struct contains the same fields as RoomPowerLevelsEventContent and be created from that using a From trait implementation, but it is also implements From<RedactedRoomPowerLevelsEventContent>, so can be used when wanting to inspect the power levels of a room, regardless of whether the most recent power-levels event is redacted or not.

Fields

ban: Int

The level required to ban a user.

events: BTreeMap<RoomEventType, Int>

The level required to send specific event types.

This is a mapping from event type to power level required.

events_default: Int

The default level required to send message events.

invite: Int

The level required to invite a user.

kick: Int

The level required to kick a user.

redact: Int

The level required to redact an event.

state_default: Int

The default level required to send state events.

users: BTreeMap<OwnedUserId, Int>

The power levels for specific users.

This is a mapping from user_id to power level for that user.

users_default: Int

The default power level for every user in the room.

notifications: NotificationPowerLevels

The power level requirements for specific notification types.

This is a mapping from key to power level for that notifications key.

Implementations

Get the power level of a specific user.

Whether the given user can do the given action based on the power levels.

Get the maximum power level of any user.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more