NetworkInterfaceContainer - Centralized management of multiple network interfaces on KOS devices.

The NetworkInterfaceContainer model provides comprehensive management of all network interfaces available on a KOS device, including automatic discovery, categorization, and real-time updates. This container model is essential for applications that need to manage multiple network interfaces, build network configuration screens, or monitor overall network connectivity status.

Key Features

  • Automatic Interface Discovery - Loads and manages all available network interfaces from the device
  • Category-Based Indexing - Organizes interfaces by category (INTERNAL, INTEGRATION, EXTERNAL, NONE)
  • Real-Time Refresh - Updates interface data with current network state
  • Unified Interface Management - Single point of access for all network interface operations
  • Dynamic Interface Tracking - Handles interface addition/removal as network state changes
  • Service Integration - Automatically fetches interface data from KOS network services

Interface Categories

The container automatically organizes interfaces into categories:

  • EXTERNAL - User-facing interfaces (WiFi adapters, Ethernet ports)
  • INTERNAL - System interfaces (loopback, virtual interfaces)
  • INTEGRATION - Integration-specific network interfaces
  • NONE - Uncategorized interfaces

Common Use Cases

  • Network Configuration UI - Build comprehensive network settings interfaces
  • System Monitoring - Track overall network connectivity and interface health
  • Interface Selection - Allow users to choose from available network interfaces
  • Network Diagnostics - Provide detailed system-wide network interface information
  • Automated Network Management - Programmatically manage multiple interfaces

Example: Basic Usage

const networkContainer = NetworkInterfaceContainer.instance('system-interfaces')
.build();

// Access all network interfaces and get specific interface
const allInterfaces = networkContainer.models;
const ethInterface = networkContainer.getModel('eth0');

Use Declared Type

See

interface NetworkInterfaceContainerModel {
    id: string;
}

Properties

Properties

id: string

Unique identifier for the container model instance