PortAlert for Small and Middle Businesses

Standalone lightweight TCP port monitoring software for small and medium businesses. PortAlert for SMB checks your important services automatically, sends Email, Microsoft Teams, and Telegram alerts when a port is down, and sends a recovery message when the service returns to normal. No server, no cloud dependency, no complex monitoring platform required.
Multiple Workers for Faster Port Checking to parallel check multiple targets at the same time.

Overview

Offline License Email Alert Microsoft Teams Alert Telegram Alert Multi-threading Support Recovery Notice IamAlive

PortAlert for SMB is designed for simple, affordable, and reliable monitoring of websites, servers, network devices, database ports, VPN endpoints, office services, and internal business systems.

Recommended use cases: website monitoring, firewall rule monitoring, database port checks, internal DNS / mail / VPN service monitoring, branch office monitoring, and small or medium business IT alerting.

Files Included

FileDescription
portalert.exe / portalertMain monitoring program for Windows or Linux.
license.datYour offline license file.
portalert_host.txtHost and port monitoring settings.
portalert_email.txtSMTP, Microsoft Teams webhook, and Telegram settings.
curlUsed to send Email, Microsoft Teams, and Telegram messages.
portalert_log.txtRuntime log file created by the program.

Quick Start

  1. Unzip and copy all files into one folder.
  2. Edit portalert_host.txt to define the hosts and ports you want to monitor.
  3. Edit portalert_email.txt to define your SMTP, Microsoft Teams webhook, and Telegram settings.
  4. Run portalert -check first to validate config format, then run portalert -test to confirm Email, Microsoft Teams, and Telegram delivery before enabling background mode.
  5. Place your valid license.dat in the same folder.
  6. Open Command Prompt in this folder and run portalert.
portalert
portalert -check
portalert -test
portalert -start
portalert -status
portalert -stop
portalert -licenseinfo
portalert -probe
Configuration format: key : "value"
Use : as separator. = is not supported by the recommended config standard.

Host Configuration

Edit portalert_host.txt.

interval : "15"
fast_retry_interval : "4"
workers : "2"

host : "smartbooth.com"
port : "80"
description : "smartbooth web"
timeoutsec : "7"
alertcount : "3"

host : "590915.xyz"
port : "443"
description : "main website https"
timeoutsec : "7"
alertcount : "3"
Microsoft Teams notification is recommended for small and medium business IT monitoring.
PortAlert can send DOWN and RECOVERY alerts directly into a Teams channel through a Power Automate webhook.

Microsoft Teams Setup

  1. Create a Teams channel for monitoring alerts.
  2. Create a Power Automate flow using a Teams webhook or HTTP request trigger.
  3. Copy the generated webhook URL.
  4. Paste the URL into teams_webhook in portalert_email.txt.
  5. Run portalert -check to validate configuration format.
  6. Run portalert -test to verify Email, Microsoft Teams, and Telegram delivery.
Teams webhook URLs are usually very long and may include query values such as api-version=1, sv=1.0, and sig=.... Keep the full URL on one line inside double quotes.

Parameter Description

ParameterDescription
intervalNormal check interval in seconds.
fast_retry_intervalShorter retry interval used when one or more monitored ports are in failure state.
workersNumber of parallel port checks. Default is 2. Maximum safe limit is 50.
hostHost name or IP address to monitor.
portTCP port number to check.
descriptionYour note for this target.
timeoutsecTCP connect timeout for each check.
alertcountNumber of consecutive failures before sending a DOWN alert.

Workers for Faster Port Checking

PortAlert supports controlled parallel workers for faster monitoring when many services or devices are configured. The program still runs as one background process, but inside that process it can check multiple targets at the same time.

workers : "2"
SettingDescription
workers : "2"Default value. Two port targets can be checked at the same time.
workers : "10"Useful for medium-size SMB environments with many servers or network devices.
workers : "50"Maximum safe limit.
Recommended default: keep workers : "2" for trial mode and small deployments. Increase workers only when you monitor many ports and need faster scan completion.
Do not start multiple copies of PortAlert. Use one portalert -start background process and configure workers instead. This avoids duplicate alerts and duplicate Microsoft Teams, Email, or Telegram messages.

