@@ -10,33 +10,16 @@ A client-side Java library for the [Matrix](https://matrix.org) protocol.
1010This library aims to allow authors to build any kind of Matrix program such as a bot or a desktop client, the library
1111handles all matters of serialization, validation and authentication.
1212
13- ## Quick start
14-
15- ``` java
16-
17- import io.github.hikingc.matrixsdk.api.MatrixAuth ;
18- import io.github.hikingc.matrixsdk.api.MatrixClient ;
19- import io.github.hikingc.matrixsdk.api.auth.TokenMetadata ;
20- import io.github.hikingc.matrixsdk.context.DiscoveryResponse ;
21-
22- MatrixAuth auth = new MatrixAuth (URI . create(" https://example.org" )); // Set the URI of your Matrix server.
23- DiscoveryResponse response = auth. fetchWellKnown(); // Fetch well known for future operations
24-
25- TokenMetadata token = auth. performOAuthLogin(CLIENT_NAME , PORT , DEVICE_ID ); // Set configuration parameters
26- // After doing the login with the server in your browser, you will be returned the tokens...
27- MatrixClient client = MatrixClient . create(response, token. accessToken()); // Use any service you want!
28-
29- ```
30-
3113## Feature support
3214
33- | Service | Capabilities | Status |
34- | -----------| ------------------------------------------------| -----------|
35- | Rooms | Banning, kicking, room summary, room search | Supported |
36- | Events | Sending messages, reading room events, ` /sync ` | Partial |
37- | User Data | Profile search, profile modification | Supported |
38- | Filtering | Creating and retrieving filters | Supported |
39- | Auth | OpenIDConnect handshake | Supported |
15+ | Service | Capabilities | Status |
16+ | ----------------------| ---------------------------------------------| ---------------------|
17+ | Rooms | Banning, kicking, room summary, room search | Supported |
18+ | Events | Sending and reading events, ` /sync ` | Partial |
19+ | User Data | Profile search, profile modification | Supported |
20+ | Filtering | Creating and retrieving filters | Supported |
21+ | Auth | OpenIDConnect handshake | Partial |
22+ | Capability Awareness | Notify consumers about user capabilities | Not yet implemented |
4023
4124## Current project status
4225
@@ -50,9 +33,9 @@ The baseline to reach v1.0 is to implement all endpoints that are required in th
5033
51341 . This project does not handle multimedia resources, it _ does_ expose the necessary Objects to handle serialization
5235 (RoomMessage) but consumers are required to bring their own library to pass required metadata.
53- 2 . This project does not allow for the creation or hookup of custom event types, for example: ` org.custom.type ` . It
54- _ does_ recognize these events with ` UnknownEvent.java ` but consumers will be required to cast to a proper Object
55- type.
36+ 2 . This project does not allow for the creation or hookup of custom event types, for setUpClientPrints:
37+ ` org.custom.type ` . It _ does_ recognize these events with ` UnknownEvent.java ` but consumers will be required to cast
38+ to a proper Object type.
56393 . Resource serialization/deserialization depends heavily on Jackson 3.0.
57404 . There is a limit of tolerance to wrongly created events, but in general the library will not attempt to serialize
5841 badly created objects. See: https://github.com/matrix-org/matrix-spec-proposals/pull/2801 on why this is the case.
@@ -61,6 +44,8 @@ The baseline to reach v1.0 is to implement all endpoints that are required in th
6144
6245Currently, the only way to use this library is to compile it on your own using ``` mvn compile ``` .
6346
47+ Set-up and usage is described in the [ examples directory] ( examples ) .
48+
6449### Requirements
6550
6651- Java 25+
0 commit comments