Make/Model  Device VersionConnection Type
NetCallerIDAll known NetCallerID devicesSerial

Description:

This driver interfaces CQC to a now defunct NetCallerID for the purpose of decoding the Caller ID data that is sent between the first and second ring by the telephone company. These devices are readily available on eBay and appear to work well. This data is made available to CQC through fields and is also used as an index to look up extended information from a text file that can provide a more verbose description. The driver maintains a history file with the last 10 calls being able to be displayed and provides a number template file to format the number.

This driver provides the following functionality:

  1. Decodes the incoming CID data and presents it to CQC for display.
  2. Looks up enhanced information in a text file for more verbose data.
  3. Maintains a history of the last 10 callers, persistently stored in a text file.
  4. Presents the history data both as a single string with minimal formatting and as a set of individual fields for customized layout 
  5. Provides a Boolean flag field that is set when a new call arrives and can be reset by the user to indicate a call has arrived since last viewing.
  6. Provides an expanded number field for text to speech engines
  7. Provides a formatted number field that formats the callers number according to a set of templates.
  8. Allows the user to select either 12 or 24 hour time format.
  9. Provides a debug field with the last message received from the device.
This driver is a direct decendant of the CQC Modem Caller ID driver written by Rohan. Very few changes/enhancements were made to his original work.

 Limitations:

None at this time

Connection Details

The NetCallerID Driver connects directly to a standard serial port with the included cable. This driver is essentially a oneway driver as the device accepts no configuration or commands. No data is sent to the device.

Driver Fields

This section lists the fields that the driver makes available, their types, minimum and maximum values, etc...

NameTypeR/WDescription/Limits
DateMonthStringRHolds a numeric version of the current Month eg 01 = Jan, 12 = Dec
DateMonthLongStringRHolds an English version of the month eg January, February...
DateDayStringRHolds the current day of the month
TimeStringRHolds the time the call arrived
NumberStringRHolds the Callers Number (where presented)
NameStringRHolds the name of the caller (where presented)
RingingStringRIndicates the line is ringing
FullNameStringRHolds the callers full name (derived from the data.txt file)
AddressStringRHolds the callers address (derived from the data.txt file)
Data1StringRGeneral purpose field (derived from the data.txt file)
Data2StringRGeneral purpose field (derived from the data.txt file)
HistoryStringRHolds a history of the last 10 callers (derived from the history.txt file)
NewCallBooleanR/WProvides a user reset able flag that is set when a new call arrives.
ExpandedNumberStringRProvides a field with each digit of the number separated by a space. Useful for text to speech engines
FormattedNumberStringRProvides a field with the number formatted according to the templates defined in format.txt
DebugStringRProivdes the raw content of the last event from the device
HistoryRowXNameStringR The fields below are a collection of 70 fields generated to store the history data as separate fields for custom formatting. X = the row number
HistoryRowXFullNameStringRAs Above
HistoryRowXNumberStringRAs Above
HistoryRowXAddressStringRAs Above
HistoryRowXTimeStringRAs Above
HistoryRowXDateDayStringRAs Above
HistoryRowXDateMonthLongStringRAs Above
ReloadBoolWProvides a mechanism to move the last caller information (history row 1) to be moved into the current call information. No reprocessing takes place so data1 and data2 will not be available.

 

Driver Text Files

Note: These files are NOT provided with the Driver, and should be built by hand using notepad or similar, and placed in the CQCData\MacroFileRoot\ModemCallerID\ directory.

          Data.txt

This file is used to provide the CQC Modem CallerID Driver with enhanced fields. When a number is received via Caller ID this file is parsed looking for a match in the first token of each line. If a match is found then the other tokens are read and transferred into the relevant fields. A default entry can also be used as a catch all if desired.
The fields are comma delimited and are set up as follows:

Number,Name,Address,Data1,Data2
Default,Default Name,Default Address,data1,data2

The Data1 & Data2 fields are just provided as general fields which can hold anything. The original intent was to be able to provide a flag to the events system that it could use to decide if the person calling was important enough to interrupt the movie or whatever. Any lines beginning with // are ignored. Do not leave any blank lines. Do not leave any white space characters at the end of the file eg CR This file should be placed in CQCData\MacroFileRoot\ModemCallerID\Data.txt

Example:
12345678,Rohan Mobile,Out and About Somewhere,Friend,Interrupt
87654321,Uncle Bill,123 Smith St,Relation,No Interrupt
18273645,Luscious Leticia,At Home,Professional Acquaintance,Interrupt

 

History.txt

Also as of V2.0 you need a History.txt file in the same directory. Note: the Delimiter is a vertical pipe | character!

Example:
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
Time|DateDay|DateMonthLong|Name|FullName|Address|FormattedNumber
 

This file should be placed in CQCData\MacroFileRoot\ModemCallerID\history.txt

Format.txt

This file is used to provide the CQC Modem CallerID Driver with templates that allow the user to customise the formatting of the callers number. When a number is received it is compared to each template in the format.txt file for a match. If a match is found then the number is formatted to match the template.

Each template consists of # characters, digits and other characters.
Each # character represents the position of a number.
Each digit represents an actual fixed digit position.
The total number of # characters and digits, on each line (template) is used to match against the total number of digits in the callers number.
Combinations of # and digits must be unique for each template.
If a matching template is not found then the number is copied to the FormattedNumber field unchanged.
 

Any lines beginning with // are ignored. Do not leave any blank lines. Do not leave any white space characters at the end of the file eg CR This file should be placed in CQCData\MacroFileRoot\ModemCallerID\format.txt

Example:

// Any 10 digit number beginning with 02 will match (New South Wales & Australian Capital Territory)
(02) #### ####
// Any 10 digit number beginning with 03 will match (Victoria & Tasmania)
(03) #### ####
// Any 10 digit number beginning with 07 will match (Queensland)
(07) #### ####
// Any 10 digit number beginning with 08 will match (Western Australia, South Australia & Northern Territory)
(08) #### ####
// Any 10 digit number beginning with 04 will match (Mobile phones)
04## ### ###
// Any 8 digit number will match
#### ####
// This is an extreme example
The first two digits are ## and the next two digits must be the numbers 7 and 8 and the rest of the twelve digit number must look like ##6#90##

Note: These files are NOT provided with the Driver, and should be built by hand using notepad or similar, and placed in the CQCData\MacroFileRoot\ModemCallerID\ directory.

Debug[Moniker].Log

MONIKER is to be replaced with the driver name exactly as entered when the driver is added (i.e. if your driver is called CID1, the file will be called DebugCID1.Log). This file is used to provide the CQC Modem CallerID Driver with a history of the raw output from the device whenever this file exists. Creation of this file turns on the debugging and deleting it turns it off.

NOTE: this file will continue to grow so monitor the size appropriately. Each call only adds approximately 40 bytes so the growth will not be fast. This file should not be created unless needed.