# `ExWapp.Conn`
[🔗](https://github.com/elchemista/ex_wapp/blob/v0.1.5/lib/ex_wapp/conn.ex#L1)

Thin wrapper around the WhatsApp WebSocket transport.

The module is responsible for driving the Noise handshake and routing
decrypted nodes back to the owning `ExWapp.Session` process.

# `options`

```elixir
@type options() :: [session: pid(), store: ExWapp.Store.t(), noise: keyword()]
```

# `restart_stream`

```elixir
@spec restart_stream(pid()) :: :ok
```

Restarts the XML stream after SASL success.

# `send_node`

```elixir
@spec send_node(pid(), ExWapp.Binary.binary_node() | tuple()) :: :ok
```

Asks the connection process to send a binary node.

# `start_link`

```elixir
@spec start_link(options()) :: GenServer.on_start()
```

Starts the WebSocket process.

---

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