CM – 0
Description: Reference for CM-0

### Namespace

# CM – 0

A Matrix Client Library

Version | 0.0.3
Authors | Purism SPC
License | LGPL-2.1-or-later
Website | https://source.puri.sm/Librem5/libcmatrix
Source | https://source.puri.sm/Librem5/libcmatrix

#### Build

pkg-config files | `cmatrix-0`

#### Dependencies

GObject—2.0 | The base type system library
| Browse documentation

#### Additional documentation

- Compiling with libcmatrix
- Classes Hierarchy

#### Classes

Account |
Client | A Matrix client.
Event |
Matrix | The main matrix object.
Pusher | Configuration for a server side pusher. since: 0.0.1
Room | A Matrix room. This class provides access to properties of the room including a list of events maintained as a `GListModel`.
RoomEvent | An event that is associated with a matrix room like e.g. a topic change or member event. Basically Matrix message of type `m.room.*`.
RoomMessageEvent |
User |
VerificationEvent |

#### Structs

Db |
Olm |
RoomMember |
UserList | Track all users that belongs to the account.

#### Enumerations

ContentType |
EventState |
EventType | The type of a Matrix event.
PusherKind | The type of a `CmPusher`.
Status |

#### Error Domains

Error | The Error returned by the Matrix Server See https://matrix.org/docs/spec/client_server/r0.6.1#api-standards for details.

#### Callbacks

Callback | Type definition for the function that will be called when the client sees new events.

#### Functions

init | This function should be called to initialize the library. You may call this in `main()`.
utils_get_homeserver_async | Get homeserver from the given `username`. `username` should be in complete form (eg: `user`:example.org). since: 0.0.2
utils_get_homeserver_finish | Finish call to cm_utils_get_homeserver_async(). since: 0.0.2
utils_get_homeserver_sync | Get homeserver from the given `username`. `username` should be in complete form (eg: `user`:example.org). since: 0.0.2