0.0.002
ddat interop with dat js cable interop with cabal js ddat's frontend = dat-thang cable fe = cable-thang dillo support based on cel's dillo-dat bootstrap node xplatform support Signed-off-by: divo <418@cryspace.space>
This commit is contained in:
1 parent
f0f91540be
commit
b735900f2e
323 files changed
+134347
-343
No files matched your search
@@ -0,0 +1,124 @@
|
||||
.TH CABLE-THANG 1 "October 2026" "cable-thang" "User Commands"
|
||||
.SH NAME
|
||||
cable-thang \- SDL2 Cable room chat client
|
||||
.SH SYNOPSIS
|
||||
.B cable-thang
|
||||
.RB [ cable-address ]
|
||||
.RB [ --offline ]
|
||||
.br
|
||||
.B cable-thang --help
|
||||
.SH DESCRIPTION
|
||||
.B cable-thang
|
||||
is the C and SDL2 room chat client. Create a new room address in the terminal
|
||||
with
|
||||
.BR cable --new ,
|
||||
then launch the client with the printed address as its positional argument:
|
||||
.B cable-thang cable://address .
|
||||
Launching
|
||||
.B cable-thang
|
||||
without an address opens its SDL room window; choose CREATE ROOM to create and
|
||||
enter a new room, or paste a
|
||||
.B cable://
|
||||
or
|
||||
.B cabal://
|
||||
room address there and press Enter to join it.
|
||||
Cesspool handles discovery and authenticated peer transport, Sleep stores
|
||||
persistent local feeds, and S7 constructs room records as S-expressions. Its
|
||||
fixed-cell, terminal-style layout
|
||||
shows joined channels, room messages, local nickname, room address, and
|
||||
authenticated peers. It joins a room by address.
|
||||
.PP
|
||||
Click PLAY AUDIO to start sending live room audio; the button changes to STOP
|
||||
AUDIO while active. Ctrl+Shift+A toggles the same control. The first media
|
||||
path captures the default microphone and sends 96 kbps AAC-LC. Incoming audio
|
||||
is decoded and played in the live waveform panel. Media packets are relayed
|
||||
through Cable peers without being appended to chat history or Dat archives.
|
||||
See the cable-live-streaming document for the packet and storage boundary.
|
||||
.PP
|
||||
Click PLAY VIDEO to start sending the local OBS MPEG-TS input at
|
||||
udp://127.0.0.1:5000; the button changes to STOP VIDEO while active. Ctrl+Shift+V
|
||||
toggles the same control. Configure OBS Custom
|
||||
FFmpeg Output with MPEG-TS, libx264, and that UDP URL. This previews the local
|
||||
source and sends 160x90 JPEG frames to authenticated room peers over Cesspool.
|
||||
.PP
|
||||
Room creation stores the room signing key and local user's persistent key in
|
||||
.IR ~/.cable/rooms/<room-key>/ .
|
||||
The room address is the same 32-byte key rendered as
|
||||
.BR cable:// .
|
||||
Joined channels and the local nickname are stored in the room's profile.
|
||||
.PP
|
||||
Without a configured Cesspool rendezvous, the room broadcasts discovery on
|
||||
the local network automatically and shows LAN DISCOVERY. Messages are kept
|
||||
in the local chat until a peer connects. Local network broadcasts do not cross
|
||||
routers. For discovery over the Internet, a reachable Cesspool rendezvous node
|
||||
is required; configure one with
|
||||
.B cable bootstrap add host:port
|
||||
or set
|
||||
.BR CABLE_BOOTSTRAP .
|
||||
If the local UDP network setup itself fails, the SDL2 client still opens and
|
||||
reports the error in its status line. Use
|
||||
.B --offline
|
||||
to deliberately skip network startup.
|
||||
.PP
|
||||
The production client is C and S7. Dat archives and Cable rooms both use
|
||||
Cesspool, with separate topics and record formats. Cabal CLI and Hypercore
|
||||
interoperability helpers remain under the test tree and are not launched or
|
||||
packaged by the production client.
|
||||
.SH COMMANDS
|
||||
.TP
|
||||
.B /join \fIname\fR
|
||||
Join or create a channel and announce the channel to connected Cable peers.
|
||||
.TP
|
||||
.B /nick \fIname\fR
|
||||
Change the local nickname and announce it to connected Cable peers.
|
||||
.TP
|
||||
.B /channels
|
||||
Show the number of joined channels in the status line.
|
||||
.TP
|
||||
.B /help
|
||||
Show the available commands and key bindings in the status line.
|
||||
.SH KEY BINDINGS
|
||||
.TP
|
||||
.B Ctrl+N
|
||||
Select the next joined channel.
|
||||
.TP
|
||||
.B Ctrl+P
|
||||
Select the previous joined channel.
|
||||
.TP
|
||||
.B Ctrl+C
|
||||
Copy the room address to the clipboard.
|
||||
.TP
|
||||
.B Enter
|
||||
Send a message to connected room peers, or execute a slash command.
|
||||
.TP
|
||||
.B Escape
|
||||
Close the client.
|
||||
.SH ENVIRONMENT
|
||||
.TP
|
||||
.B DDAT_BOOTSTRAP
|
||||
Comma- or semicolon-separated Cesspool rendezvous endpoints shared by Dat and
|
||||
Cable clients.
|
||||
.TP
|
||||
.B CABLE_BOOTSTRAP
|
||||
Comma- or semicolon-separated Cesspool rendezvous endpoints in host:port form.
|
||||
.TP
|
||||
.B DDAT_PORT
|
||||
Local UDP listening port for Dat archive Cesspool discovery.
|
||||
.TP
|
||||
.B cable bootstrap add host:port
|
||||
Persist a Cesspool rendezvous endpoint in
|
||||
.IR ~/.config/dat-gpt/bootstrap .
|
||||
Use cable bootstrap list to inspect the shared Dat/Cable list.
|
||||
.TP
|
||||
.B cable bootstrap serve host port
|
||||
Run a Cesspool rendezvous node in the foreground. It must be reachable over
|
||||
UDP at the advertised IPv4 address and port.
|
||||
.SH EXAMPLES
|
||||
.nf
|
||||
cable --new
|
||||
cable-thang cabal://0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
|
||||
cable-thang cable://0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef --offline
|
||||
.fi
|
||||
.SH SEE ALSO
|
||||
.BR cabal-cli (1),
|
||||
.BR cable (1)
|
||||
Reference in new issue
Block a user