1
2
3
4
5                                    FFMA
6                          FreeFidoMessageAssistant
7                                   0.08.xx
8
9
10
11
12
13
14
15
16
17"Translation" of this "manual" by Ingo Korb.
18------------------------------------------------------------------
19General
20------------------------------------------------------------------
21
22This text is just a short help.
23A real documentation might be written later (no, really!).
24
25This is an BETA version of FFMA. Although I have tested FFMA some errors
26might remain.
27
28Please send a bug report if you find one. See also the file BUG-REPORTING.
29
30When FFMA is started for the first time the parameter SAVEUID might be
31neccecary so stop FFMA from filtering the old messages. The parameter is also
32neccecary if you used SqFix.
33
34FFMA only works with Squish and .MSG message bases and is currently for
35netmail only (save for ECHOCOPY/ECHOMOVE).
36
37FFMA was written in Pascal.
38To compile it you need FPC-Pascal: http://www.freepascal.org
39
40FFMA was tested only on Linux to this date.
41
42After changing the config file you should run ffma CHECK to test it.
43In this mode FFMA does not execute any actions.
44
45Bugs, patches, comments, critic to
46Internet: sb100@uni-duisburg.de
47Fido: Sven Bursch@2:2448/820
48
49The current version can be found at
50http://www.uni-duisburg.de/~sa519bu/ffma
51or
52http://husky.physcip.uni-stuttgart.de
53
54------------------------------------------------------------------
55Action-Statements
56------------------------------------------------------------------
57
58about the Syntax
59================
60MB:(..)	Specifies a message base
61			MB: Linux.ger
62	The other information will be read using fidoconfig.
63
64ADDR:(..)	Specifies an address
65			ADDR:75:7158/854.69
66
67F:(..)	Specifies a file
68			Linux: F:/var/spool/fido/bouncetext
69
70SEENBY:(..)	Specifies SEEN-BY
71		SEENBY:2448/820
72
73DO:(..)	Specifies a "MASK" that is run on the message that
74	was just created.
75
76D:(..)   Specifies a directory.
77
78Anything in square brackets ([]) is optional.
79
80echocopy MB:(..) ADDR:(..) SEENBY:(..) [DO:(..)]
81------------------------------------------------
82Copies a net mail into an echo area.
83- all kludges are deleted
84- the local flag is set, all others are deleted
85- ADDR is set as the From address
86- Tearline (---) gets replaced by -+- if found
87- Origin ( * Origin:) gets replaced by + Origin: if found
88- new tearline and origin are appended
89- the mask specified by DO:(..) will be run on the new
90  message (Warning: Echomail!)
91
92echomove MB:(..) ADDR:(..) SEENBY:(..) [DO:(..)]
93------------------------------------------------
94Same as echocopy, but deletes the original message.
95
96bounce ADDR:(..) F:(..) [FULLMSG] [MB:(..)] [DO:(..)]
97-----------------------------------------------------
98Send a netmail back to the author.
99- The message starts with the text from the file specified by
100  F:(..). If FULLMSG is used the original message is appended
101  to this text.
102  In the file you can use these tokens:
103    %FR  Name of the sender
104    %OR  Address of the sender
105    %TO  Name of the recipient
106    %DE  Address of the recipient
107    %SU  Subject
108    %TI  Time in hh:mm:ss format
109    %DA  Date in dd:mm:yyyy format
110- REPLYTO/REPLYADDR-kludges are not supported yet
111- the from-field is set to FFMA
112- the local-flag is set, all other flags are deleted
113- all kludges are deleted
114- If MB:(..) is specified the bounce-message is put into a
115  different netmail-area.
116- The mask specified by DO:(..) is run on the new message.
117- The original message will not be deleted. Use action del
118  if you need to.
119
120copy MB:(..) [DO:(..)]
121----------------------
122Copies a netmail into a different netmail-area
123- The message will not be changed in any way.
124- The mask specified by DO:(..) is run on the new message.
125
126move MB:(..) [DO:(..)]
127----------------------
128Moves a netmail into a different netmail-area.
129- The message will not be changed in any way.
130
131ExportHeader F:(..) | D:(..)
132----------------------------
133Writes the header of a netmail into the file specified by F:(..) or creates
134unique File in the directory specified by D:(..).
135
136ExportMSG F:(..)
137----------------
138Writes the header any body of a netmail into the file specified by F:(..) or
139creates unique File in the directory specified by D:(..).
140
141Del
142---
143Deletes a netmail.
144- All actions following a del-action will be ignored.
145
146SEMAPHORE F:(..)
147----------------
148Creates a semaphore.
149- If the file specified by F:(..) does not exist it will be
150  created.
151- If the file specified by F:(..) already exists it's timestamp
152  will be set to the current time.
153
154REWRITE FROM=(..) | TO=(..) | SUBJ=(..) | DEST=(..) | ORIG=(..)
155---------------------------------------------------------------
156Changes the sender, the recipient or the subject.
157
158
159------------------------------------------------------------------
160Search
161------------------------------------------------------------------
162
163search=none
164	This condition will never be true. Only useful for DO-Statements.
165
166search=any
167	This condition is always true.
168
169| logical OR
170& logical AND
171
172Example:
173	search from="someone" | from="someoneelse"
174	search (from="someone & to="myname") | (from="someoneelse")
175[Translators note: Error: String constant exceeds line. =) ]
176
177search from="~peter"	Searches for messages where peter appears
178					somewhere in the name.
179search from="!~peter"	Searches for messages where peter does not
180					appear in the name.
181					Is equal to: search from%"~peter"
182search from="peter"		Searches for messages where the name is
183					peter.
184
185= equals
186< less than
187> greater than
188% not equal
189
190A less than or greater than match is not possible in all cases.
191Example: search orig<"2:0/0.0" does not work.
192
193from		sender name
194to		    recipient name
195subj		subject
196body		message-body
197kludge      kludges
198
199Orig		Sender address formatted as zone:net/node.point
200Dest		Recipient address formatted as zone:net/node.point
201
202Ozone, Onet, Onode, Opoint
203		Zone, net, node or point number of the sender
204Dzone, Dnet, Dnode, Dpoint
205		Zone, net, node or point number of the recipient
206
207Len		Length of the message
208Flag		Checks if a certain flag is set.
209
210There Is No Case-Sensitivity.
211
212------------------------------------------------------------------
213Flags
214------------------------------------------------------------------
215PRIVATE
216CRASH
217READ    Message has been read by the addressee
218SENT
219FILE    FileAttach
220FWD     Message is in-transit
221ORPHAN	The message destination address could not be found
222	    in the nodelist
223KILL	kill when sent
224LOCAL
225HOLD
226FRQ	filerequest
227URQ	update filerequest
228
229------------------------------------------------------------------
230Known Bugs / Features
231------------------------------------------------------------------
232none
233