Provided by: libnet-async-matrix-perl_0.19-2_all bug

NAME

       "Net::Async::Matrix::Room::State" - represents the state events in a matrix room

DESCRIPTION

       Instances of this class represent all of the known state events in a
       Net::Async::Matrix::Room at some instant in time. These objects are mutable so a "live"
       state object obtained from a room will change to keep track of newly received state
       events.

METHODS

   get_event
          $event = $state->get_event( $type, $state_key )

       Returns a HASH reference containing the raw event stored for the given type name and
       optional state key.

   get_events
          $events = $state->get_events( $type )

       Returns a multi-level HASH reference mapping all of the known state keys for a given event
       type name to their raw stored events. Typically this is useful for "m.room.member" events
       as the state keys will be user IDs.

CONVENIENCE ACCESSORS

       The following accessors all fetch single values out of certain events, as they are
       commonly used.

   name
          $name = $state->name

       Returns the "name" field of the "m.room.name" event, if it exists.

   join_rule
          $join_rule = $state->join_rule

       Returns the "join_rule" field of the "m.room.join_rules" event, if it exists.

   topic
          $topic = $state->topic

       Returns the "topic" field of the "m.room.topic" event, if it exists.

   aliases
          @aliases = $state->aliases

       Returns a list of the room alias from all the "m.room.aliases" events, in no particular
       order.

   members
          @members = $state->members

       Returns a list of Member instances representing all of the members of the room from the
       "m.room.member" events whose membership state is not "leave".

   all_members
          @members = $state->members

       Similar to "members" but even includes members in "leave" state. This is not normally what
       you want.

   member
          $member = $state->member( $user_id )

       Returns a Member instance representing a room member of the given user ID, or "undef" if
       none exists.

   member_level
          $level = $state->member_level( $user_id )

       Returns a number indicating the power level that the given user ID would have according to
       room state, taken from the "m.room.power_levels" event. This takes into account the
       "users_default" field, if no specific level exists for the given user ID.

AUTHOR

       Paul Evans <leonerd@leonerd.org.uk>