As far as I know, you will not be able to autodetect a NetCallerID box on any port. It spits out information, but I don't believe it accepts any - you won't be able to get it to identify itself.
For most scripts using com ports, I either add a .ini file which contains the port information or hard-code it into the script as a CONST declaration at the very top. It's not too difficult to edit the script and change it.
What does mine do?
1) Incoming calls are announced over whole-apartment TTS. The caller is also displayed on LCD displays throught the apartment (which beep 3 times to let me know there's info there). If I'm away from home and the caller is not on my "do not notify" list, an email is sent to my phone, watch, and work email address.
2) Any new incoming number is added to a phone book file (a flat text file). This file is used to determine what name is associated with the number (i.e., "Mom and Dad" instead of "Lastname, Firstname"). It also contains the "do not notify" info.
2) All calls are logged to a flat file. This file is backed up and emptied once a month.
3) Calls can be viewed from an ASP page.
Here's a
thread on the HomeSeer forum which discusses some of what I'm doing. Note that all of the attachments were lost when the board moved. If you find the original thread in the old board, you can get the attachments. Or ask me.
I keep planning to move this stuff to a database or at least XML, but the flat files are working so well that I really haven't felt to great a need to - there are plenty of other projects that have higher priority.
If you want to get started right away, dkindred's script does work well. I wrote most of my support script to be compatible with his so that I could share what I've done with other people.
[1] Here's the original
thread on old HS forum. It has the attachments (including this really cool
image of my log file viewer.