> For the complete documentation index, see [llms.txt](https://pandascript.gitbook.io/pandascript/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://pandascript.gitbook.io/pandascript/voicesentinel-plugin/voice-reports.md).

# Voice reports & transcript buffer

## Transcript buffer (`transcript_buffer`)

Rolling **in-memory** buffer of final transcripts per player.

* Powers **moderation / transcript** views in the **web dashboard** when enabled.
* Supplies text for **`/reportvoice`** when the buffer is on — **independent** of **`voice_report.enabled`** (that flag only controls whether players may **submit** reports).

```yaml
transcript_buffer:
  enabled: true
  retention_seconds: 43200
  max_lines_per_player: 500
```

## Voice report (`voice_report`)

| Option                                                                          | Purpose                                                                                       |
| ------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| **enabled**                                                                     | Allows players with **`voicesentinel.report`** to use **`/reportvoice`** (or the GUI).        |
| **interface**                                                                   | **`command`** or **`gui`**.                                                                   |
| **default\_report\_window\_seconds**                                            | Default lookback if not specified.                                                            |
| **min\_report\_window\_seconds** / **max\_report\_window\_seconds**             | Clamp window length.                                                                          |
| **report\_window\_options\_seconds**                                            | GUI preset lengths (seconds).                                                                 |
| **processor\_evidence\_url**                                                    | Base URL for **`GET /report/evidence`** on the processor. Empty = derived from WebSocket URL. |
| **webhook\_url**                                                                | Optional Discord notification with the same summary as staff.                                 |
| **webhook\_username**, **webhook\_embed\_color**, **webhook\_timeout\_seconds** | Discord payload tuning.                                                                       |
| **staff\_chat\_full\_transcript**                                               | If `true`, staff also get full plain text in chat (noisy).                                    |

Staff with **`voicesentinel.report.review`** get alerts, can use **`/viewreport`** (written book), and **`/reportinbox`** (list / mark reviewed — same logical inbox as the web dashboard).

## Processor: `report_buffer`

Optional **on-disk** evidence on the processor for the HTTP evidence API. If **`report_buffer.enabled`** is **`false`**, evidence calls return **404**; the book and dashboard still use the **local** transcript buffer.

Scoped by license and server key; use **HTTPS** on public hosts. Details: [Processor configuration](/pandascript/voicesentinel-processor/configuration.md#report-buffer-optional).

## Permissions

| Permission                      | Use                                           |
| ------------------------------- | --------------------------------------------- |
| **voicesentinel.report**        | **`/reportvoice`**                            |
| **voicesentinel.report.review** | Alerts, **`/viewreport`**, **`/reportinbox`** |

## See also

* [Web dashboard](/pandascript/voicesentinel-plugin/web-dashboard.md)
* [Commands and permissions](/pandascript/voicesentinel-plugin/commands-and-permissions.md)
* [Configuration](/pandascript/voicesentinel-plugin/configuration.md)
