Skip to content

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.