The IXO Matrix Client SDK (@ixo/matrixclient-sdk) is the TypeScript library for working with a
Matrix server and the IXO bot services that run beside it. Use it to manage user profiles, room
details and room state, on a pre-configured or a custom Matrix homeserver.
This page lists the clients the SDK provides, how to install it, and the imports to start from.
Package
| Package | @ixo/matrixclient-sdk on npm |
| Source code | The GitHub repository is private. Request access by contacting the IXO World team |
Clients
| Client | What it does | Features |
|---|---|---|
| Matrix API client | Direct interaction with the Matrix API to manage media, user profiles and room properties | Media management: upload files to the Matrix server. User profile handling: retrieve and modify user profile data. Room operations: manage room visibility and memberships |
| Room bot client | Automation for managing rooms | Entity room management: automatically create entity-specific rooms. Room automation: use bots to manage room invitations and memberships |
| State bot client | Room state and access control lists (ACLs) | Access control management: configure ACLs for rooms. State management: fetch and adjust room states. The events it manages are in the Matrix state bot API |
| Utility functions | Helper functions for working with Matrix | MXC utilities: convert Matrix Content URLs. Validators: validate room IDs, user IDs and aliases |
Installation
The IXO Matrix Client SDK can be installed via npm or yarn:
npm install @ixo/matrixclient-sdk
# or
yarn add @ixo/matrixclient-sdkQuickstart
Import the required components into your project:
import {
createMatrixApiClient,
createMatrixRoomBotClient,
createMatrixStateBotClient,
utils
} from '@ixo/matrixclient-sdk';Use cases
| Use case | What you use |
|---|---|
| Real-time communication | Matrix rooms for communication between users |
| Automated room management | The bot clients |
| Access control | ACLs and the state management tools |