# Slacks
An Elixir Slack client and bot.
## Quick Start
```elixir
defmodule QuoteBot do
use Slack.Bot, token: "xoxb-..."
@impl Slack.Bot
def init(state), do: {:ok, state}
@impl Slack.Bot
def handle_event(event = %{type: "message"}, bot, _state) do
text = Map.get(event, :text) || get_in(event, [:message, :text])
Slack.post_message(
bot.token,
event.channel,
text |> Enum.split("\n") |> Enum.map(&("> " <> &1)) |> Enum.join("\n"),
thread: event.ts
)
:ok
end
def handle_event(_, _, _), do: :ok
end
```
## Installation
The package can be installed by adding `slacks`
to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:slacks, "~> 0.0.1"}
]
end
```
The docs can be found at [https://hexdocs.pm/slacks](https://hexdocs.pm/slacks).
## Changelog
### 0.0.1 (2019-04-30)
New features:
* Simple/naive Slack bot.
* `Slack.post_message/4` for posting messages.
* `Slack.upload_file/4` for uploading files.
## License
_Slacks_ source code is released under [the MIT License](LICENSE).
Check [LICENSE](LICENSE) file for more information.