# `Mediasoup.WebRtcServer`
[🔗](https://github.com/oviceinc/mediasoup-elixir/blob/main/lib/webrtc_server.ex#L1)

https://mediasoup.org/documentation/v3/mediasoup/api/#WebRtcServer

# `create_option`

```elixir
@type create_option() :: map() | Mediasoup.WebRtcServer.Options.t()
```

# `t`

```elixir
@type t() :: %Mediasoup.WebRtcServer{id: String.t(), pid: pid()}
```

# `webrtc_server_listen_info`

```elixir
@type webrtc_server_listen_info() :: %{
  :protocol =&gt; :udp | :tcp,
  :ip =&gt; String.t(),
  :exposeInternalIp =&gt; boolean(),
  optional(:announcedAddress) =&gt; String.t() | nil,
  optional(:announcedIp) =&gt; String.t() | nil,
  optional(:port) =&gt; integer() | nil
}
```

# `child_spec`

Returns a specification to start this module under a supervisor.

See `Supervisor`.

# `close`

```elixir
@spec close(t()) :: :ok
```

  Closes the WebRtcServer.

# `closed?`

```elixir
@spec closed?(t()) :: boolean()
```

Tells whether the given WebRtcServer is closed on the local node.

# `dump`

```elixir
@spec dump(t()) :: any() | {:error, :terminated}
```

Dump internal stat for WebRtcServer.

# `id`

WebRtcTransport identifier.

# `start_link`

# `struct_from_pid`

```elixir
@spec struct_from_pid(pid()) :: t()
```

# `struct_from_pid_and_ref`

# `to_ref`

---

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