# Monitor & Network Discovery

The **Monitor** view gives you real-time visibility into every active connection and protocol event flowing through the Exaplay system — essential for diagnosing connectivity issues with OSC devices, TCP fixtures, and network hardware.

## Opening the Monitor

In the Control View (`/control`), click the **📡 Monitor** tab (or **Monitor** in Normal Mode).

![Monitor view](/files/13GuDNHzg6236SeLr9jc)

## What the Monitor Shows

### Active Connections

A live table of every inbound and outbound connection:

| Column            | Description                                        |
| ----------------- | -------------------------------------------------- |
| **Type**          | Protocol (HTTP, WebSocket, OSC, TCP, ArtNet, etc.) |
| **Direction**     | Inbound ↓ or Outbound ↑                            |
| **Remote**        | IP address and port of the remote party            |
| **Status**        | Connected, Disconnected, or Error                  |
| **Duration**      | How long the connection has been active            |
| **Last Activity** | Timestamp of the last message exchanged            |

### Host System Information

A compact card shows the engine host's:

* **Hostname**
* **Platform** (Windows 10 / 11)
* **Network interfaces** — all IP addresses on all adapters

This is particularly useful when operators need to know what IP address to give external devices so they can connect to Exaplay.

### Event Log

A scrolling log of protocol events in chronological order:

| Event type          | Examples                                  |
| ------------------- | ----------------------------------------- |
| **Cue fired**       | `Cue "Title In" triggered by operator`    |
| **OSC received**    | `OSC /play from 192.168.1.10:8000`        |
| **TCP command**     | `PJLink POWR? → Projector 1`              |
| **ArtNet received** | `ArtNet TC 01:23:45:12 from 192.168.1.20` |
| **WebSocket**       | `WS client connected: 192.168.1.55`       |
| **REST API**        | `POST /cue/trigger — 200 OK`              |

### Auto-Start

Monitoring starts automatically when you open the Monitor tab. Close the tab to stop collecting events.

## Use Cases

### Verifying OSC Connectivity

1. Open the Monitor tab.
2. Send an OSC message from your console/controller.
3. Confirm the message appears in the Event Log with the correct address and value.
4. If no entry appears, the OSC packet is not reaching Exaplay (check firewall / network config).

### Diagnosing a Non-Responding Projector

1. Open the Monitor tab.
2. Click a PJLink projector control button (ON/OFF) in the Devices tab.
3. In the Event Log, look for the outgoing TCP command and the response.
4. If no response appears, the projector may be offline or on the wrong IP/port.

### Finding the Engine IP Address

1. Open the Monitor tab.
2. Read the **Network Interfaces** card — it lists all adapters and their IP addresses.
3. Share the relevant IP with anyone who needs to connect a browser, OSC device, or ArtNet node.

## Connection Monitor API

The connection monitor data is also available via the Effects Server REST API for integration with external monitoring tools:

| Endpoint                   | Description                                                   |
| -------------------------- | ------------------------------------------------------------- |
| `GET /monitor/connections` | List all active connections                                   |
| `GET /monitor/host`        | Get host system info (hostname, platform, network interfaces) |
| `POST /monitor/events`     | Submit a custom event to the log                              |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.exaplay.one/v3/features/monitor.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
