aryess / php-matrix-sdk
Later
Requires
- php: ~7.2|^8
- ext-json: *
- guzzlehttp/guzzle: ^6.3
- rappasoft/laravel-helpers: ^1.0
Requires (Dev)
- phpunit/phpunit: >=5.4.3
Replaces
- aryess/phpmatrixsdk: dev-master
This package is not auto-updated.
Last update: 2022-08-14 22:44:13 UTC
README
This library is archived!
The original repository for this package was deleted sometime in the summer of 2022 by its original author.
I was the maintainer of the Packagist configuration for it, however, so I have pointed Packagist at this repository to maintain access for any existing users.
This package has been forked as meet-kinksters/php-matrix-sdk
where I will perform any future updates and can entertain PRs.
This is a Matrix client-server SDK for php 7.0+, mostly copied from matrix-org/matrix-python-sdk
This package is still a work in progress, and at the current time, not everything has been ported:
- Missing E2E encryption, need php bindings for the OLM library
- No live sync, because I'm not going to go into php multithreading
- Unit tests for the client
Installation
composer require aryess/php-matrix-sdk
Usage
Client:
require('vendor/autoload.php'); use Aryess\PhpMatrixSdk\MatrixClient; $client = new MatrixClient("http://localhost:8008"); // New user $token = $client->registerWithPassword("foobar", "monkey"); // Existing user $token = $client->login("foobar", "monkey"); $room = $client->createRoom("my_room_alias"); $room->sendText("Hello!");
API:
require('vendor/autoload.php'); use Aryess\PhpMatrixSdk\MatrixHttpApi; $matrix = new MatrixHttpApi("http://localhost:8008", $sometoken); $response = $matrix->sendMessage("!roomid:matrix.org", "Hello!");
##Structure
The SDK is split into two modules: api
and client
.
###API
This contains the raw HTTP API calls and has minimal business logic. You can
set the access token (token
) to use for requests as well as set a custom
transaction ID (txn_id
) which will be incremented for each request.
###Client
This encapsulates the API module and provides object models such as Room
.
Contributing
Please see CONTRIBUTING and CODE_OF_CONDUCT for details.
Security
If you discover any security related issues, please email aryess@github.com instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.