🌐 Discover the Agent Orchestrator – Your All-in-One Solution for Device and Agent Management

The Agent Orchestrator is the ultimate module for managing and configuring agents, handling modules, and monitoring device status and hardware. With an intuitive interface, this tool simplifies cloud connectivity, user settings, device overview, and module management while providing robust authentication capabilities for secure operations.

🌟 Why Choose the Agent Orchestrator?

  • 💻 Hardware Management: View and monitor device hardware metrics for real-time insights into performance.
  • 📊 Device Status Overview: Utilize widgets to gain a comprehensive understanding of device status and key metrics.
  • ⚙️ Module Configuration: Seamlessly manage and configure modules to optimize device capabilities.
  • 🌐 Cloud Connectivity: Ensure a secure and reliable connection between your agent and the cloud.
  • 🔐 Secure Authentication: Manage user access with advanced authentication features, including login, logout, and account recovery.
  • 🖥️ Digital Twin Management: View and control the digital representation of your devices for enhanced operational oversight.

✨ Your Benefits at a Glance

  • 🚀 Centralized Control: Manage agents, modules, and device configurations from a single, user-friendly platform.
  • 📈 Enhanced Visibility: Gain real-time insights into device hardware and performance metrics.
  • 🔄 Workflow Optimization: Simplify workflows with intuitive interfaces for module and cloud management.
  • 🔒 Improved Security: Ensure secure authentication and seamless access management for users.
  • ⚡ Time Savings: Quickly configure and monitor devices across distributed systems, saving valuable time.

🚀 Perfect for Your Needs

Whether you're an IT administrator managing device fleets, a developer integrating agent capabilities, or an operations manager optimizing workflows, the Agent Orchestrator offers the tools you need to streamline operations and enhance productivity.

💼 Use Cases:

  • 🔧 Device Management: Monitor and manage hardware and device configurations efficiently.
  • 🌐 Cloud Integration: Establish and maintain secure connections between agents and cloud systems.
  • 📊 Operational Insights: Use widgets and overviews to monitor key device metrics in real-time.
  • 🖥️ Module Management: Configure and optimize modules to enhance device capabilities.
  • 🔐 Secure Authentication: Manage user access with advanced login and security features.

Start today with the Agent Orchestrator and take your device and agent management to the next level! 🌐


💥 Highlights:

  • 💪 Powerful & Flexible: Ideal for managing agents, devices, and cloud configurations.
  • 🖱️ User-Friendly: Intuitive interface for streamlined device and agent management.
  • 🔒 Secure & Reliable: Ensure seamless operations with robust security and authentication features.

Elevate your agent and device management capabilities with the Agent Orchestrator today! 🌐✨


| Field | Value | |-----------------------|---------------------------------------------------------------------------| | NAME | agentmanager | | VERSION | 0.9.1 | | ALIAS | Agent Orchestrator | | TAGS | manager, orchestrator, agent, device, configuration, cloud management | | SHORTDESCRIPTION | Manage and configure your agent, its modules, and view device status and hardware. | | DESCRIPTION | The Agent Orchestrator is a module that enables users to manage and configure their agent, handle modules, and view device status and hardware. It provides an intuitive interface to manage the agent's cloud connection, user settings, device overview, digital twin, modules, and authentication. The Agent Orchestrator is designed to simplify device management and deliver a seamless configuration experience. |

Module Nodes

the module nodes are the building blocks for the flow-based programming. Each node represents a specific task or operation that can be performed by the module. The following table lists the available nodes for this module.

HTTP Client

HTTP client to fetch data from an HTTP endpoint.

Metadata:

  • Name: HttpClient
  • Tags: http, client, get, data
  • Category: Resource
  • Subcategory: Endpoint > Http

Description:

This node acts as an HTTP client that retrieves data from an external HTTP server. It is set up with the server's URL and the HTTP verb for the request (e.g., GET, POST, PUT, DELETE). The node sends a request and processes the response as an 'any' type. This is useful for accessing external APIs, web services, or remote servers.

Inputs: (1)

  • Trigger : Trigger

Outputs: (1)

  • Received Data : The data received from the HTTP server, formatted as an 'any' type.

Configuration:

The following configuration parameters can be set for this node:

NodeHTTPClientConfig: { 
	
	# The URL to connect to.
  url: string,
	# Optional headers to send with the HTTP request.
  headers: map<string,string>,
}

HTTP Receiver

HTTP client to receive data from an HTTP server.

Metadata:

  • Name: HttpReceiver
  • Tags: http, endpoint, get, data
  • Category: Resource
  • Subcategory: Endpoint > Http

Description:

