Two different output formats are available. They are selected using the "X,x" toggle. The comprehensive format is preferred by most programmers because more information is delivered about each call. The limited format is not as informative or flexible, but may be preferred in basic Caller ID applications.
The comprehensive format is highly recommended for all applications. The amount of data sent, combined with the flexibility of sending the data at the end of the call, makes it the format of choice for even very simple applications. The data string can be, 63 characters in length, including the leading $ sign (if the "c" toggle is set), spaces, the carriage return, and line feed characters at the end of the data.
The comprehensive format for an inbound call is shown in Fig. 2a. The line number always precedes the data string. In this example, data from line 3 is discussed.
The Inbound/Outbound and Start/End of Call Indicators use I/O and S/E respectively. Remember that the unit can be set to send data on inbound and outbound calls or only on inbound calls (toggle "O,o"). Also, the data stream can be sent at the start of the call, end of the call, or both (see toggles "A,a" and "S,s").
Since the duration of the call is sent only after the call is complete, toggles "O,o" and "S,s" must be set so the unit will send data at the end of the call.
The Caller ID string sent by the telephone company always contains a checksum. The unit compares its checksum with the checksum sent by the phone company and displays the either "G" (Good) if the two match or "B" (Bad) if they do not match. The application programmer may elect to ignore this indicator and determine the validity of the data after reading in the data stream.
The next field contains both the number of rings delivered by the telephone company before the call was answered and the type of ring. A service called Distinctive Ring or Ring Master is offered to customers in many areas. It allows up to 4 telephone numbers to be routed to one phone line. Each phone number dialed causes the telephone to ring differently. The unit will determine which ring pattern is delivered and mark it as A,B,C, or D. Please note the number of rings is always zero except when the data is delivered at the end of an incoming call.
The date and time information is sent by the phone company as part of the Caller ID signal on each incoming call. For each incoming call with a good checksum, the time and date information will be used to reset the internal real time clock to match the telephone company's clock.
The phone number field for the comprehensive format is 12 characters and left justified. Dashes are inserted when the "C" toggle is set. If the "c" toggle is set the dashes are removed (and a leading $ sign is inserted in front of the data string). In some areas of the US and Canada, no area code is sent for calls within the local calling area. In this case, the unit will send the 7 digit phone number, left justified. If the application software will be used in different areas of the country, it is suggested that the local area code reside in the software to be appended to any 7 digit number delivery to make it a 10 digit number.
In many areas, the name of the caller will be delivered along with the number. This service is sometimes referred to as Caller ID Plus, Caller ID Deluxe, or Enhanced Caller ID. If delivered by the local telephone company, the name will reside in a left justified, 15 character field, following the number field. Names for private residences are usually sent last name first, space, first name, space, and then middle initial. Business names are most often sent as they are listed, but if they over 15 characters, truncation will occur. Even though most local telephone companies send all upper case names, the Bellcore and Bell Canada specification provides for the delivery of both upper and lower case characters.
Figure Figure 4.2 shows the Comprehensive format for outbound calls. Unlike Figure 4.1, toggle "c" is set. (Remember toggle "c" places a $ sign before the data stream and removes dashes in the phone number field.)
The outbound indicator displays O and the Start/End indicators are the same as inbound calls. The duration of the call is only sent at the end of the call and is displayed in seconds. The checksum indicator is always "good" and the number of rings remains "zero" at all times. The date/time displayed is the date/time that the call was initiated and does not change at the end of the call. The unit tries to be as "smart" as possible in determining where to place outbound dialed digits. Digits dialed are placed in either the number or name field. The algorithm below explains where the unit places digits.
All digits dialed within 2 seconds of each other will be displayed beginning in the number field. If more than 10 digits are dialed, the additional digits will be displayed in the name field. The "Start" data string for outbound calls will be sent immediately after a period of 2 seconds when no digits are dialed. Any digits dialed after this 2 second interval will be displayed in the name field and will be displayed only at the end of the call. In the example in Figure 4.1, second data string, the 800 number was originally dialed. After a few rings, an automated answering device answered the call. The caller then dialed additional digits responding to voice menu selections.
An exception to this 2 second rule provides for 7 and 10 digit numbers to be reported in the number field on the end record, regardless of the interval between dialed digits.
The limited format is designed for simple inbound Caller ID delivery. Even though outbound dialed numbers can be captured, it is recommended for only the simplest call accounting applications. Even if your application only requires simple inbound Caller ID data delivery, we still recommend the comprehensive format over the limited format. In this way, your application can grow with the increasing needs of your business.
The limited format for an inbound call is shown in Figure 4.3. The data string can be up to 73 characters long including the leading $ sign (if "c" toggle is set), spaces, and the carriage return/line feed characters at the end of the data. The line number always precedes the data. Data for line 3 is discussed in this example.
The date and time information is sent by the phone company as part of the Caller ID signal on each incoming call. For each incoming call with a good checksum, the time and date information will be used to reset the internal real time clock to match the telephone company's clock.
The phone number field for the comprehensive format is 14 characters and RIGHT justified. Dashes are inserted when the "C" toggle is set. If the "c" toggle is set the dashes are removed (and leading $ sign is inserted in front of the data string). In some areas of the U.S. and Canada, no area code is sent for calls within the local calling area. In this case, the unit will send the 7 digit phone number, RIGHT justified. If the application software will be used in different areas of the country, it is suggested that the local area code is stored in the software and added to any 7 digit number received so as to make it a 10 digits. In this way, a 10 digit look-up routine can still be used for local calls.
In many areas, the name of the caller will be delivered along with the number. This service is often referred to as Caller ID Plus, Caller ID Deluxe, or Enhanced Caller ID. If delivered by the local telephone company, it will reside in a RIGHT justified, 15 character field, following the number field. Names for private residences will usually be sent last name first, space, first name, space, and then middle initial (if applicable). Business names are most often sent as they are listed, but if they are over 15 characters, truncation will occur. Most local telephone companies send all upper case names, the Bellcore and Bell Canada specification provides for the delivery of both upper and lower case characters.
For reference, the line number field is 2 characters in length. The date field is 5 characters. The time field is 8 characters. The number field is 14 characters. The Inbound/Outbound field is 1 character. The name field is 15 characters. The carriage return line feed characters are sent immediately after the last data character. Therefore, no spaces are sent to fill the remaining characters in the last field. All fields are separated by 5 spaces in the limited format.
Figure 3b shows the Limited Format for outbound calls. Unlike figure 3a, toggle "c" is set. (Remember toggle "c" places a $ sign before the data string and removes all dashes in the phone number field.)
The date and time come from the on-board time clock. The Inbound/Outbound indicator is placed between the number and name field. All digits dialed within 2 seconds of each other will be displayed beginning in the number field. If more than 10 digits are dialed, the additional digits will be displayed in the name field LEFT justified. The data string for outbound calls will be sent immediately after, a period of 2 seconds, when no digits are dialed. Any digits dialed after this 2 second interval will not be reported. Remember that the data string for limited format cannot be sent after the call is concluded. Therefore, once the data is sent at the beginning of the call, any digits dialed thereafter, will not be reported.
For reference, the line number field is 2 characters in length. The date field is 5 characters. The time field is 8 characters. The number field is 14 characters. The Inbound/Outbound field is 1 character. The name field is 15 characters. The carriage return line feed characters are sent immediately after the last data character. Therefore, no spaces are sent to fill the remaining characters in the last field. All fields are separated by 5 spaces in the limited format.
Copyright © 2010 CallerID.com