Email, Microsoft Teams, and Telegram Configuration

Edit portalert_email.txt.

server : "smtp://smtp.gmail.com:587"
email : "your@gmail.com"
password : "your_app_password"
from : "your@gmail.com"
to : "admin1@hotmail.com,admin2@yahoo.com"
iamalive : "admin1@hotmail.com"

*** Microsoft Teams notification. Remove * to enable.
*teams_webhook : "https://your-power-automate-webhook-url"

*** Telegram notification. Remove * to enable.
*token : "your telegram bot token"
*chat_id : "-123456789"

Parameter Description

ParameterDescription
serverSMTP server and port. Example: smtp://smtp.gmail.com:587
emailSMTP login account.
passwordSMTP password or app password. The program can auto-convert it to encrypted format.
fromSender email address.
toMain alert recipients.
iamaliveDaily keep-alive recipient.
teams_webhookMicrosoft Teams / Power Automate webhook URL. Leave blank or mark with * if not used.
tokenTelegram bot token.
chat_idTelegram chat ID or group ID.
Gmail with App Password is recommended because it is easy to set up, fast, and reliable for sending alert emails. Microsoft Teams is recommended for IT team visibility in small and medium businesses.

License

Standalone, lightweight, and affordable for small and medium businesses.
No setup server. No cloud monitoring platform. One-time license purchase. No subscription charges.

PortAlert for SMB uses an offline local license file named license.dat.

Recommended customer flow:
Download ZIP → Test PortAlert → Generate probe.txt → Purchase License → Send probe.txt → Receive license.dat → Run production monitoring
portalert -probe > probe.txt

Send the generated probe.txt to us. A matching license.dat will be issued for your machine.

portalert -licenseinfo

This command displays current license mode, customer, expire date, and machine matching result.

Alert Behavior

  • When a monitored port fails continuously and reaches alertcount, a DOWN alert is sent.
  • After a DOWN alert is sent, the internal failure counter is reset.
  • Before the service recovers, repeated DOWN alerts are not sent again and again.
  • When the service comes back, a RECOVERY alert is sent.
  • Daily IamAlive can be sent to confirm the program is still running.

Trial Mode Limits

ItemTrial Limit
Email alerts2 per day
Microsoft Teams alerts2 per day
Telegram alerts2 per day
IamAlive1 per day
Monitoring targetsMaximum 2 hosts
Licensed mode removes the above Trial limits.

Command Reference

CommandDescription
portalertRun in foreground mode.
portalert -startStart in background mode.
portalert -stopStop background process.
portalert -statusCheck whether the monitor is running.
portalert -checkValidate config file format. Use this first to catch = and missing keys.
portalert -testSend a test Email, Microsoft Teams, and Telegram alert to verify configuration.
portalert -probePrint machine probe information.
portalert -licenseinfoShow current license status.
portalert -sSilent mode.
portalert -h / portalert --helpShow command help and usage summary.

Recommended command flow: edit config, run portalert -check and portalert -test, then use portalert -start for background monitoring.

Recommended Deployment

  • Install in a fixed folder such as C:\PortAlert.
  • Keep portalert, license.dat, and config files in the same folder.
  • Use a stable SMTP account.
  • Test one invalid port first to verify Email, Microsoft Teams, and Telegram alerts are working correctly.

Troubleshooting

No Email Alert

  • Check SMTP server, account, password, and firewall rules.
  • Confirm curl exists in the same folder or in PATH.
  • Review portalert_log.txt.

No Microsoft Teams Alert

  • Check teams_webhook in portalert_email.txt.
  • Make sure the webhook URL is complete, on one line, and enclosed in double quotes.
  • Confirm the Power Automate flow run history shows success.
  • Run portalert -test and check console output for Teams command rc=0.

No Telegram Alert

  • Check token and chat_id.
  • Ensure the bot has permission to message the target chat or group.

Still in Trial Mode

  • Confirm license.dat is in the same folder as portalert.
  • Run portalert -licenseinfo to check the reason.

Purchase

To purchase or renew your license, please visit:
https://www.smartbooth.com/purchase_lic.htm