Re: Linux sockets
- Posted by Robert Craig <rds at RapidEuphoria.com> Nov 08, 2002
- 471 views
Since Kat and a few others are interested, I'll provide some technical details about how the mailing list filter (http://www.ListFilter.com) works. ListFilter is not rocket science, although I've now added so many subtleties to it that it's approaching true AI It consists of two Euphoria programs that can run on Linux or FreeBSD without any change. The two programs share an EDS database (per mailing list) containing all the configuration data, "good" and "bad" words etc. for that list. One program runs 24/7 in the background as a "cron" job. It uses Euphoria system commands like: system("mail < mail-commands ...", 2) to retrieve the incoming mail from Topica (or other system) into a file, and: system("sendmail Eu-forum-approve file-name ... ", 2) to send approved messages back to Topica. I don't use any fancy protocols, sockets or anything like that. The program scans incoming messages for certain "bad" and "good" words, etc. and makes a decision about whether to immediately approve the message, or send it to the administrator's (my) inbox for manual approval/rejection. The ListFilter user manual is on listfilter.com The commands I use are standard UNIX ones. You can get the documentation with (for example): man sendmail The second program is an admin program that interacts with the user (me) over the Web. It manipulates an EDS database (for each separate mailing list) containing all info for that list. It presents a GUI interface to the administrator using CGI, letting him add or delete words, etc. There are a lot of other parameters you can play with, but they aren't important if you only care about the "technology" used. I'm not prepared to release the source, but I have already released the source for the 1000-file archive search, and the 44000-message mailing list search. Those are both CGI-based Euphoria programs. After running them, click on "Powered by Euphoria" to get the source. CGI is a simple protocol. Inputs from the Web browser arrive via standard input, or an environment variable, and the CGI program running on the server generates an HTML file as output through standard output (file handle 1 in Euphoria). We have examples and tutorials for CGI on the RDS site. If you want to pay me big bucks to set up a CGI Euphoria program on your site, let me know. Regards, Rob Craig Rapid Deployment Software http://www.RapidEuphoria.com