**********************************************************************
FTSC FIDONET TECHNICAL STANDARDS COMMITTEE
**********************************************************************
Publication: FSP-1014
Revision: 1
Title: Moderating by Voting echomail distribution system
Author: Amir Shabashvili 2:5049/12@fidonet
Adel Chepckunov 2:5049/57@fidonet
Revision Date: 21 Sept 1999
Expire Date: 21 Sept 2001
----------------------------------------------------------------------
Contents:
1. Background
2. MV-system components
3. Vote transport protocol
4. Moderating by Voting process overview
5. MV-conference initializing procedure
6. Formats
7. List of MVS-compatible software
8. MV-System example
----------------------------------------------------------------------
Status of this document
-----------------------
This document is a Fidonet Standards Proposal (FSP).
This document specifies an optional Fidonet standard protocol for
the Fidonet community, and requests discussion and suggestions for
improvements.
This document is released to the public domain, and may be used,
copied or modified for any purpose whatever.
Abstract
--------
Moderating by Voting establish additional procedures of FidoNet
echomail distribution for giving opportunity to every member of
echo-conference to take part in moderating process by sending
moderating messages. Moderating messages must be processed by
special software, then this information must be stored and used
for auto-moderating of incoming echo-stream on the nodes where
MV-System installed.
1. Background
-------------
Objectives
This document defines terminology basis, data structures, rules
and procedures of Moderating by Voting for better cooperation of
MV-systems software developers and for compatible software
developing.
Motivation for a MVS
An idea of Moderating by Voting comes from authors real experience
in FidoNet echomail usage and moderating. We refer to FTS-0004,
FSC-0074 as to basic documents concerning echomail distribution.
There are three well-known schemes of echo-conference "driving" and,
correspondingly, three kinds of echoes exists in FidoNet:
- non-moderated;
- moderated in "Usenet" style (pre-moderated);
- moderated in "FidoNet" style;
MVS introduce to the new moderating scheme, and we hope this method
will be helpful, for example for thouse popular R50 echoes, where
traffic is growing day by day and tend to flow out of moderator's
hands.
Terminology
Because of much number of new terms used in this document and some
of this terms are very important for MV System realization, we
place next glossary in the beginning of document:
Moderating - echo-messages deletion process.
Moderating by Voting System (MV System, MVS)- software for FidoNet
echoes auto-moderating.
MV-conference, MV-echo, (Moderated by Voting Echo-Conference,MVE)
- moderated by voting echo-conference.
Moderated Message (MM)- message which must (may) be moderated.
Vote Message (VM) - message of special format which participant of
echo-conference sends to all MV-Systems to express his opinion
about message he read (twit or anti-twit, vote "for" or "against").
V-conference,V-echo,Twit-echo (Vote Transport Echo-Conference,VTE)-
echo-conference for Vote messages transportation.
Moderating by Voting indicator (MV-indicator,MVI) - part of message
header (AddressFrom, Subject or combination), used as moderating
criterion in Vote Message.
Twit-time - lifetime of moderating decision.
Coordinator,V-Coordinator (VC) - System Operator, responsible for
some MV-echo(s) configuring and managing
Configuring message (CM) - specially formatted message which VC
sends to all MV-systems for whole MV-bone (see below) parameters
configuration (for some MV-echo)
Moderating by Voting Criterion (MV-Criterion, MVC)- result of Vote
Messages processing, used as message filtering criterion in
moderating process.
Moderating by Voting Base,Twit-Base (MVB) - database which contains
MV-Criterions.
Moderating by Voting Bone (MV-bone) - set of FidoNet nodes using
MV-system for MV echoes distribution
2. MV-system components
-----------------------
Name Function
Vote transport Protocol for VMM dissipation from source
system to all MV-systems of current MV-Bone.
VMM Processor MV-Criterions from Vote Messages construction.
MV database Vote processing, storing criterions in
MV-Base.
MV Executor Makes decisions based on MV-Base info and
moderated MV-echo parameters; moderating.
MVFix Answers on downlinks request; produce reports
and info; statistics; configuring MV-system.
3. Vote transport protocol
--------------------------
Echomail transport (fts-0004, fsc-0074) is used as Vote transport
protocol. It is possible to use alternative transport types (for
example, netmail or file-transfer) for backup or testing purposes.
Special echo-conference must be used for vote transportation.
4. Moderating by Voting process overview
----------------------------------------
- echo-conference participant meets message which annoys him and
sends moderating message.
- All MV-Systems catch votes from vote-transport echo area.
- Votes are being processed on every system using the same
algorithm for same echo area.
- resulted criterions are placed in MV-Base.
- every echo-message coming to the system with MVS installed must
be compared with criterions stored and then moderated, if needed.
Remark: See more detailed description in Addendum I.
5. MV-conference initializing procedure
---------------------------------------
- Coordinator creates echo-conference by usual way on one or more
MV-Bone hubs (it is recommended to add .MV or _MV prefix to echo
tag, for example: RU.MV.ANEKDOT, for better echotags navigation).
- Coordinator places echo-conference rules in the conference,
which contains MV echo configuration parameters and point to
"START" time (HH/DD/MM/YY UTC).
After this time MV mechanism must be used. Before "START" time
conference exists as non-moderated; moderating messages in
Vote-transport echo for this conference are allowed. Coordinator
can change "START" time, if he wants to.
- 1st variant:
every potential participant of echo discussion must notify
coordinator of MV-echo about his presence by netmail.
- 2nd variant:
Coordinator collects info about planned population
of echo from his own sources.
- Coordinator sets MV-echo parameters depending on amount of
active participants of moderated echo.
- Coordinator puts specially formatted Configuring Message (CM)
in VT-echo.
- Based on this Configuring message all MV-systems update
configuration for this MV-echo area
- MV-mode usage of conference begins since "START" time coming.
6. Formats
----------
Vote message format
Header:
NameFrom - VM-message source system Sysop name
AddressFrom - VM-message source system address
NameTo - Name of moderated message sender
Subj - subject of moderated message
Body:
One line, consist of fields with space(s) as delimiter
NN set of used symbols destination
1 0..9,"/",":","." 4D address
2 ASCII moderated echo-conference EchoTag,
letter case is unimportant.
3 1 , 0 0 - twit (vote "against"),
1 - antitwit (vote "for").
Must be used one symbol only.
4 A, S MV-Indicators. A-AddressFrom,
S-Subject of moderated message.
Symbols may be used in
combination. Letter case is
unimportant.
All information below the first line will be ignored.
Example:
-------------------------------------------------------
From: Amirko Shaab 2:5049/12.12
To: Amir Shabashvili
Subj: Hen cooks egg!
-------------------------------------------------------
2:5049/12 RU.ANEKDOT.VM 0 S
MV-Criterion format
MV-Base record being used as moderating criterion must contain next
fields:
Name description
--------------------------------------------------------
EchoTag Moderated echo name (or its number in
configuration file)
M-indicators One or more MV-indicators.
--------------------------------------------------------
Remark: You may add your own fields in MV-Base structure; one
possible example in Addendum below.
Configuring message format
NameFrom - "Coordinator","VC"
AddressFrom - Vote Coordinator address
NameTo - "MVFix","MVS"
AddressTo - destination address (used in case of netmail
transportation)
Subject - password (optional)
Remark: message body must be defined by programmer; see example in
Addendum I.
7. List of MVS-compatible software
----------------------------------
- Relax! packet processor. Author Adel Chepckunov , 2:5049/57,
written under GNU license, see:
ftp://ftp.n5049.z2.fidonet.net/pub/mvs
8. MV-System example
--------------------
Configuration parameters
(may be set separately for every MV-conference)
Name Description
------------------------------------------------------------------
TimeCollect Votes collection time
TimeCollectMax Maximum vote collection time(if after
TimeCollectMax moderating process is not started,
criterion must be deleted)
TimeMin Minimum criterion action time
TimeMiddle Middle criterion action time
TimeMax Maximum criterion action time
VotesMinA Amount of votes "against" (twits) which is enough
to activate criterion with combination of
indicators during TimeMin action time.
VotesMidA Amount of twits which is enough to activate
criterion with combination of indicators during
TimeMiddle action time.
VotesMaxA Amount of twits which is enough to activate
criterion with combination of indicators during
TimeMax action time.
VotesMinB Amount of twits which is enough to activate
criterion with one of Address,Address+Name,Name,
Subject indicators during minimum interval
(TimeMin).
VotesMidB Amount of twits which is enough to activate
criterion with one of Address,Address+Name,Name,
Subject indicators during minimum interval
(TimeMiddle).
VotesMaxB Amount of twits which is enough to activate
criterion with one of Address,Address+Name,Name,
Subject indicators during minimum interval
(TimeMax).
PointSw On - node only mode, Off - accept votes from
points
------------------------------------------------------------------
Remark: Time measured in 24h.
Algorithm
- all installed MV-systems catch Vote Messages from VT-Echo and put
collected MV-Indicators in local MV-Bases.
- Set of collected and stored MV-Indicators forms Moderating
Criterions.
- Criterion must be launched in action after TimeCollect if number
of votes is equal or greater than VotesMinA (If after TimeCollect
criterion still is not working, it must be deleted).
- the time criterion which is still working as moderating rule must
be equal to TimeMin, TimeMiddle or TimeMax, depending on number
of votes.
After the end of criterion's lifetime, it must be deleted from
MV-Base.
- Vote-message collection continues after time criterion activated
and moderating decision can be changed.
Remark: Votes with more common indicators (Address, Subject)
take part in voting processes with more "soft" indicator
(Address+Subject), if exists.
Configuring message
Echo-mail or netmail transport must be used for Configuring
Messages transportation.
Message body consist from one to three lines.
First line contains the command. Command starts with '%' symbol.
Next two lines contain additional information for this command.
Only 'CONFIG' command is described in this document.
'%CONFIG' command
'CONFIG' command is used for configuring of those MV Systems, which
receipt configuring message(s).
2nd line contains moderated conference echotag.
3rd line consists of the numerical fields delimited by space (' '):
TimeCollect TimeCollectMax TimeMin TimeMiddle TimeMax
VotesMinA,...,VotesMaxB
All lines below 3rd line must be ignored.
Example (case of netmail-transport):
----------------------------------------------------
From: Coordinator 2:5049/12
To: VMS 2:5049/57
Subj: <PASSWORD>
----------------------------------------------------
%CONFIG
KAZAN.GENERAL.VM
4 7 30 60 90 10 15 20 15 30 50
MV-base structure
Field Name Description
-------------------------------------------------------------------
CreationTime The time criterion was created
EchoTag Echotag of moderated conference (or its number in
configuration file)
NVotesYes Number of votes "Against" (twits)
NVotesNo Number of votes "For" (anti-twits)
V-Addresses List of addresses votes are accepted from (use
this list for duplicated voices checking)
M-indicators one or more moderating indicators.
-------------------------------------------------------------------
A. Author contact data
----------------------
Amir Shabashvili
FidoNet: 2:5049/12
E-mail:
[email protected]
WWW:
http://ashabash.zarech.ru
Adel Chepckunov
FidoNet: 2:5049/57@fidonet
B. Acknowledgements
-------------------
The authors would like to thank Alex V. Ivanov for
fixing of our poor English.
C. History
------------
Rev.1, 19990921 First release.