Application service to bridge Matrix <-> Rocket.Chat.
Rust
Latest commit ed40f80 Feb 19, 2017 @exul committed on GitHub Merge pull request #12 from exul/test-me-error-case
Add a spec to test errors on the me endpoint
Permalink
Failed to load latest commit information.
assets Add list command Feb 13, 2017
config Add configuration Nov 21, 2016
migrations List joined rooms Feb 15, 2017
src Extract the room connected check Feb 19, 2017
tests
.gitignore
.rustfmt.toml Change method call width to 80 Nov 25, 2016
.travis.yml Reuse the compiled binaries when measuring the coverage Jan 22, 2017
Cargo.lock
Cargo.toml
Dockerfile
LICENSE-APACHE
LICENSE-MIT
README.md Add documentation about SQLite Jan 27, 2017

README.md

Matrix <-> Rocket.Chat bridge

Build Status Coverage Status

This is an application service that bridges Matrix to Rocket.Chat.

Warning: This application service is still in development. Do not use it! There will be breaking changs!

Compiling from Source

To compile the application service you need Rust nightly (I know that's bad, sorry).

This will change, once serde, diesel.rs and ruma-identifiers are working on stable rust.

It's highly recommended that you use rustup.

git clone https://github.com/exul/matrix-rocketchat.git
cd matrix-rocketchat
rustup override set nightly
cargo build --release
./target/release/matrix-rocketchat

Dependencies

SQLite is used to store the data:

# On Ubuntu
sudo apt-get install libsqlite3-dev

# On Arch Linux
sudo pacman -S sqlite

If you are using the application service on Linux, you'll have to install OpenSSL:

# On Ubuntu
sudo apt-get install libssl-dev

# On Arch Linux
sudo pacman -S openssl

Acknowledgement

I learned a lot by reading the code of the following projects:

From the first one I learned a lot about Rust and Iron. The second one helped me to understand how a Matrix bridge works.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.