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.
This project's roadmap is managed exclusively via milestones in the project's GitHub issue tracker. Typically there will be two milestones that are being tracked at most points in time:
- The next maintenance (patch) release.
- The next feature (minor or major) release.
This project strictly follows semantic versioning rules for determining how issues are assigned to each of these milestones, and what impact that will have on the release's version number (including whether a feature release is major or minor, depending on whether backwards compatibility is broken or not).
clj-symphony is tested on:
JVM v1.7 | JVM v1.8 (LTS) | JVM v9 & v10 (FR) | JVM v11 (LTS) | JVM v12 & v13 (FR) | JVM v14 (FR) | |
---|---|---|---|---|---|---|
Clojure 1.7.0 | ❌1,2 | ❌1 | ❌1,3 | ❌1 | ❌1,4 | ❌1 |
Clojure 1.8.0 | ❌2 | ✅ | ❌3 | ✅ | ❌4 | ✅ |
Clojure 1.9.0 | ❌2 | ✅ | ❌3 | ✅ | ❌4 | ✅ |
Clojure 1.10.1 | ❌2,5 | ✅ | ❌3 | ✅ | ❌4 | ✅ |
1 clj-symphony only supports Clojure 1.8 and up
2 symphony-java-client only supports JVM v1.8 and up
3 Java FRs 9 & 10 have been superceded by the latest Java LTS (v11), and are no longer supported by Oracle
4 Java FRs 12 & 13 have been superceded by the latest Java FR (v14), and are no longer supported by Oracle
5 Clojure v1.10 only supports JVM v1.8 and up
Copyright 2016 Fintech Open Source Foundation
Distributed under the Apache License, Version 2.0.
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