---
description: Configuration guide of Radio System.
---

# Configuration

***

### <mark style="color:blue;">General Settings</mark>

<table data-header-hidden><thead><tr><th width="249"></th><th></th><th></th></tr></thead><tbody><tr><td><strong>Parameter</strong></td><td><strong>Description</strong></td><td><strong>Example Value</strong></td></tr><tr><td><mark style="color:green;"><code>Config.Framework</code></mark></td><td>Determines the framework to use (<code>auto</code>, <code>esx</code>, or <code>qb</code>).</td><td><code>"auto"</code></td></tr><tr><td><mark style="color:green;"><code>Config.debug</code></mark></td><td>Enables or disables debug mode.</td><td><code>false</code></td></tr><tr><td><mark style="color:green;"><code>Config.radioName</code></mark></td><td>Specifies the name of the radio item.</td><td><code>"radio"</code></td></tr><tr><td><mark style="color:green;"><code>Config.defaultVolume</code></mark></td><td>Sets the default volume of the radio (range: 0–100).</td><td><code>50</code></td></tr><tr><td><mark style="color:green;"><code>Config.LoopTime</code></mark></td><td>Time (in milliseconds) to check the radio activity. Lower values are faster but may impact performance.</td><td><code>500</code></td></tr><tr><td><mark style="color:green;"><code>Config.RadioProp</code></mark></td><td>The object model used for the radio prop.</td><td><code>'prop_cs_hand_radio'</code></td></tr></tbody></table>

***

### <mark style="color:blue;">Job-Specific Channels</mark>

| **Parameter**                                          | **Description**                                    | **Example Value**  |
| ------------------------------------------------------ | -------------------------------------------------- | ------------------ |
| <mark style="color:green;">`Config.jobChannels`</mark> | Defines channels restricted to specific job roles. | See example below. |

<mark style="color:blue;">**Example:**</mark>

```lua
Config.jobChannels = {
    [1] = {
        frequency = {
            "1",
            "2",
            "3",
            "4",
            "5"
        },
        jobs = {
            "police",
            "bcso"
        }
    },
    [2] = {
        frequency = {
            "2.0"
        },
        jobs = {
            "ambulance"
        }
    }
}
```

***

### <mark style="color:blue;">Localization Settings</mark>

| **Parameter**                                     | **Description**                                | **Example Value**  |
| ------------------------------------------------- | ---------------------------------------------- | ------------------ |
| <mark style="color:green;">`Config.Locale`</mark> | Stores text messages for in-game interactions. | See example below. |

<mark style="color:blue;">**Example:**</mark>

```lua
Config.Locale = {
    created = "Channel successfully created!",
    created_fail = "Already created on the same frequency.",
    disconnected = "You have successfully left the radio contact!",
    disconnected_fail = "An error occurred while trying to disconnect from the radio link.",
    connected = "You've successfully established radio contact!",
    password = "Enter the password for this channel to enter!",
    notfound = "frequency you want to enter was not found!",
    wrong = "Password is not correct!",
    wait = "Try again 1 second later.",
    kick = "You were disconnected because you didn't have a radio.",
    job = "This frequency is dedicated to a specific job!",
    volume_up = "volume increased.",
    volume_down = "volume reduced.",
    max = "volume at maximum level!",
    min = "volume at minimum level!"
}
```

***

### <mark style="color:blue;">Framework Detection</mark>

The script automatically detects the framework using the `getFramework` function.\
The detection works as follows:

* **ESX Framework:** Uses `es_extended`.
* **QBCore Framework:** Uses `qb-core`.
* **Auto Mode:** Automatically detects the active framework.

***
