Go to the previous, next section.
@everyfooting Author: hiren // Editor: ensley // Texinfo: ensley @| @| 3 December 1994
The email interface has two major roles in the archie server.
The first one is to have interface to the searcher and
provide a feedback to the user via email on what was the
result of that searcher. The second major role is the
management of ftp site addition/deletion to the current list.
So the email interface has the following major roles.
-
Have a email message parser which will interpret what
course of action to take based on the type of the email that
the archie server receives.
-
If the email message is asking for a service to search
the database then email interface sends appropriate
commands to the queuer. Receives the data from the queuer
and then sends an email back to the sender with the
appropriate data.
-
If the email message is asking for an addition or deletion
of a particular FTP site, the email parser sends the
appropriate command to the site list builder. Site list
builder then checks that the site address is a valid
address, gets the needed database from that address and then
sends based on the feedback from site-list builder, email
interface sends appropriate message to the sender of the mail.
Note : This is just a raw idea with the proposed implementation
detail. It has not yet been implemented but the idea seems very
concrete and is compatible with the implementation of the other
parts of the archie server.
We break the email interface in three major parts.
-
Email parser : Email parser will be similar to the universally
available majordomo mailing lists automation tool. The parser
will recognize the emails. The subject line will be ignored.
The parser will be able to recognize every command that is
valid for the archie server.
Email parser also recognizes the mail meant for administrator
of the archie server and any mail sent to the archie-admin
<archie_server> gets forwarded to the actual administrator.
Email parser is also a bit smarter, in a sense, that if it
recognizes the mail with only "help"/"manpage"/"servers"/
"version" command, then it sends a standard description related
to the relevant command back to the sender.
-
Queuer communication with email interface:
If email parser finds the search related command, it will save off the
important parts of the message and send a search request
with appropriate commands and an unique identifier to the queuer.
Queuer should be enhanced in future to support this unique
identifier and passing the message to the searcher and back
to the email interface. Once queuer gets the related information
from the searcher then the parser will match a unique identifier
which will enable parser to recognize the which email message to
relate this information to. Then parser will send the relevant
information in the form of email message to the sender.
In order to be able to do this, email interface should have
access to the database where it saves the information from the
message with a proper unique identifier (which can be the
combination of sender's email message id and unix process number)
and then it should also be able to access the database that
queuer and searcher works on so that it can pick up the information
from that database.
-
Site-list builder communication with email interface:
If the email parser finds the site-list addition/deletion
related command then it will save off the necessary information
(which will be sender's email address attached with unix
process number) and then send a proper command to the
site-list builder. Site-list builder validates the FTP tcp/ip
address and then sends a signal (like YES or NO or something
like that) to the email parser. Email parser will then
send a proper email message to the sender of the email with
info like "FTP address is not valid" or "FTP address added
to the Free Archie Server database, Thanks you..."..
We can use named pipes (FIFO) in communicating with the queuer
and site-list builder for sending signals back and forth so that
the email parser/queuer/site-list builder can take appropriate
action.
Go to the previous, next section.