No Description

Ryan Rix 5bf61e088f Make these stay as float 2 years ago
test dd9292257c Add a test framework and the first test for parsing the request error 3 years ago
.gitignore dd9292257c Add a test framework and the first test for parsing the request error 3 years ago
.travis.yml dd9292257c Add a test framework and the first test for parsing the request error 3 years ago
Cask dd9292257c Add a test framework and the first test for parsing the request error 3 years ago
LICENSE 8616aefb60 Add GPLv3+ and README.org 3 years ago
Makefile dd9292257c Add a test framework and the first test for parsing the request error 3 years ago
README.org 4422ecdbc8 Update documentation for project 3 years ago
matrix-api.el 43deab478d Make this a cl-defun since it was breaking in my emacs24 2 years ago
matrix-client-handlers.el ab62f99be9 Fix join, and plumb connection through to the input-filters 2 years ago
matrix-client-modes.el 8dfa9758c2 Rename all files to be less ambiguous 3 years ago
matrix-client.el 5bf61e088f Make these stay as float 2 years ago
matrix-helpers.el 7ffd1335f6 Add an actual error handler for requests 3 years ago
matrix-sauron.el f2dbcfc26c Sauron listener has implicit boundry seperators 3 years ago
scratch.el 7f0b0fba3c Bunch-o-cleanup 3 years ago

README.org

Installation

matrix-client is installable via MELPA. Otherwise you can add this directory to your load-path= and =(require 'matrix-client).

Usage

There are two parts, a low-level API, and a terrible barely-alpha-quality client.

Either deploy your own homeserver or register account on the public homeserver https://matrix.org/beta/#/login . After you've done that, M-x matrix-client will set you up with buffers corresponding to your Matrix rooms. You can join new ones with /join, leave with /leave or /part, and hook in to the custom functions provided by matrix-client.

matrix-api is a low-level API right now; I'm planning to wrap it with high-level API that lets you easily per-room events, and that sort of thing, and eventually a full-fledged Matrix client. The API itself is pretty tightly based on the official Python API.


(let ((matrix-homeserver-base-url "https://yourhs.org"))
  (unless matrix-token
    (matrix-login-with-password "@you:yourhs.org" "[REDACTED]"))
  (matrix-initial-sync 1)
  (matrix-send-message "!yourroom:matrix.org" "Test post please ignore"))

Contributing

    To submit patches:
  • Clone the repo
  • Create a git branch, code in a branch.
  • When you're done, send me a git format-patch style patch
  • git format-patch --to ryan@whatthefuck.computer master..HEAD > YOURBRANCHNAME.patch
  • Mail that patch to me at ryan@whatthefuck.computer, and I will integrate it.
  • Or send it to me on Matrix, I'm @rrix:whatthefuck.computer

Project Discussion happens in #ft_kickass:whatthefuck.computer

License

See LICENSE in the root of the repository for legal information.