ws

package
v0.28.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 25, 2026 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Run

func Run(ctx context.Context, cfg Config) error

Run starts the bidirectional WebSocket message loop.

When stdin is nil (no pipe, just -d), it sends any initial message, then reads from the server until close or Ctrl+C.

When stdin is provided (piped input), it sends messages concurrently while reading responses. EOF performs a WebSocket close handshake instead of cancelling the receive side, so delayed peer responses are not discarded.

Types

type Config

type Config struct {
	Conn *websocket.Conn
	// Stdin must be interruptible while Run is active. Run closes a Stdin
	// that implements io.Closer when cancellation or the peer ends the
	// session. A non-closable reader must otherwise arrange for its Read to
	// return independently; Run joins the writer before returning and cannot
	// complete cancellation until that Read returns.
	Stdin         io.Reader
	Stderr        *core.Printer
	Stdout        *core.Printer
	Format        core.Format
	Verbosity     core.Verbosity
	InitialMsg    []byte
	InitialMsgSet bool
	InitialReader io.Reader
	MessageMode   core.WSMessageMode
	IsInteractive bool
}

Config holds the configuration for a WebSocket session.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL