** Contents ** Update Requests Database Format Database Manager EPURWP And Update Messages WP Server Requests
The White Pages implementation in FBB software is been based upon the W0RLI model (many thanks to Hank for his work).
White pages features :
The database information is updated, first from the information given by users when they exercise the N, NH, NQ and NZ features at their home (or another WP equipped) BBS; and secondly, from information contained within the messages headers as they traverse the Network.
The database is dynamic, it is changing constantly, and it updates itself in real time. Either as soon as a line of a message header is received when in ASCII forwarding mode, or when a complete message is decoded in compressed forwarding mode; or else when a user disconnects from the BBS (this is to prevent multiple updates being generated during a session).
The database can hold many call signs. In fact it maintains a list of all the calls seen from all individuals sending messages as well has all of the BBS's seen in the forwarding paths. More than 10,000 valid records is not impossible today, and this will surely increase as the number of packet radio users grows with each day. This will allow user to send messages to other users around the world without necessarily having to be concerned to find their full Hierarchical Address, the old principle of the user typing:
BBS PROMPT > SP K6VAZ @ KM6WU.#CENCA.CA.USA.NOAM should now be replaced by the user entering: BBS PROMPT > SP KM6VAZ The BBS will add the HA and send the response: BBS PROMPT > SP K6VAZ WP ROUTING @KM6WU.#CENCA.CA.USA.NOAM ADDED TITLE ?
If the routing destination HA is not recorded in the database then the user will be advised and prompted to enter the address manually.
Another capability of FBB White Pages is the automatic sending of update messages to other BBS's. These messages are generated every night during House-Keeping and are a listing of the additions and modifications made to the database during that day. These messages are sent addressed both to and from WP.
When passing through or terminating at another White Pages equipped BBS, the message will automatically update the 'local' WP database at that BBS. This feature MUST BE USED WITH CARE, as updates can generate a lot of traffic and the Network must be able to support it.
*** It's not be a good idea to send these update messages on HF ! ***
A built-in White Pages server (WP) will provide information from the database in response to a remote request. This server is described in paragraph xx. All files used by White Pages are in the FBB\SYSTEM\WP subdirectory.
Trace for WP updates (for debugging etc):
in the \windows\winfbb.ini file, add the following line in the main section :
TraceWp=1
You can replace 1 with 2 or 3.
3 gives the maximum information.
A file WP.DBG will be created in the WP directory.
The database receives information from three sources. The s indicated on each line of the update message as a suffix to the call:
When the BBS is idle the Database Manager is called and the update information detailed above is processed.
The database is composed of individual records. Each record is composed of the following components :
The update sub-routine freshens the database, following receipt of the new or changed information detailed above.
The update subroutine will first look for an entry in the database for the call which matches the received information. If it does not exist then a completely new record will be created in the database and the information be used to fill what fields it can, in both the active and the temporary components. The date will be then changed to the one associated with the update information.
If the record does already exist, then the unknown fields of both the temporary and active fields will be filled in, and those fields already known in the temporary part will be replaced by the new information if the date new information is younger than that already on file. The date will then be adjusted such that it is consistent with the updated information.
If the new information is of the /U category, then the current fields will be replaced by the new information in both the primary and secondary (Active and Temporary) parts of the record, as this information has been input directly from the user. If the information was of another category then only the secondary (Temporary) part of the record will be updated, so the Active or primary record will remain unchanged at this time.
If a field is changed, a flag giving the update request type is then validated. If the /U flag is already validated, it will not be replaced. This flag will be used in case the WP update messages are validated.
EPURWP is a maintenance program for the White Pages database which should be run during each House-Keeping cycle.
The program conducts a validity check on each of the entries, and discards any "unwanted" records (in the case of an invalid call for example).
The program also checks the date of the last update of the temporary part of each record. If this date is older than a pre-defined number of days (given as a parameter, default 40 days) then the temporary part is considered as stable, and then the known fields will be transferred to the Primary or Active part, which is then used to answer all addressing/server requests.
This process ensures that the database is tolerant of users sending messages from mailboxes other than their normal HomeBBS. Once the Active or primary part of the record is set, then the temporary (or secondary) part can be updated/changed many times. Only once this temporary field has remained unchanged for 40 days, or the user exercises any of the "Nx" options at his new HomeBBs will the Active or Primary record be changed.
If the changes to the database are validated, then the record is marked with an update flag and a line will be appended to the file MESS.WP
Each line of the outgoing WP update messages looks like :
On 930123 FD1CDC/U @ F6FBB.FMLR.FRA.EU zip 31240 Claude Saint Jean
Any unknown fields are replaced by "?".
example :
On 930123 FD1CDC/U @ F6FBB.FMLR.FRA.EU zip ? ? Saint Jean
The U character is the update type.
FBB software has an internal built-in WP server. The format of the WP server requests are as shown below :
BBS PROMPT > SP WP @ F6FBB Title of message WP Request (does not matter) Text of message F6FBB ? EA3* ? ^Z (or /EX)
The server will answer to the request with a private message, addressed to the sender, and routed to the BBS according to the first R: header line of the incoming request.
The reply message is restricted to a maximum of 100 lines, as the use of wildcards in the request could generate a unacceptably long replies.