CID V1.50 --------- This .PPE checks the secrity level of a user and if within the specified range, checks the Caller ID info for the phone number. If a number is found, then it writes it to the file specified. Usage: !CID.PPE C:\PCB\PPE\CID.CFG IF the configuration file is not specified, then CID.CFG in the same directory as CID.PPE will be used. Config File Format ------------------ There are 12 lines in the configuration file (see example file). 1) Search Text: This is the text to search for in order to find the phone number Supra: "NMBR = " ZyXEL: "NUMBER: " You may also directly place the numeric value of the postion of the number in this field. Note: do not include the quotes ("). They are shown only for clarity. To include a space at the end of the search string as shown, use ALT-255 in place of a space. 2) Name Search Text: This is the text to search for in order to find the callers name Supra: "NAME = " ZyXEL: "NAME: " 3) Private;Outside;SecLow;SecHigh;LogName;LogNoMatch;LogLockout; LogPCPursuit;HexFormat;CIDTest Private is the character that indicates a Private Number (usally P and CID will default to P if left blank) Outside is the character that indicates a Long Distance Number (usally O and CID will default to O if left blank) SecLow is the lowest level to display the file to SecHigh is the highest level to display the file to LogName is a flag to indicate the Name should be written to the caller log. 0 = No, 1 = Yes LogNoMatch is a flag to indicate that the Home & Bus numbers should be logged if neither matches the CID number. 0 = No, 1 = Yes LogLockout is a flag to indicate that a log entry should be written if the number matches a locked out number. 0 = No, 1 = Yes LogPCPursuit is a flag to indicate that a log entry should be written if the number matches a pcpursuit number or the User matches a pcpursuit name. HexFormat is a flag to indicate the phone number is in Hex and needs to be converted (such as in Canada) CIDTest is a flag for testing CID. Set to 1 it causes all calls to be logged in a file called CID_TEXT for study of the raw CALLID() data returned from the modem. 4) Label This is the label to use when logging the name from the CID info. The default is "CID: " Note: do not include the quotes ("). They are shown only for clarity. To include a space at the end of the label as shown, use ALT-255 in place of a space. 5) CIDFile This is the caller ID file to create 6) PrivateFile This is the file to be displayed if the ID indicates Private 7) OutsideFile This is the file to be displayed if the ID indicates Outside Area 8) NoMatchFile This is the file to be displayed if the ID does not match Users Record 9) LockOutFile This is the file to be displayed if the ID matches a number in the Lockout Number List File 10) Lockout Number List File This is a list of numbers to be locked out 11) PCPursuit Number List File This is a list of PCPursuit (or similar service) numbers. If a match is found then a CallerID file will not be created. Also the Users name will be added to the PCPursuit User List if not present. 12) PCPursuit User List File This is a list of PCPursuit (or similar service) users. If a match is found then the phone number will be added to the PCPursuit Number List if not present. CIDFile, PrivateFile, OutsideFile, NoMatchFile & LockoutFile are optional and any or all (but that would make this PPE pretty useless) can be skipped. You can use this PPE in any display file and it was written to allow you to tailor it's use with the command line arguments so modification and recompiling the source code should not be needed, but it is included here for study by those who want to write their own or those who desire to add some other feature. You can install it instead in your LOGON script file. I was using this PPE in my level 10 (New User who registers) and level 15 (User who has gone thru INSTAREG door but not been through PCBVerify Door yet) files. The origional purpose was to get the CALLERID file created so that PCBVerify would be able to use it to skip the actual callback and verify the User quickly. I changed this to my ALL file which gets displayed to everyone when I added the PrivateFile Feature to announce to Users who had CallerID blocked that such calls would no longer be allowed (I haven't decided if I will go this route yet or not, I would like to use a TPA to allow certain Users to block the ID, and don't want to setup security levels to control this, but I added this to the PPE with this in mind). I have attempted to strip extra characters [like -()+ and extra spaces] out of the Phone Numbers read from the Users Record before matching them but If you are aware of other characters that show up, let me know. I try to match only the portion that is in the User Record, so if the User Record contains no area code, it should still match the Caller ID string which will have an area code. If you try to use this feature and it reports the Caller ID number does not match either User Record Phone number when it should match, let me know what all the numbers contain. I added this feature even though I don't plan to use it myself. I need more information on other Modems that support Caller ID to add support for them directly. Also, I need more information on the data returned in different areas of the country in case it is different (even with the same brand of modem) than in my area. Version 1.50 adds support for Hex format as used in Canada, but I have no way to test it, so if someone could report back to me if it is working, I would appreciate it. I have included an optional 10th parameter on the 3rd line of CID.CFG that if set to 1 (True) then a file will be created in the current PCBoard directory called CID_TEXT that will include the CALLID() information for each call. Please send me this file attached to a message so I know what to add for a future release to fully decode the number and name data. Gary Meeker: SYSOP: SHARP Technical Support Line BBS (404) 962-1788