pub struct NodeView {Show 41 fields
pub id: i64,
pub name: String,
pub remark: String,
pub scheme: NodeScheme,
pub address: String,
pub port: u16,
pub base_path: String,
pub has_api_token: bool,
pub enable: bool,
pub allow_private_address: bool,
pub tls_verify_mode: NodeTlsVerifyMode,
pub pinned_cert_sha256: String,
pub inbound_sync_mode: NodeInboundSyncMode,
pub inbound_tags: Vec<String>,
pub outbound_tag: String,
pub guid: String,
pub status: NodeStatus,
pub last_heartbeat: i64,
pub latency_ms: i64,
pub xray_version: String,
pub panel_version: String,
pub cpu_pct: f64,
pub mem_pct: f64,
pub uptime_secs: u64,
pub net_up: u64,
pub net_down: u64,
pub last_error: String,
pub xray_state: String,
pub xray_error: String,
pub config_dirty: bool,
pub config_dirty_at: i64,
pub inbound_count: i64,
pub client_count: i64,
pub online_count: i64,
pub active_count: i64,
pub disabled_count: i64,
pub depleted_count: i64,
pub parent_guid: String,
pub transitive: bool,
pub created_at: i64,
pub updated_at: i64,
}Expand description
One browser-safe view of a direct or transitive node.
The tagged v3.8.5 read contract exposes hasApiToken; the token itself
is write-only and is never included in node views.
Fields§
§id: i64Panel-local database identifier. Transitive projections use zero.
name: StringUnique configured name.
remark: StringOperator-visible description.
scheme: NodeSchemeRemote panel URL scheme.
address: StringHostname or IP address without a port.
port: u16Remote panel port.
base_path: StringRemote panel base path.
has_api_token: boolWhether a write-only API token is stored.
enable: boolWhether node synchronization is enabled.
allow_private_address: boolWhether guarded node connections may resolve to private addresses.
tls_verify_mode: NodeTlsVerifyModeNode TLS verification/authentication mode.
pinned_cert_sha256: StringBase64 SHA-256 leaf-certificate pin.
inbound_sync_mode: NodeInboundSyncModeRemote inbound import mode.
Remote inbound tags selected for import.
outbound_tag: StringLocal Xray outbound used to reach the node.
guid: StringStable GUID learned from the remote panel.
status: NodeStatusCached remote panel reachability.
last_heartbeat: i64Most recent heartbeat Unix timestamp in seconds.
latency_ms: i64Most recent request latency in milliseconds.
xray_version: StringRemote Xray version.
panel_version: StringRemote panel version.
cpu_pct: f64Remote CPU utilization percentage.
mem_pct: f64Remote memory utilization percentage.
uptime_secs: u64Remote host uptime in seconds.
net_up: u64Remote interface upload throughput in bytes per second.
net_down: u64Remote interface download throughput in bytes per second.
last_error: StringLast panel connectivity error.
xray_state: StringRemote Xray process state.
xray_error: StringRemote Xray process error.
config_dirty: boolWhether node-backed configuration needs reconciliation.
config_dirty_at: i64Unix timestamp associated with the dirty configuration generation.
inbound_count: i64Number of imported inbounds hosted by the node.
client_count: i64Number of clients hosted by the node.
online_count: i64Number of currently online clients.
active_count: i64Number of active clients.
disabled_count: i64Number of disabled clients.
depleted_count: i64Number of depleted clients.
parent_guid: StringStable GUID of the managing parent panel/node.
transitive: boolWhether this is a read-only downstream projection.
created_at: i64Database creation timestamp in milliseconds.
updated_at: i64Database update timestamp in milliseconds.
Implementations§
Source§impl NodeView
impl NodeView
Sourcepub fn to_request(&self) -> NodeRequest
pub fn to_request(&self) -> NodeRequest
Builds a full replacement request while retaining the stored API token.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for NodeView
impl<'de> Deserialize<'de> for NodeView
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl StructuralPartialEq for NodeView
Auto Trait Implementations§
impl Freeze for NodeView
impl RefUnwindSafe for NodeView
impl Send for NodeView
impl Sync for NodeView
impl Unpin for NodeView
impl UnsafeUnpin for NodeView
impl UnwindSafe for NodeView
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more