[][src]Crate ruma

Types and traits for working with the Matrix protocol.

This crate re-exports things from all of the other ruma crates so you don't have to manually keep all the versions in sync.

Which crates are re-exported can be configured through cargo features. Depending on which parts of Matrix are relevant to you, activate the following features:

  • client-api for the client-server API
  • federation-api for the server-server (federation) API
  • appservice-api for the application service API

Modules

identifiers

Crate ruma_identifiers contains types for Matrix identifiers for events, rooms, room aliases, room versions, and users.

presence

Common types for the presence module

push

Common types for the push notifications module

Macros

device_id
device_key_id
event_id
room_alias_id
room_id
room_version_id
server_key_id
server_name
user_id

Structs

DeviceId

A Matrix device ID.

DeviceKeyId

A key algorithm and a device id, combined with a ':'

EventId

A Matrix event ID.

Raw

A wrapper around Box<RawValue>, to be used in place of any type in the Matrix endpoint definition to allow request and response types to contain that said type represented by the generic argument Ev.

RoomAliasId

A Matrix room alias ID.

RoomId

A Matrix room ID.

RoomIdOrAliasId

A Matrix room ID or a Matrix room alias ID.

ServerKeyId

Key identifiers used for homeserver signing keys.

ServerName

A Matrix-spec compliant server name.

UserId

A Matrix user ID.

Enums

DeviceKeyAlgorithm

The basic key algorithms in the specification.

RoomVersionId

A Matrix room version ID.

ServerKeyAlgorithm

The server key algorithms defined in the Matrix spec.