Remotes and attributes¶
For anyone building their own handset, console or caption layer. Everything is in ReplicatedStorage.RadioSystem.Remotes.
Remotes¶
| Remote | Type | Contract |
|---|---|---|
Action |
RemoteEvent, client → server | "PTT" bool · "Channel" ±1 · "Zone" ±1 · "Volume" ±1 · "SetVolume" 0–steps · "Power" · "Scan" · "Monitor" bool · "Emergency" · "Announce" · "Text" string · "SavePrefs" table · "GetPrefs" · "Dump" |
Sync |
server → client | ("prefs", { … }) |
Captions |
server → client | { id, kind = "voice"\|"text"\|"alert", userId, name, alias, key, channel, text, final }. Voice updates reuse the same id |
Facility |
RemoteFunction | "Status", "Checkout", "Return". Refusal reasons: toofar, empty, full, already, notcheckedout, nodock |
Console |
RemoteFunction | "Positions", "SignIn", "SignOut", "Channels", "Select", "Monitor", "PTT", "AllCall", "RadioCheck", "Stun", "Emergencies", "Acknowledge", "Units", "Traffic", "Alert" |
ConsoleEvents |
server → client | ("traffic", entry), ("emergency", unit), ("emergencyClear", unit), ("signedOut", reason) |
Handset |
RemoteFunction | The full handset surface (below). Limited to 25 calls a second per player; a stunned radio answers only "State" and "RadioInfo" |
HandsetEvents |
server → client | ("notification", n), ("message", msg), ("callAlert", from), ("emergency", unit), ("notice", text, kind), ("jobTicket", ticket), ("privateCall", state) |
Handset calls¶
| Area | Calls |
|---|---|
| State | "State", "RadioInfo", "Notifications", "SetPref" |
| Zones and channels | "Zones", "Channels", "SelectZone", "SelectChannel", "SetHomeChannel", "Sites", "SiteLock", "Beacons" |
| Scan and monitor | "ScanList", "ScanMember", "Scan", "Monitor", "MuteMode", "Announce", "NuisanceDelete" |
| Contacts and messages | "Contacts", "QuickTexts", "StatusList", "SendText", "Messages", "ReadMessage", "SaveDraft", "DeleteMessage", "SendStatus", "StatusInbox", "CallerAliases", "SetCallerAlias" |
| Calls | "CallAlert", "CallLog", "StartPrivateCall", "AnswerPrivateCall", "EndPrivateCall", "CallState", "Recordings", "PlayRecording" |
| Fleet and safety | "RadioCheck", "RadioDisable", "EmergencyList" |
| Job tickets | "LogIn", "JobTicketTemplates", "JobTickets", "CreateJobTicket", "RespondJobTicket", "TrashJobTicket" |
Tool attributes¶
Read these instead of asking the server.
| Area | Attributes |
|---|---|
| Power and identity | Power, Alias, RadioId, Battery, Stunned |
| Channel | Zone, Channel, ChannelName, ZoneName, CurrentChannelName, Digital, Talkaround, TxChannelName |
| Audio | VolumeStep, VolumeSteps, Monitor, MuteMode |
| Traffic | Transmitting, Receiving, RxAlias, RxUser, RxChannelName, RxZoneName, RxEmergency, RxPrivacy |
| Signal | SignalBars, OutOfRange, PowerLevel, SiteLocked |
| State | Scanning, Emergency, TxInhibit, Privacy, Unread, PendingCallAlert |
| Display toggles | Bluetooth, WiFi, GNSS |
RadioUnit Body attributes (for client audio): RxQuality, RxDigital, RxGarbled.