ShellHub class

Hosts an OmnyShell broker on the OmnyServer Hub's listener, so one Hub serves both fleets.

OmnyShell nodes then dial wss://<hub>:<port><mount> — the same host, port and certificate the OmnyServer nodes and the REST API already use. An operator installs a shell node exactly as before, only pointing at this Hub:

omnyshell node start --hub wss://hub:8443/shell --id worker-01 --token …

The broker authenticates in band — it speaks first, with a challenge, and the peer answers — so its route must not carry a ConnectionAuthenticator. OmnyServer's own node handshake is confined to the node channel's route for exactly this reason (see OmnyServerHub.start).

Constructors

ShellHub.fromGrants(Map<String, TokenGrant> grants, {String mount = '/shell', Clock clock = const SystemClock(), Duration heartbeatTimeout = const Duration(seconds: 30), void logger(String message)?, Authorizer? authorizer, AiConfig? aiConfig})
Builds a shell broker sharing the OmnyServer Hub's credentials.
factory

Properties

broker → HubBroker
The broker that authenticates, authorizes and relays shell sessions.
final
hashCode int
The hash code for this object.
no setterinherited
mount String
The path the broker is mounted at.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
service() → OmnyShellHubService
The omnyhub service to register on the Hub.
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited