iii

Bridge

Connect to another iii instance

Connects this III Engine instance to another III instance over WebSocket so you can expose local functions and forward calls to remote functions.

modules::bridge_client::BridgeClientModule

Sample Configuration

- class: modules::bridge_client::BridgeClientModule
  config:
    url: ${REMOTE_III_URL:ws://127.0.0.1:49134}
    service_id: bridge-client
    service_name: bridge-client
    expose:
      - local_function: logger.info
        remote_function: logger.info

    forward:
      - local_function: remote.kv.get
        remote_function: kv_server.get
        timeout_ms: 5000

      - local_function: remote.kv.set
        remote_function: kv_server.set
        timeout_ms: 5000

      - local_function: remote.kv.delete
        remote_function: kv_server.delete
        timeout_ms: 5000

Configuration

url
string

WebSocket URL of the remote III instance. Defaults to III_BRIDGE_URL if set, otherwise ws://127.0.0.1:49134.

service_id
string

Service identifier to register with the remote instance. When set, the module registers the service on connect.

service_name
string

Human-readable service name. Defaults to service_id when omitted.

expose
ExposeFunctionConfig[]

Functions from this instance to expose to the remote instance.

forward
ForwardFunctionConfig[]

Local function aliases that forward invocations to remote functions.

Functions

bridge.invoke
function

Invoke a function on the remote III instance.

bridge.invoke_async
function

Fire-and-forget invoke on the remote III instance.

On this page