# Configuration

Silio reports automatically detects your framework by default but you can modify some aspects of the spects on `config/config.lua`&#x20;

<details>

<summary>CONFIG.LUA CODE</summary>

```lua
Config = Config or {}

function DebugPrint(...)
    if Config.Debug then print(...) end
end

-- 'es' | 'en' | 'de' | 'fr' | 'it' | 'pt' -> choose the best lenguage for you or add your own in locales folder and set it here
Config.Locale = 'en'

-- 'auto' | 'esx' | 'qbcore' | 'qbox'
Config.Framework = 'auto'

-- 'auto' | 'oxmysql' | 'mysql-async'
Config.SQL = 'auto'

-- 'auto' | 'ox_inventory' | 'qb-inventory' | 'ps-inventory' | 'qs-inventory' | 'codem-inventory' | 'none'
Config.Inventory = 'auto'

-- 'auto' | 'okokNotify' | 'ps-ui' | 'nox_notify' | 'lation_ui' | 'silio_hud' | 'ox_lib' | 'framework'
Config.Notifications = 'auto'

-- 'auto' | 'illenium-appearance' | 'fivem-appearance' | 'qb-clothing' | 'esx_skin' | 'codem-appearance' | false
Config.ClothingMenu = 'auto'

Config.ReportCommand      = 'report' -- Command to open report menu
Config.AdminCommand       = 'reports' -- Command to open admin reports panel
Config.AdminCommandKey    = nil       -- Keybind to open admin panel, nil to disable
Config.PermissionsCommand = 'reportperms' -- Command to fast access to the perms panel for admins with the management perms
Config.SetupOwnerCommand  = 'setupowner' -- Command needed to setup the owner when first time using the script

-- 'everyrestart' | 'onceaweek' | 'nil'
Config.CleanSQL = 'everyrestart' -- Delete the reports sql table

Config.AllowDeleteReport = true -- Enable the delete report option on reports admin panel if disablesd the button will not appear

-- Minimum characters required for the report title and description.
-- Set to 0 to disable the minimum.
Config.ReportMinTitle = 3
Config.ReportMinDesc  = 10

-- Maximum characters allowed for the report title and description.
Config.ReportMaxTitle = 100
Config.ReportMaxDesc  = 500

Config.ReportsChat = true -- enables the reports chat, if enabled, admins can start a chat with the reporter

-- false = one admin per report at a time (admins can be invited by the first admin joined to have more than one) | true = multiple admins allowed
Config.AllowMultipleAdmins = false

Config.ReportSound = true -- Play a sound when reciving a report

-- Maximum number of pending reports a player can have open at once
Config.MaxReportsPerUser = 1

-- Enable a map in the players report that shows the location of the reporter, near people and restricted zones if exists
Config.Map = true,

-- Time cooldown for players to open a new report after opening one
Config.ReportCooldown = {
    enabled = true,
    seconds = 120,
}

-- Automatically close reports after a certain amount of time (in hours)
Config.AutoClose = {
    enabled = true,
    hours   = 24,
}

-- Restricted zones where players can't open reports
Config.RestrictedZones = {
    -- { label = 'Zone Name', x = 0.0, y = 0.0, z = 0.0, radius = 50.0 },
}

Config.AutoCreateSQL = true -- Automatically creates the SQL table for reports if it doesn't exist
Config.AutoVerifySQL = true -- Automatically verfies the SQL table to verify problems with the table structure and try to fix them

-- Webhook for screenshots taken by admins in the admin panel, only one is needed, if you have both, discord will be used first and the other will be used as fallback if can't send to discord or fivemanage
Config.ScreenshotWebhook = {
    Discord    = 'https://discord.com/api/webhooks/YOUR_WEBHOOK_HERE',
    FiveManage = 'your_token_here',  -- fivemanage.com API key
}

Config.VideoSeconds = 10 -- Seconds of video recording when a user open a report

-- Webhook where videos will be sent
Config.VideoWebhook = {
    FiveManage = 'your_token_here',  -- fivemanage.com API key
}

-- Seconds kept in the screenshare replay buffer to clip latest frames on screen view in reports (max 60, min 1).
Config.ViewScreenReplyBufferDuration = 30

-- Disable the report video that records when creating a new report
Config.EnableRecordOnReportCreate = true

-- Cloudflare TURN credentials for WebRTC screensharing.
-- Get them at: dash.cloudflare.com → Calls → TURN credentials
Config.WebRTC = {
    TokenID  = '',   -- Cloudflare TURN key ID
    APIToken = '',   -- Cloudflare TURN API token
}

-- Enable the voice call feature (requires pma-voice to be running — disabled automatically if not found)
Config.VoiceCall = {
    Enabled = true,
}

Config.PlayerLogs = {
    Enabled            = true,
    UseCustom          = false,   -- if true, you will need to add your custom log function in editable/functions_server.lua and buiilt in logs will be disabled
    RetentionHours     = 24, -- Hours that player logs manteined before created if deleteoldonrestart is true
    DeleteOldOnRestart = true,    -- delete logs older than RetentionHours every time the resource starts
    LogConnect         = true, -- Logs when a player connects to the server
    LogDisconnect      = true, -- Logs when a player disconnects from the server
    LogDeath           = true, -- Logs when a player dies
    LogRespawn         = true, -- Logs when a player respawns after death
    LogMoney           = true, -- Logs when a player's money changes
    LogInventory       = true, -- Logs when a player's invetory changes
    LogJob             = true, -- Logs when a player's job changes
    LogExplosion       = true, -- Logs when a player's vehicle explodes
}

Config.GiveVehicleCustom = false -- if true, on ui only givecar will be shown, and it will appear an input to introduce the modal of the vehicle you want to give, if false, the two options will be shown and the vehicles will be the ones set in the config below

Config.GiveCar  = 'adder' -- car model that given on give car button
Config.GiveMoto = 'bf400' -- moto model that given on give moto button

-- Enables a button that fixes the desync beetween dead players
Config.FixSync = true

-- 'auto' | 'cd_garage' | 'qs-vehiclekeys' | 'wasabi-carlock' | 'qb-vehiclekeys' | false
Config.VehicleKeys = 'auto'

-- 'auto' | 'LegacyFuel' | 'ox_fuel' | 'cdn-fuel' | false
Config.FuelSystem = 'auto'

Config.FuelLevelOnSpawn = 100

-- Teleport coords that appear on the report actions, as much as you add here, they will appear on the panel
Config.TpCoords = { 
    ['GC']     = { label = 'GC',          x = 218.0,   y = -810.0, z = 30.0 },
    ['Sandy']  = { label = 'Sandy Shores', x = 1960.0,  y = 3749.0, z = 32.0 },
    ['Paleto'] = { label = 'Paleto Bay',   x = -153.0,  y = 6237.0, z = 31.0 },
}

-- Discord weebhook for reports creation and updates
Config.Discord = {
    Enabled       = false,
    ReportWebhook = 'https://discord.com/api/webhooks/YOUR_WEBHOOK_HERE',
    ActionWebhook = '',  -- webhook for admin action logs (leave empty to disable)
    EmbedColor    = 3447003,
    ServerName    = 'MyServer',
    BotName       = 'silio_reports',
    BotLogo       = '',
}

Config.WebhookFooter = {
    text = 'silio_reports',
    logo = '',
}

Config.Debug = false
```

</details>

Here you can find how to change between lenguages and how to add new ones

{% content-ref url="/pages/RyASJIcGcuel72Nxz9eC" %}
[Lenguage](/silio-scripts/scripts/silio-reports/configuration/lenguage.md)
{% endcontent-ref %}

Here you can find how to setup the reports panel permissions

{% content-ref url="/pages/DznaE2d89AOxZ9oQB5na" %}
[Permissions](/silio-scripts/scripts/silio-reports/configuration/permissions.md)
{% endcontent-ref %}

Here you can find how to fix blackscreens on view screen report actions

{% content-ref url="/pages/MvKrZRn2qd5djTOFhadI" %}
[WebRTC](/silio-scripts/scripts/silio-reports/configuration/webrtc.md)
{% endcontent-ref %}

<details>

<summary>If you have any problems, contact us via discord</summary>

[SILIO SCRIPTS DISCORD](https://discord.gg/UcNWSyG3e8)

</details>


---

# 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://silio-scripts.gitbook.io/silio-scripts/scripts/silio-reports/configuration.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.
