# `Noizu.Slack.Conversations`
[🔗](https://github.com/noizu-labs-sdks/elixir-slack/blob/v0.1.0/lib/noizu/slack/conversations.ex#L1)

Channels, DMs and threads (`conversations.*`).

Slack params go in `opts` (e.g. `types: ["public_channel", "private_channel"]`,
`exclude_archived: true`, `limit: 200`, `oldest:`, `latest:`, `inclusive:`).
`*_stream` helpers walk every page lazily and raise `Noizu.Slack.Error` on failure.

# `history`

```elixir
@spec history(Noizu.Slack.Client.t(), String.t(), keyword()) ::
  Noizu.Slack.Request.result()
```

GET conversations.history — channel messages, newest first (one page).

# `history_stream`

```elixir
@spec history_stream(Noizu.Slack.Client.t(), String.t(), keyword()) :: Enumerable.t()
```

GET conversations.history — streams every message across pages.

# `info`

```elixir
@spec info(Noizu.Slack.Client.t(), String.t(), keyword()) ::
  Noizu.Slack.Request.result()
```

GET conversations.info — channel metadata.

# `join`

```elixir
@spec join(Noizu.Slack.Client.t(), String.t(), keyword()) ::
  Noizu.Slack.Request.result()
```

POST conversations.join — joins a public channel.

# `list`

```elixir
@spec list(Noizu.Slack.Client.t(), keyword()) :: Noizu.Slack.Request.result()
```

GET conversations.list — lists channels the token can see (one page).

# `list_stream`

```elixir
@spec list_stream(Noizu.Slack.Client.t(), keyword()) :: Enumerable.t()
```

GET conversations.list — streams every channel across pages.

# `members`

```elixir
@spec members(Noizu.Slack.Client.t(), String.t(), keyword()) ::
  Noizu.Slack.Request.result()
```

GET conversations.members — member user IDs of a channel (one page).

# `replies`

```elixir
@spec replies(Noizu.Slack.Client.t(), String.t(), String.t(), keyword()) ::
  Noizu.Slack.Request.result()
```

GET conversations.replies — a thread (parent first) for message `ts` (one page).

# `replies_stream`

```elixir
@spec replies_stream(Noizu.Slack.Client.t(), String.t(), String.t(), keyword()) ::
  Enumerable.t()
```

GET conversations.replies — streams every message in the thread across pages.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
