logo

CALLGOOSE

NetXMS

Overview

This document provides a detailed guide to integrating NetXMS with Callgoose SQIBS for real-time Incident Management, Incident Auto Remediation, and Event-Driven Automation. The integration enables the automatic creation, updating, and resolution of incidents in Callgoose SQIBS based on network events, threshold violations, and node status changes triggered in NetXMS.

The guide covers setting up actions in NetXMS, configuring webhook delivery via external scripts, creating API filters in Callgoose SQIBS, and troubleshooting the pipeline.

Prerequisites

  • NetXMS Server: Access to a running NetXMS server with administrative privileges.
  • Callgoose SQIBS Account: A valid account to set up API filters and escalation policies.
  • Connectivity: The NetXMS server must have outbound HTTPS access to the Callgoose API.
  • Tools: curl installed on the NetXMS server (to facilitate the webhook delivery).

1. Obtain API Token and Endpoint Details

To integrate with Callgoose SQIBS, you first need to obtain an API token and find the API endpoint details.

https://****.callgoose.com/v1/process?from=NetXMS&token=xxxx

2. Installing NetXMS

Ensure your NetXMS environment is ready. The installation varies by operating system.

2.1. For Linux (Debian/Ubuntu)

NetXMS provides official repositories for easy installation.

Bash


# 1. Install the NetXMS repository package
wget https://packages.netxms.org/netxms-release-latest.deb
sudo dpkg -i netxms-release-latest.deb
sudo apt-get update

# 2. Install the Server and Core components
sudo apt-get install netxms-server netxms-dbdrv-pgsql

2.2. For Windows

  1. Download the NetXMS Installer from the official website.
  2. Run the installer and select NetXMS Server and Web Console.
  3. Complete the Database Configuration Wizard to initialize the backend.

3. Configuring the Notification Pipeline

NetXMS uses Actions to trigger external processes. We will create a script that formats NetXMS event data into a JSON payload for Callgoose SQIBS.

3.1. Create the Webhook Script

Create a script on your NetXMS server

(e.g., /opt/netxms/bin/callgoose_notify.sh).

Bash

#!/bin/bash
# NetXMS to Callgoose Notification Script

STATUS=$1      # "firing" or "resolved"
EVENT_ID=$2    # NetXMS %I
MESSAGE=$3     # NetXMS %m
NODE_NAME=$4   # NetXMS %n

URL="https://YOUR_SUBDOMAIN.callgoose.com/v1/process?from=NetXMS&token=YOUR_TOKEN"

PAYLOAD=$(cat <<EOF
{
  "source": "netxms",
  "status": "$STATUS",
  "alert_id": "$EVENT_ID",
  "summary": "NetXMS: $MESSAGE",
  "node": "$NODE_NAME",
  "timestamp": "$(date -u +%Y-%m-%dT%H:%M:%SZ)"
}
EOF
)

curl -X POST -H "Content-Type: application/json" -d "$PAYLOAD" "$URL"

Note: Ensure the script is executable: chmod +x /opt/netxms/bin/callgoose_notify.sh

3.2. Configure Actions in NetXMS Console

  1. Open the NetXMS Management Console.
  2. Go to Configuration → Action Configuration.
  3. Create Trigger Action:
  • Name: Callgoose_Trigger
  • Type: Execute command on management server
  • Command: /opt/netxms/bin/callgoose_notify.sh "firing" "%I" "%m" "%n"
  1. Create Resolve Action:
  • Name: Callgoose_Resolve
  • Type: Execute command on management server
  • Command: /opt/netxms/bin/callgoose_notify.sh "resolved" "%I" "%m" "%n"

4. Configuring Callgoose SQIBS

4.1. Example JSON Payloads from NetXMS

Alert Triggered

JSON


{
  "source": "netxms",
  "status": "firing",
  "alert_id": "8821",
  "summary": "NetXMS: Node Down (Critical)",
  "node": "Core-Switch-01",
  "timestamp": "2026-03-10T21:00:00Z"
}

4.2. Configuring API Filters

In Callgoose SQIBS, navigate to API > API Filter to define how these payloads create incidents.

4.2.1. Trigger Filter (For Creating Incidents)

  • Payload JSON Key: status
  • Key Value Contains: firing
  • Map Incident With: alert_id
  • Incident Title From: summary
  • Incident Description From: node

4.2.2. Resolve Filter (For Resolving Incidents)

  • Payload JSON Key: status
  • Key Value Contains: resolved
  • Incident Mapped With: alert_id

5. Verifying the Integration

  1. Trigger a Test Alert: In NetXMS, go to the Object Browser, right-click a test node, and select Poll → Status. Alternatively, manually trigger an event using the nxevent CLI tool: nxevent -u admin -p password localhost SYS_NODE_DOWN
  2. Check Callgoose Dashboard: Log in to Callgoose SQIBS. A new incident should appear with the status "Open" and the description of your test node.
  3. Verify Resolution: Trigger the corresponding "UP" event in NetXMS and verify the incident in Callgoose moves to "Resolved."

6. Adding Custom NetXMS Event Rules

NetXMS allows you to create specific Event Processing Policy (EPP) rules to filter what gets sent to Callgoose.

  1. Go to Configuration → Event Processing Policy.
  2. Create a new Rule.
  3. Condition: Select specific events (e.g., APP_ERROR, UPS_ON_BATTERY).
  4. Action: Add Callgoose_Trigger to the "Actions" list.
  5. Execution: Use "Stop Processing" if you want this to be the primary notification path.

7. Debugging and Troubleshooting

  • Enable Debugging: In Callgoose SQIBS, update your API token settings to enable Debug Mode. This will log all incoming JSON payloads for 48 hours in the API Log.
  • Check NetXMS Logs: Review netxmsd.log (usually in /var/log/netxms/) to see if the external command was executed successfully.
  • Test Script Manually: Run the .sh script directly from the terminal with dummy arguments to ensure curl is working and the URL is correct.
  • Mapping Issues: Ensure the alert_id used in the trigger payload is identical to the one sent in the resolve payload; otherwise, auto-resolution will fail.

9. Conclusion

CALLGOOSE
SQIBS

Advanced Automation platform with effective On-Call schedule, real-time Incident Management and Incident Response capabilities that keep your organization more resilient, reliable, and always on

Callgoose SQIBS can Integrate with any applications or tools you use. It can be monitoring, ticketing, ITSM, log management, error tracking, ChatOps, collaboration tools or any applications

Callgoose providing the Plans with Unique features and advanced features for every business needs at the most affordable price.



Unique Features

  • 30+ languages supported
  • IVR for Phone call notifications
  • Dedicated caller id
  • Advanced API & Email filter
  • Tag based maintenance mode
Book a Demo

Signup for a freemium plan today &
Experience the results.

No credit card required