What is usually called a chat, a channel, a conversation or a group chat on other platforms, the term used in Matrix is a "room". A room is a conversation where a group of users talk to each other.
Get a list of the most recent events sent in the room.
Get a room's room id. This is an opaque string that distinguishes rooms from each other.
This module exposes various functions that help you inspect various aspects of a room.
State events describe the room's current state. Using state events, you can determine various pieces of information, such as the room's name, its members and how many people have rejected your invitation to join.
Get a room's name. The room name is a human-friendly string designed to be displayed to the end-user.
Keep in mind that the room name is not unique: multiple rooms can have the same name.
Get a room's topic. A topic is a short message detailing what is currently being discussed in the room. It can also be used as a way to display extra information about the room, which may not be suitable for the room name.
Get a room's pinned events. Pinned events are event IDs that the user is expected to review later.
Get a room's current state.
Leave a room.
Redact an event in the room. This erases as much information from the event as possible.
Account data is personal information that the user stores about this Matrix room. This may include information like:
You may consider the account data as a Dict String Json.Value type. Account
data is linked to the user account: other logged in devices can see the account
data too, as the server synchronizes it, but the server shouldn´t show it to
other users.
Get a piece of account data linked to a certain string key.
Set account data to a Matrix room.
Besides reading the latest events, one can also send new events to the Matrix
room. These events are JSON objects that can be shaped in any way or form that
you like. To help other users with decoding your JSON objects, you pass an
eventType string which helps them figure out the nature of your JSON object.
Send a message event to a given room.
Send a state event to a given room.
Invite a user to a room.
Kick a user from a room.
Ban a user from a room.
The Matrix Room type representing a room that the Matrix user has joined.