This library is an idiomatic Clojure wrapper for the symphony-java-client library, a client binding and SDK for the Symphony chat platform's REST API.
clj-symphony is available as a Maven artifact from Clojars. The latest released version is:
If you prefer to kick the library's tyres without creating a project, you can use the lein try
plugin:
$ lein try org.symphonyoss/clj-symphony
or (as of v0.10.0), if you have installed the Clojure CLI tools:
$ clj -Sdeps '{:deps {org.symphonyoss/clj-symphony {:mvn/version "#.#.#"}}}' # Where #.#.# is replaced with an actual version number >= 0.10.0
Either way, you will be dropped in a REPL with the library downloaded and ready for use.
The functionality is provided by several clj-symphony._____
namespaces.
Require them in the REPL:
(require '[clj-symphony.connect :as syc] :reload-all)
(require '[clj-symphony.user :as syu] :reload-all)
(require '[clj-symphony.stream :as sys] :reload-all)
(require '[clj-symphony.chat :as sych] :reload-all)
(require '[clj-symphony.room :as syrm] :reload-all)
(require '[clj-symphony.message :as sym] :reload-all)
(require '[clj-symphony.user-connection :as syuc] :reload-all)
Require them in your project:
(ns my-app.core
(:require [clj-symphony.connect :as syc]
[clj-symphony.user :as syu]
[clj-symphony.stream :as sys]
[clj-symphony.chat :as sych]
[clj-symphony.room :as syrm]
[clj-symphony.message :as sym]
[clj-symphony.user-connection :as syuc]))
Detailed API documentation is published here.
clj-symphony is tested on:
JVM v1.7 | JVM v1.8 | JVM v9 | JVM v10 | JVM v11 | |
---|---|---|---|---|---|
Clojure 1.7.0 | ❌1,2 | ❌1 | ❌1 | ❌1 | ❌1 |
Clojure 1.8.0 | ❌2 | ✅ | ✅ | ✅ | ✅ |
Clojure 1.9.0 | ❌2 | ✅ | ✅ | ✅ | ✅ |
Clojure 1.10.0 (snapshot) | ❌2 | ✅ | ✅ | ✅ | ✅ |
1 clj-symphony only supports Clojure 1.8 and up
2 symphony-java-client only supports JVM v1.8 and up
- Fork it (https://github.com/symphonyoss/clj-symphony/fork)
- Create your feature branch (
git checkout -b feature/fooBar
) - Read our contribution guidelines and Community Code of Conduct
- Commit your changes (
git commit -am 'Add some fooBar'
) - Push to the branch (
git push origin feature/fooBar
) - Create a new Pull Request
The code in this repository is distributed under the Apache License, Version 2.0.
Copyright 2016-2019 Symphony LLC
To see the full list of licenses of all third party libraries used by this project, please run:
$ lein licenses :csv | cut -d , -f3 | sort | uniq
To see the dependencies and licenses in detail, run:
$ lein licenses