# `Twilio.Insights.V1.Video.RoomService`
[🔗](https://github.com/jeffhuen/twilio_elixir/blob/main/lib/twilio/insights/v1/video/room_service.ex#L2)

Service for Room API operations.

Operations: `list`, `fetch`

# `fetch`

```elixir
@spec fetch(Twilio.Client.t(), String.t(), keyword()) ::
  {:ok, Twilio.Resources.Insights.V1.Video.Room.t()}
  | {:ok, map(), map()}
  | :ok
  | {:error, Twilio.Error.t()}
```

Get Video Log Analyzer data for a Room.

Operation: `FetchVideoRoomSummary` | Tags: InsightsV1Room

# `list`

```elixir
@spec list(Twilio.Client.t(), map(), keyword()) ::
  {:ok, Twilio.Page.t()}
  | {:ok, map(), map()}
  | :ok
  | {:error, Twilio.Error.t()}
```

Get a list of Programmable Video Rooms.

Operation: `ListVideoRoomSummary` | Tags: InsightsV1Room

## Query Parameters

| Parameter | Type | Description |
|-----------|------|-------------|
| `RoomType` | array | Type of room. Can be `go`, `peer_to_peer`, `group`, or `group_small`. |
| `Codec` | array | Codecs used by participants in the room. Can be `VP8`, `H264`, or `VP9`. |
| `RoomName` | string | Room friendly name. |
| `CreatedAfter` | string (date-time) | Only read rooms that started on or after this ISO 8601 timestamp. |
| `CreatedBefore` | string (date-time) | Only read rooms that started before this ISO 8601 timestamp. |

# `stream`

```elixir
@spec stream(Twilio.Client.t(), map(), keyword()) :: Enumerable.t()
```

Stream: Get a list of Programmable Video Rooms. (lazy auto-pagination).

---

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