n8n-nodes-arubacentralnextgen
Version:
n8n community node for Aruba Central NextGen API integration with modern monitoring and management capabilities
423 lines (422 loc) • 13.2 kB
JavaScript
"use strict";
// descriptions/monitoring/accessPoints.descriptions.ts
Object.defineProperty(exports, "__esModule", { value: true });
exports.apFields = exports.apOperations = void 0;
exports.apOperations = {
displayName: 'Operation',
name: 'operation',
type: 'options',
noDataExpression: true,
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
},
},
default: 'getAllAPs',
options: [
{
name: 'Get All Access Points',
value: 'getAllAPs',
description: 'Get a list of all access points',
action: 'Get all access points',
},
{
name: 'Get Access Point Details',
value: 'getAPDetails',
description: 'Get detailed information about a specific access point',
action: 'Get access point details',
},
{
name: 'Get Top APs by Wireless Usage',
value: 'getTopAPsByWirelessUsage',
description: 'Get list of APs with highest wireless bandwidth usage',
action: 'Get top APs by wireless usage',
},
{
name: 'Get AP Throughput Trends',
value: 'getAPThroughputTrends',
description: 'Get throughput trend data for an access point',
action: 'Get access point throughput trends',
},
{
name: 'Get AP CPU Utilization',
value: 'getAPCPUUtilization',
description: 'Get CPU utilization trend data for an access point',
action: 'Get access point CPU utilization',
},
{
name: 'Get AP Memory Utilization',
value: 'getAPMemoryUtilization',
description: 'Get memory utilization trend data for an access point',
action: 'Get access point memory utilization',
},
{
name: 'Get AP Power Consumption',
value: 'getAPPowerConsumption',
description: 'Get power consumption trend data for an access point',
action: 'Get access point power consumption',
},
{
name: 'Get AP Radio Details',
value: 'getRadioDetails',
description: 'Get details about radio interfaces for an access point',
action: 'Get access point radio details',
},
{
name: 'Get Radio Performance',
value: 'getRadioPerformance',
description: 'Get comprehensive performance metrics for an AP radio',
action: 'Get radio performance metrics',
},
{
name: 'Get APs with Performance Issues',
value: 'getAPsWithIssues',
description: 'Get APs that might have performance issues based on metrics',
action: 'Get APs with performance issues',
},
],
};
// Fields for AP operations
exports.apFields = [
// Return all option
{
displayName: 'Return All',
name: 'returnAll',
type: 'boolean',
default: false,
description: 'Whether to return all results or only up to a given limit',
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: ['getAllAPs'],
},
},
},
{
displayName: 'Limit',
name: 'limit',
type: 'number',
default: 20,
description: 'Max number of results to return',
typeOptions: {
minValue: 1,
maxValue: 100,
},
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: ['getAllAPs'],
returnAll: [false],
},
},
},
// Filter options for getAllAPs
{
displayName: 'Filters',
name: 'filters',
type: 'collection',
placeholder: 'Add Filter',
default: {},
options: [
{
displayName: 'Site ID',
name: 'siteId',
type: 'string',
default: '',
description: 'Filter access points by site ID',
},
{
displayName: 'Model',
name: 'model',
type: 'string',
default: '',
description: 'Filter by access point model',
},
{
displayName: 'Status',
name: 'status',
type: 'options',
options: [
{
name: 'Online',
value: 'ONLINE',
},
{
name: 'Offline',
value: 'OFFLINE',
},
],
default: '',
description: 'Filter by access point status',
},
{
displayName: 'Deployment',
name: 'deployment',
type: 'string',
default: '',
description: 'Filter by deployment mode',
},
],
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: ['getAllAPs'],
},
},
},
// Serial Number field for operations that need it
{
displayName: 'Serial Number',
name: 'serialNumber',
type: 'string',
default: '',
required: true,
description: 'Access point serial number',
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: [
'getAPDetails',
'getAPThroughputTrends',
'getAPCPUUtilization',
'getAPMemoryUtilization',
'getAPPowerConsumption',
'getRadioDetails',
'getRadioPerformance',
],
},
},
},
// Site ID for topAPs operation
{
displayName: 'Site ID',
name: 'siteId',
type: 'string',
default: '',
required: true,
description: 'Site ID for which to retrieve AP information',
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: ['getTopAPsByWirelessUsage', 'getAPsWithIssues'],
},
},
},
// Limit for top APs
{
displayName: 'Limit',
name: 'limit',
type: 'number',
default: 10,
description: 'Max number of top access points to return',
typeOptions: {
minValue: 1,
maxValue: 25,
},
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: ['getTopAPsByWirelessUsage'],
},
},
},
// Time range for operations that support it
{
displayName: 'Time Range',
name: 'timeRange',
type: 'collection',
placeholder: 'Add Time Range',
default: {},
options: [
{
displayName: 'Start Time',
name: 'startTime',
type: 'dateTime',
default: '',
description: 'Start time for data retrieval (ISO 8601 format)',
},
{
displayName: 'End Time',
name: 'endTime',
type: 'dateTime',
default: '',
description: 'End time for data retrieval (ISO 8601 format)',
},
],
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: [
'getTopAPsByWirelessUsage',
'getAPThroughputTrends',
'getAPCPUUtilization',
'getAPMemoryUtilization',
'getAPPowerConsumption',
'getRadioPerformance',
],
},
},
},
// Interface type for throughput trends
{
displayName: 'Interface Type',
name: 'interfaceType',
type: 'options',
options: [
{
name: 'Wireless',
value: 'WIRELESS',
},
{
name: 'Wired',
value: 'WIRED',
},
{
name: 'LTE',
value: 'LTE',
},
],
default: 'WIRELESS',
description: 'Type of interface for which to retrieve throughput data',
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: ['getAPThroughputTrends'],
},
},
},
// Radio number for radio operations
{
displayName: 'Radio Number',
name: 'radioNumber',
type: 'number',
default: 0,
description: 'Radio number within the access point',
typeOptions: {
minValue: 0,
maxValue: 5,
},
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: ['getRadioDetails', 'getRadioPerformance'],
},
},
},
// Additional options for radio details
{
displayName: 'Options',
name: 'options',
type: 'collection',
placeholder: 'Add Option',
default: {},
options: [
{
displayName: 'Include Channel Utilization',
name: 'includeChannelUtilization',
type: 'boolean',
default: false,
description: 'Whether to include radio channel utilization trends',
},
{
displayName: 'Include Channel Quality',
name: 'includeChannelQuality',
type: 'boolean',
default: false,
description: 'Whether to include radio channel quality trends',
},
{
displayName: 'Include Noise Floor',
name: 'includeNoiseFloor',
type: 'boolean',
default: false,
description: 'Whether to include radio noise floor trends',
},
{
displayName: 'Include Frame Trends',
name: 'includeFrameTrends',
type: 'boolean',
default: false,
description: 'Whether to include radio frame trends (drops, errors, retries)',
},
],
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: ['getRadioDetails'],
},
},
},
// Issue detection options
{
displayName: 'Issue Detection Options',
name: 'issueDetectionOptions',
type: 'collection',
placeholder: 'Add Option',
default: {},
options: [
{
displayName: 'High Channel Utilization Threshold (%)',
name: 'highChannelUtilizationThreshold',
type: 'number',
default: 80,
description: 'Threshold for high channel utilization',
typeOptions: {
minValue: 0,
maxValue: 100,
},
},
{
displayName: 'Low Channel Quality Threshold (%)',
name: 'lowChannelQualityThreshold',
type: 'number',
default: 50,
description: 'Threshold for low channel quality',
typeOptions: {
minValue: 0,
maxValue: 100,
},
},
{
displayName: 'High Error Rate Threshold (%)',
name: 'highErrorRateThreshold',
type: 'number',
default: 5,
description: 'Threshold for high error rate',
typeOptions: {
minValue: 0,
maxValue: 100,
},
},
{
displayName: 'High CPU Utilization Threshold (%)',
name: 'highCPUUtilizationThreshold',
type: 'number',
default: 80,
description: 'Threshold for high CPU utilization',
typeOptions: {
minValue: 0,
maxValue: 100,
},
},
],
displayOptions: {
show: {
domain: ['monitoring'],
resource: ['aps'],
operation: ['getAPsWithIssues'],
},
},
},
];