Anyone write their own netcallerID script?


Senior Member
I should be getting a netcallerid for Xmas and was wondering if anyone had wrote a free script that they wouldnt mind sharing with me. If not im going to write my own and will probably need a little help if you guys wouldnt mind.
I wrote the one I'm using.
It's pretty easy. I think you'll be able to handle it with a minimal amount of help.
Stevech wrote a VB app for the device and posted it and the source code on the HS BB for Free.
Squintz, are you getting the NetcallerID device from the manufacture or did you find a dealer which carries them?
I use the WAFNetcaller ID plugin done by dkindred. It supports a VBS script that you can add anything to. I use it to log the calls to a file, update a rolling buffer virtual device phone log of the last 15 calls that I use for my Netremote Now Playing project. It also wakes up the monitors out of sleep using harleydude's MonitorCtrl.exe app and also pops up the phone log CID screen on my touch tablets. It mutes my 5 zone whole house audio system. Oh and it announces the caller via TTS. It also sends a YAC message to my desktop PC.

Nice unit for $5 and the plugin has been solid.

Im probably going to by a USB to Serial converter in order to connect it to my pc. This means there is the posibility that it will use comm ports higher than 8 which would require me to use OpenComPortEX. One issue that i think i may run into is if i every unplug all the cables to my pc to move it somewhere when i plug them back in the com ports may change. So I want a bit of code that will check the available com ports and attempt to match up the correct port with the correct script. Im am using a cm11a on my only comm port now. This is why i will need to added the usb to serial converter. I don't want to open my PC up at this point in time because of all the hardware issues i had with it not too long ago. If i were to cause a hardware failure at this point in time it would just though me overboard and probably cause me to give up HA all together and i dont want that ;) So i am playing it safe by using a USB Converter.

For the time being i dont mind hard coding the script with the correct comm port but eventually when i start adding more serial and usb hardware which require scripts and plug ins then im going to want to autodetect which port the device is on. Im thinking that this would require a plug-in since i dont see any scripting functions that look like it would detect a devices port by name.

From what i have gathered so far im going to need to use a call back that opens the port and triggers the script everytime the port receives a terminating character.

What are you guys doing with the data gathered?
Are you just populating virtual devices?
Are you logging the calls?

I'm not familiar with having HS write to a seperate log file. Using you could have hs generate a nice XML file. I think i can do the same with scripting but it would require a little more code?

Eventually i would like to be able to view the data from a remote location via a web browser.
The reason I am asking is because that store you mentioned has an invalid certificate for several reasons (expired, wrong domain, etc.), I refuse to do business with companies who can't fix that, it's just asking for problems. My loss ;) As for your com port, your machine should have 2, check for a second COM header on your motherboard, if you have it, all you need is a little cable (grab it from an old machine) and you are set.
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.
Smee would you mind posting those files here. I only saw atachments from PP and im not sure what changes were made.
Take a look at this post for the script that writes call data to the flat file:
Take a look at that and the first few posts in the thread linked above.

The other stuff is in the the posts from me that start:
"I've got some "bonus" subroutines for you." - this stuff will make monthly backups (actually, will make backups whenever you call the script in an event).

"Here's the ASP page I use to view my call log." - this is the ASP page that shows the current file. I haven't gotten around to modifying it to allow me to look at previous months (part of the whole "If I'm going to convert to a database, why bother changing the code until I do).

Just about everything else in that thread is debugging pp's setup. But the base code in the above posts is good.

I am currently using the NetCaller ID unit as Comm port #6.

One of the better investments I recently purchased has been the Edgeport USB to eight serial connections unit described HERE and in the Homeseer forums HERE. My last post in the Homeseer forums describes how to set it up.

(I believe it was around $50 shipped or so, can't remember). It was a little more money than other alternatives, but I now have enough serial ports (including the two on my motherboard) for many future projects.

The reason I purchased the edgeport is because of the success reported by people in using it with a variety of HA related hardware/software.
Using an edgeport (like BSR!) whose comport numbers can be customized (for multiple units). My NetCallerID box is on one of these ports (9600, 8N1 No hardware control) which feeds Homeseer which feeds MainLobby CallerID plugin which both tells Homeseer to speak who's calling and pops up a display window with the caller information on all screens.
This is what I wrote
Ini function called from startup
Close function called from shut down


  • NetCID.txt
    3.2 KB · Views: 363
Bruce L - It looks like your script handles two lines, no? If so, I would be interested in using something like this. Your reference to "Ini function called from startup
Close function called from shut down" - can you elaborate on what this means?