class

RNS::ReticulumInstance

Inherits Reference < Object

═══════════════════════════════════════════════════════════════════ ReticulumInstance — the actual instantiated Reticulum singleton ═══════════════════════════════════════════════════════════════════

Constructors

new(configdir : String | Nil = nil, loglevel : Int32 | Nil = nil, logdest : Int32 | Proc(String, Nil) | Nil = nil, verbosity : Int32 | Nil = nil, require_shared_instance : Bool = false, shared_instance_type : String | Nil = nil)
Source
new(config : ConfigObj, *, requested_loglevel : Int32 | Nil = nil, requested_verbosity : Int32 | Nil = nil, shared_instance_type : String | Nil = nil, _test : Bool = true)

Test-only constructor: creates instance without starting interfaces or transport

Source

Instance methods

add_interface(interface : Interface, *, mode : UInt8 | Nil = nil, configured_bitrate : Int32 | Nil = nil, ifac_size : Int32 | Nil = nil, ifac_netname : String | Nil = nil, ifac_netkey : String | Nil = nil, announce_cap : Float64 | Nil = nil, announce_rate_target : Int32 | Nil = nil, announce_rate_grace : Int32 | Nil = nil, announce_rate_penalty : Int32 | Nil = nil, bootstrap_only : Bool = false)

Public API to add an interface programmatically (matching Python's _add_interface)

Source
apply_config

─── Config application ──────────────────────────────────────────

Source
bootstrap_configs
Source
bootstrap_configs=(bootstrap_configs : Array(Hash(String, String)))
Source
bootstrap_interface_name
Source
bootstrap_interface_name=(bootstrap_interface_name : String | Nil)
Source
config
Source
config=(config : ConfigObj | Nil)
Source
ifac_salt
Source
ifac_salt=(ifac_salt : Bytes)
Source
is_connected_to_shared_instance
Source
is_connected_to_shared_instance=(is_connected_to_shared_instance : Bool)
Source
is_shared_instance
Source
is_shared_instance=(is_shared_instance : Bool)
Source
is_standalone_instance
Source
is_standalone_instance=(is_standalone_instance : Bool)
Source
last_cache_clean
Source
last_cache_clean=(last_cache_clean : Float64)
Source
last_data_persist
Source
last_data_persist=(last_data_persist : Float64)
Source
local_control_port
Source
local_control_port=(local_control_port : Int32)
Source
local_interface_port
Source
local_interface_port=(local_interface_port : Int32)
Source
local_socket_path
Source
local_socket_path=(local_socket_path : String | Nil)
Source
management
Source
management_enabled

─── Management (Reticule) ──────────────────────────────────────

Source
management_heartbeat_interval
Source
management_node_id
Source
management_report_interval
Source
remove_interface(name : String) : Bool

Remove an interface by name. Returns false if not found or protected.

Source
remove_interface(interface : Interface)

Removes a previously added interface. Deregisters from Transport, detaches, and tears down the interface.

Source
replace_interface(name : String, new_config : ConfigObj::Section) : Interface | Nil

Replace an interface (teardown + re-add from config section).

Source
requested_loglevel
Source
requested_loglevel=(requested_loglevel : Int32 | Nil)
Source
requested_verbosity
Source
requested_verbosity=(requested_verbosity : Int32 | Nil)
Source
require_shared
Source
require_shared=(require_shared : Bool)
Source
reticule_dest_hash
Source
rpc_key
Source
rpc_key=(rpc_key : Bytes | Nil)
Source
rpc_type
Source
rpc_type=(rpc_type : String)
Source
share_instance
Source
share_instance=(share_instance : Bool)
Source
shared_instance_interface
Source
shared_instance_interface=(shared_instance_interface : Interface | Nil)
Source
shared_instance_type
Source
shared_instance_type=(shared_instance_type : String | Nil)
Source
should_persist_data?

Check if data should be persisted (used by other modules)

Source
start_system_interfaces

─── System interface instantiation from config ────────────────────

Source
update_interface_ifac(name : String, *, network_name : String | Nil, passphrase : String | Nil, ifac_size : UInt8 | Nil) : Bool

Update IFAC credentials on a running interface without teardown.

Source
use_af_unix
Source
use_af_unix=(use_af_unix : Bool)
Source