This node acts as an HTTP receiver that retrieves data from an external HTTP server. It is configured with the server's URL and the HTTP verb to use (e.g., GET, POST, PUT, DELETE). The node sends a request to the specified server and captures the response data as an 'any' type. This functionality is useful for integrating with external APIs, fetching data from web services, or receiving information from remote servers.

Inputs: (0)

Outputs: (1)

  • Received Data : The data received from the HTTP server, formatted as a key-value map.

Configuration:

The following configuration parameters can be set for this node:

NodeHTTPReceiverConfig: { 
	
	# The endpoint to listen for incoming HTTP requests.
  endpoint: string,
	# The port on which the HTTP server will listen for requests.
  port: string,
	# Optional headers to include in the HTTP response, such as content-type.
  headers: map<string,string>,
}

HTTP Sender

HTTP client to send data to an HTTP server.

Metadata:

  • Name: HttpSender
  • Tags: http, sender, send, data
  • Category: Resource
  • Subcategory: Endpoint > Http

Description:

This node acts as an HTTP sender that transmits data to an external HTTP server. It is configured with the server's URL, the HTTP verb (e.g., GET, POST, PUT, DELETE), and optional headers for the request. The node sends data as an 'any' type, facilitating interaction with various external systems. Use this node to send data to external services over HTTP.

Inputs: (1)

  • Data to send : The data to be sent to the HTTP server, provided as a key-value map.

Outputs: (0)

Configuration:

The following configuration parameters can be set for this node:

NodeHTTPClientConfig: { 
	
	# The URL to connect to.
  url: string,
	# Optional headers to send with the HTTP request.
  headers: map<string,string>,
}

MQTT Receiver

MQTT endpoint node for receiving data from an MQTT broker.

Metadata:

  • Name: MqttReceiver
  • Tags: mqtt, endpoint, receiver, broker, communication
  • Category: Resource
  • Subcategory: Endpoint > Mqtt

Description:

This node acts as an MQTT receiver that retrieves data from a configured MQTT broker. It requires broker details such as address, port, and optional authentication credentials. The node subscribes to a specified topic to receive real-time messages, which are then passed along as an 'any' type to accommodate various message structures. Configuration via the NodeMqttConfig is required to establish a successful connection.

Inputs: (0)

Outputs: (1)

  • Received Data : The data received from the MQTT broker, formatted as a key-value map representing the payload from the subscribed topic.

Configuration:

The following configuration parameters can be set for this node:

NodeMqttConfig: { 
	
	# URI to the broker to be used. The format should be scheme://host:port where scheme is one of tcp, ssl, ws, wss. host is the IP address or hostname of the broker. port is the port number of the broker. For example, tcp://localhost:1883
  broker: string,
	# The topic to which the message will be published or subscribed.
  topic: string,
	# Quality of service level to be used when publishing or subscribing to a topic. The value can be 0, 1, or 2. 0 means at most once delivery, 1 means at least once delivery, and 2 means exactly once delivery.
  qos: int32,
	# Set the username to be used by this client when connecting to the MQTT broker. Note: without the use of SSL/TLS, this information will be sent in plaintext across the wire.
  username: string,
	# Set the password to be used by this client when connecting to the MQTT broker. Note: without the use of SSL/TLS, this information will be sent in plaintext across the wire.
  password: string,
	# Set the client id to be used by this client when connecting to the MQTT broker. According to the MQTT specification, client ids must be unique per broker. auto-generated client id will be used if not provided.
  client_id: string,
	# Set the order of the messages matters
  order_matters: bool,
	# Auto reconnect
  auto_reconnect: bool,
	# Connect Retry
  connect_retry: bool,
	# Connect Retry Interval
  connect_retry_interval: int32,
	# With TLS
  with_tls: bool,
	# Root Certificate
  root_certificate: string,
	# Client Certificate
  client_certificate: string,
	# Client Key
  client_key: string,
}

MQTT Sender

MQTT sender node for transmitting data to an MQTT broker.

Metadata:

  • Name: MqttSender
  • Tags: mqtt, sender, send, data, broker, communication
  • Category: Resource
  • Subcategory: Endpoint > Mqtt

Description:

This node functions as an MQTT sender for transmitting data to a specified MQTT broker. It requires broker details such as address, port, and optional authentication credentials. The node sends data as an 'any' type, supporting various message structures. Configuration via the NodeMqttConfig is necessary to ensure proper connection and data transmission.

Inputs: (1)

  • Data to send : The data to be sent to the MQTT broker, formatted as a key-value map.

Outputs: (0)

Configuration:

The following configuration parameters can be set for this node:

