Ideally I'd like a way to natively use a SIP gateway to dial the number via VoIP/TCP, but I don't think that's built into NPM (wink!). So what I'd do is this:
- Write an ASP/PHP/CGI web page that lives on a private (internal) website.
- When the page is called, the web server launches a process that makes the "phone call" on the back end via your method of choice... send serial commands to a modem, for all I care!
- Have the web page return only plaintext: the word "OK" for example, if the phone call succeeds, or "NO" (or nothing, or an error message) if the call fails. (Be sure to adjust the script timeout on your web server in case verification of the phone call takes longer than whatever your timeout is set as.)
- Set up a web content alert with APM or IPMonitor that hits the web page every n minutes and expects to receive the text "OK".
- If anything but "OK" comes up, fire off an alert.
There are other ways to accomplish the whole process, but the general gist is the same:
- Regularly do something with a custom script that the monitoring software can't do.
- either have the monitoring software kick off the script in real time and expect an answer, or
- have your server run it regularly and record the result in a place that can be monitored (an SNMP OID, or a text file, for example)
- Return the result of the script in a form that the monitoring software can understand.
- Alert on the result.