Mattermost for Scala (mm4s)
Composable interface to the Mattermost REST API using Akka Streams.
API for developing Bots with Akka. Provides a Gateway API to Mattermost.
Bots can be configured externally from the docker deployment by setting the following environment variables.
MM_HOST- Mattermost server host name
MM_PORT- Mattermost server port number
BOT_USER- Bot Username - The username for the Bot, which will be used to create a Bot if not already existing
BOT_PASS- Bot Password - The password for the Bot account. Be warned that security is pretty low speed right now.
BOT_TEAM- Bot Team - The team to connect to, only one supported per Bot.
BOT_CHANNEL- Channel ID - The channel the Bot lives in (for now only one) and messages to.
Note: At this time a single bot can be dynamically placed on a single team and channel only. #23
Minimal REST API for Docker tailored for deploying containerized bots deployed as a Docker container.
Note that rx-docker uses the following environment variables
DOCKER_HOST: which should use the
DOCKER_CERT_PATH: which may need added as a volume and env var
Containerized init scripts for a MM development instance.
Dependency injection is provided through Akka Injects and is available within any bot.
See the Akka Injects readme for details on use.
Add the bintray resolver to you sbt project
resolvers += "jw3 at bintray" at "https://dl.bintray.com/jw3/maven"
The following artifacts can be specified
"com.github.jw3" %% "mm4s-api" % "0.2.1"
"com.github.jw3" %% "mm4s-bots" % "0.2.1"
"com.github.jw3" %% "mm4s-dockerbots" % "0.2.1"
Bugs and Feedback
For bugs, questions and discussions please use the Github Issues.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.