NodeMqttConfig: { 
	
	# URI to the broker to be used. The format should be scheme://host:port where scheme is one of tcp, ssl, ws, wss. host is the IP address or hostname of the broker. port is the port number of the broker. For example, tcp://localhost:1883
  broker: string,
	# The topic to which the message will be published or subscribed.
  topic: string,
	# Quality of service level to be used when publishing or subscribing to a topic. The value can be 0, 1, or 2. 0 means at most once delivery, 1 means at least once delivery, and 2 means exactly once delivery.
  qos: int32,
	# Set the username to be used by this client when connecting to the MQTT broker. Note: without the use of SSL/TLS, this information will be sent in plaintext across the wire.
  username: string,
	# Set the password to be used by this client when connecting to the MQTT broker. Note: without the use of SSL/TLS, this information will be sent in plaintext across the wire.
  password: string,
	# Set the client id to be used by this client when connecting to the MQTT broker. According to the MQTT specification, client ids must be unique per broker. auto-generated client id will be used if not provided.
  client_id: string,
	# Set the order of the messages matters
  order_matters: bool,
	# Auto reconnect
  auto_reconnect: bool,
	# Connect Retry
  connect_retry: bool,
	# Connect Retry Interval
  connect_retry_interval: int32,
	# With TLS
  with_tls: bool,
	# Root Certificate
  root_certificate: string,
	# Client Certificate
  client_certificate: string,
	# Client Key
  client_key: string,
}

NATS Receiver

NATS Streaming receiver node for receiving data from a NATS Streaming server.

Metadata:

  • Name: NatssReceiver
  • Tags: NATS, Streaming, Receiver, Messaging, Event-Driven, Real-Time, Data-Ingestion
  • Category: Messaging
  • Subcategory: Receiver > Nats streaming

Description:

This node subscribes to a NATS Streaming channel, receiving messages from a configured NATS Streaming server in real time. It requires server details including address, port, and optional credentials. The received messages are passed along as an 'any' type, offering flexibility in message structure. Proper configuration via the NodeNatssConfig ensures reliable data reception.

Inputs: (0)

Outputs: (1)

  • Received Data : The data received from the NATS Streaming server, formatted as a key-value map representing the payload from the subscribed channel.

Configuration:

The following configuration parameters can be set for this node:

NodeNatssConfig: { 
	
	# The NATS server URL, which may include username and password. Example: 'nats://derek:pass@localhost:4222'.
  url: string,
	# The subject for NATS subscription or publishing. Wildcards are supported (e.g., 'foo.*' or 'bar.>').
  subject: string,
	# The client ID used for the NATS connection.
  clientid: string,
}

NATS Sender

NATS Streaming sender node for transmitting data to a NATS Streaming server.

Metadata:

  • Name: NatssSender
  • Tags: NATS, Streaming, Publisher, Messaging, Event-Driven, Real-Time, Data-Transmission, Distributed
  • Category: Messaging
  • Subcategory: Publish > Nats streaming

Description:

This node acts as a NATS Streaming sender, transmitting data to a configured NATS Streaming server with details such as address, port, and optional credentials. It sends data as an 'any' type, supporting various message structures. Configuration via the NodeNatssConfig is required to ensure a reliable connection and successful data transmission.

Inputs: (1)

  • Data to send : The data to be sent to the NATS Streaming server, provided as a key-value map.

Outputs: (0)

Configuration:

The following configuration parameters can be set for this node:

NodeNatssConfig: { 
	
	# The NATS server URL, which may include username and password. Example: 'nats://derek:pass@localhost:4222'.
  url: string,
	# The subject for NATS subscription or publishing. Wildcards are supported (e.g., 'foo.*' or 'bar.>').
  subject: string,
	# The client ID used for the NATS connection.
  clientid: string,
}

Webhook Endpoint

Webhook endpoint to receive data from external sources.

Metadata:

  • Name: WebhookEndpoint
  • Tags: webhook, endpoint, get, data
  • Category: Resource
  • Subcategory: Endpoint > Webhook

Description:

This node serves as a webhook endpoint that receives data from external sources via HTTP requests. It is configured with a URL path to listen for incoming requests. When a request is received, the node captures the payload and passes it along as an 'any' type, providing flexibility in the data structure. Proper configuration via the NodeWebhookConfig object ensures that the node can receive and process incoming webhook data efficiently.

Inputs: (1)

  • WebhookData : The data received from the webhook.

Outputs: (0)

Configuration:

The following configuration parameters can be set for this node:

NodeWebhookConfig: { 
	
	# Method
  method: string,
	# URL to send the webhook
  url: string,
	# Secure
  secure: bool,
	# Username
  username: string,
	# Password
  password: string,
}