LIVE cartercole.net --:--:-- UTC

// 04 RESTRICTED

virtual-radio

JAVASCRIPT WEBRTC SWIFT KOTLIN ACCESS RESTRICTED SITE

Open voice and video channels that behave like radio. A channel has a place, a reach and rules, and who hears you depends on where you both are and what the channel allows. Like Google Wave, it is one design spec, one wire protocol (VRP/1) and several independent implementations: a Node reference host and client, a <virtual-radio> web component, a Python client written from the spec alone, and native iOS and Android apps. It runs at radio.cartercole.net, where you sign in with Kith.

Who hears you

Channels are tied to admin regions, polygons, circles or a radius that follows a person, with separate transmit and receive distances per channel and per role. Half or full duplex, with a floor queue, priorities and preemption; push to talk or open mic. The host computes each person's rights on a channel with one exact procedure, rerun whenever an input changes: bans, roles, mutes, the device's profile, territory blocks, then position. Listening priority ranks channels like z-index, so an announcement ducks a lot channel until it ends.

An operator grants territories, each grant signed, and a holder may subdivide its own. A paying authority can block radio in its area, and every block is attributed and published. Signed channel plans hand out namespaces and number ranges the same way, and a radio checks a plan back to the operator by itself, then tunes by number.

Proof of place

A position is a claim, so the spec adds beacons: devices at known places that broadcast signed adverts and time how fast a client answers a challenge. An answer cannot outrun light, and light covers 150 km for every millisecond of round trip, so a fast enough answer shows the client was near. The spec is plain about what that buys. Round trips timed in software over Wi-Fi or Bluetooth rule out another continent; only ranging done in radio hardware, such as UWB, Wi-Fi FTM or Bluetooth Channel Sounding, gets down to a building. A secured locale demands proof to transmit, and the client keeps a signed receipt it can hold, reveal later or let the beacon report.

Stated honestly