Monthly Archives: June 2007

How does Notify! work?

I am constantly getting questions on how our Notify! project works.  What are the capabilities of the system and more? 

The Asterisk Days:

In the early days, we actually used asterisk to do our calling.  Asterisk is a great project and taught us some interesting lessons on how the system should work.  Asterisk was missing a few needed functions for us to make an outstanding product for our customers.  We ended up developing fuzzy logic based answering machine detection directly into asterisk.  Our system became quite unique and updating asterisk to fix other problems would sometimes break our test systems (We put everything in test before it goes to production).  After months of testing we found that asterisk was limiting us and also more geared towards a PBX then a Notification Platform.  We had signed some large clients and the asterisk boxes were only handling about 80 calls per box (This is due to excessive sound file playing from the hard drive).

Our Windows Test:

After some time, we realized that we should try to write a complete system from scratch in windows.  So, we started writing everything into a windows service.  This service would query our central databases asking for a call to dial.  If there was nothing to dial, that particular service sat dormant only asking at a particular interval.  We ported over our fuzzy logic answering machine detection system and quite a bit of other “Secret” stuff that makes our system work fantastic.  After some preliminary testing, we found that our first version was doing 300 calls per box vs. the 80 calls we got out of asterisk.  After further tweaking, we got the system to do a bit more calls than that.

Current Capacity:

Our current capacity is over 4000 simultaneous calls spread over 3 geographically dispersed data centers.  We have multiple databases that stay in sync.  Our sound files are also stored in these databases.

Depending on demand, we have enough bandwidth to get the simultaneous calls over 8000+.  That is enough to overwhelm phone systems down in most cities (Which is not something we try to do).

Enterprise Carriers:

Another thing that took us quite some time was to find carriers capable of carrying the amount of traffic our system puts out.  This is not an easy task and you cannot expect those cheap carriers to handle any amount of burst traffic.

Summary:

While most of these questions have been asked of me by people wishing to make their own systems, you will find that CDYNE makes your life a lot easier by just using our Notify service.  Once you went through all the hassle to build that system, you will find that our prices are extremely reasonable.  We can cut costs for this amount of notifies based off the fact that we are combining more than one client.

A little bit about me…

Hello, my name is Christopher Chenoweth.  I am currently the CIO/VP of CDYNE Corporation.  Makers of Notify!, Postal Adddress Verifier, and many more web services.

I grew up with technology learning to program on a Commodore 64.  From a young age I have done a lot of things with electronics.  From putting my own computer together (I mean with a breadboard and microchips), to automating things in my house.  I can call my house and find out if I left the garage door up and have it close it.  These are all things I hope to document in my blog since I found them useful in my life and hope that others can learn from my mistakes!

What is ThreadAbort:
First, I will define a thread.  A thread is short for a Thread of Execution.  Which is a way for a program to split out tasks and allow it to run multiple things at once.  A ThreadAbort is way to terminate the execution of a thread.

Excuse me… what?
Let’s say your watching a football game and the wife asks you to take a break.  This would be a Thread Abort.

Why is this blog named ThreadAbort?
I want you to “abort” what you are up to and take some time to read my blog!  So, do an abort on whatever task you are doing and read the rest of this blog.

Hometown:
I grew up in the rural part of Leavenworth, Kansas.


View Larger Map

And pretty much went to the same school all my life in a neighboring city called Tonganoxie, Kansas.