home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 2 BBS / 02-BBS.zip / wimm131p.zip / WIMM.DOC < prev    next >
Text File  |  1994-12-25  |  13KB  |  488 lines

  1.  
  2.  
  3.                                *
  4.  
  5.                           WIMM v1.31
  6.  
  7.                       Where Is My Mail ?!
  8.  
  9.                (c) 1992,93,94  Gerard van Essen
  10.  
  11.               A personal mail scanner for Squish
  12.  
  13.            Squish is a trademark of Scott J. Dudley
  14.  
  15.        WIMM uses the Squish MSGAPI made by Scott Dudley
  16.  
  17.                                *
  18.  
  19.                                *
  20.  
  21.                          -------------
  22.                          What is WIMM?
  23.                          -------------
  24.  
  25.  
  26. WIMM (short for "Where Is My Mail") is a personal mail scanner
  27. for Squish. It is designed to be used together with the Squish
  28. echomail processor made by Scott Dudley.
  29.  
  30. It will read your Squish configuration file (Squish.cfg) and
  31. scan all echomail areas listed (or all areas found in a
  32. 'echotoss.log' file), for mail addressed to you. When it finds
  33. a personal message it will move or copy the message to another
  34. area, or make a list of all messages found and post that list
  35. in a message.
  36.  
  37. WIMM can be useful in several ways. Maybe you are just as
  38. curious as I am, and want to know if there is personal mail as
  39. soon as possible, without having to read all messages.
  40. Or maybe there's so much mail on your system, that you can't
  41. ever read it all.. Or maybe you just want to keep your
  42. personal messages in a seperate area...
  43.  
  44.  
  45.                          -------------
  46.                          Main features
  47.                          -------------
  48.  
  49. *    Reads Squish.cfg.
  50. *    If applicable, reads Areas.bbs as well.
  51. *    Optionally reads echotoss.log file and scans only areas
  52.      listed in that file.
  53. *    Scans both *.MSG and Squish style message areas.
  54. *    Moves, copies or lists personal messages.
  55. *    Accepts more than one name to scan for.
  56. *    Optionally marks found messages as "received".
  57. *    Scans messages from lastread pointer, or all messages in
  58.      the area.
  59.  
  60.  
  61.                        ----------------
  62.                        Copyright stuff.
  63.                        ----------------
  64.  
  65. I'll keep this short: this program is free for all to use. 
  66.  
  67. You are NOT allowed to:
  68.  
  69. - sell this program for a profit.
  70. - modify it, or
  71. - distribute it in modified form.
  72. - etc., etc.
  73.  
  74. Hopefully you catch my drift..
  75.  
  76. Use this program at your own risk, the author can not be held
  77. responsible for any damage WIMM might cause.
  78.  
  79.  
  80.                       ------------------
  81.                       How do you run it?
  82.                       ------------------
  83.  
  84.  
  85. That's easy! Just edit WIMM.CFG and type WIMM. 
  86.  
  87.  
  88.                       ------------------
  89.                       WIMM.CFG reference
  90.                       ------------------
  91.  
  92. WIMM.CFG is the default name of the configuration file. The
  93. configuration file may contain comments. On a comment line the
  94. first non-space character should be a semi-column ';'.
  95. Example:
  96.  
  97. ; This is a comment line..
  98.  
  99. If a line is not a comment, it should contain a keyword.
  100. Keywords are not case sensitive, so "Name" is interpreted the
  101. same as "name" or "NaME".
  102. Every keyword is followed by a 'value':
  103.  
  104. <keyword>     <value>
  105.  
  106. like:
  107.  
  108. Name          "Gerard van.Essen"
  109. Mode          List
  110. etc.
  111.  
  112.  
  113.             --------------------------------------
  114.             Keywords in WIMM's configuration file.
  115.             --------------------------------------
  116.  
  117.  
  118. SquishCfg
  119. ---------
  120.  
  121. This keyword tells WIMM where to look for the Squish
  122. configuration file. Specify both path and name here.
  123.  
  124. Example:
  125.  
  126. SquishCfg      C:\Squish\Squish.cfg 
  127.  
  128.  
  129. Name
  130. ----
  131.  
  132. This tells WIMM what names to look for in the TO: field of the
  133. messages. You can supply as many names as you like. Please put
  134. double quotes around the names. The name search is not case-
  135. sensitive, so "Joe SysOp" will have the same effect as "joe
  136. sysop".
  137.  
  138. Example:
  139.  
  140. Name           "Gerard van Essen" 
  141. Name           "gerard van.essen" 
  142. Name           "Art"
  143.  
  144.  
  145. WimmArea
  146. ---------
  147.  
  148. This is the location of the area where WIMM should list, move
  149. or copy the personal messages. This must be a LOCAL area, not
  150. netmail or echomail!
  151.  
  152. Example:
  153.  
  154. WimmArea     D:\Local\Personal
  155.  
  156.  
  157. WimmType
  158. ---------
  159.  
  160. This is the type of the WimmArea. This can be either "Squish"
  161. or "*.MSG".
  162.  
  163. Example:
  164.  
  165. WimmType    Squish
  166.  
  167.  
  168. Mode
  169. ----
  170.  
  171. This tells WIMM what to do with the personal messages. This
  172. can be:  
  173.  
  174. - LIST:    WIMM will post a message with a list of all
  175.            personal messages. It will also give you the
  176.            current message number. Note, hoewever, that due
  177.            to Squish' "dynamic renumbering" feature, this
  178.            number is not necessarily correct (anymore).
  179.  
  180. - COPY:    WIMM will copy all personal messages to WimmArea.
  181.  
  182. - MOVE:    WIMM will move all personal messages to WimmArea.
  183.  
  184. Example:
  185.  
  186. Mode List 
  187.  
  188.  
  189. MarkReceived
  190. ------------
  191.  
  192. This tells WIMM if the personal messages that are found should
  193. be marked "received". If WIMM finds a personal message that
  194. has the "received" flag set, it will skip that message. So, if
  195. you set this to "Yes", personal messages will only be moved,
  196. copied or listed once. (For 'move' this is quite redundant ;-)
  197. This can be either Yes or No.
  198.  
  199. Example:
  200.  
  201. MarkReceived Yes
  202.  
  203.  
  204. ScanFrom
  205. --------
  206.  
  207. This keyword changes which messages are scanned by WIMM. If
  208. this is set to "LastRead", WIMM will scan the messages AFTER
  209. the lastread pointer in each area. 
  210. The lastread pointer will be taken from a file called
  211. "lastread" (for *.msg areas) or from the appropriate *.SQL
  212. file (Squish areas, the first lastread pointer from that file
  213. is used).
  214.  
  215. Note for GoldED users: if "Scanfrom Lastread" doesn't seem to
  216. work, check out the GoldED documentation for the SQUISHUSERNO
  217. keyword. WIMM's 'Lastread' feature will work with SQUISHUSERNO
  218. set to 0.
  219. GoldED sometimes seems to do complicated things with a
  220. USER.BBS file and lastread-file offsets, even in a single user
  221. environment without a BBS (!).
  222.  
  223. If "Lastread" is set to "All", WIMM will ignore the lastread
  224. pointer and always scan all messages. (If you use this, it's
  225. probably wise to set MarkReceived to "Yes").
  226. So, this can be either "LastRead" or "All".
  227.  
  228. Example:
  229.  
  230. ScanFrom LastRead
  231.  
  232.  
  233. EchoArea
  234. --------
  235.  
  236. This declares an extra area to be scanned. The format is the
  237. same as the EchoArea keyword in Squish.CFG.
  238.  
  239. Default behaviour:
  240.  
  241. *    By default, WIMM will not scan the Netmail area. 
  242. *    The 'Dupes' area is always skipped (unless you
  243.      specifically 'Force' it). 
  244. *    The Bad_Msgs is scanned, it is treated like a normal
  245.      echomail area.
  246.  
  247. So, if you would like WIMM to scan the netmail area (or any
  248. other area not listed in your Squish configuration file) as
  249. well, you should declare it manually in WIMM.CFG.
  250.  
  251. Example:
  252.  
  253. EchoArea  Netmail   C:\Bink\Netmail -$
  254.  
  255.  
  256. Attributes
  257. ----------
  258.  
  259. With 'Attributes' you can specify the attributes that should
  260. be placed on a moved, copied or 'list' message in the
  261. WimmArea. The original message will not be changed, except for
  262. possibly adding the 'received' status (if 'Markreceived' is
  263. set to 'Yes').
  264. For the message in the WIMMarea, WIMM will clear the
  265. attributes, and add the ones you specify with the 'Attributes'
  266. keyword.
  267.  
  268. Options:
  269.  
  270. P - Private
  271. S - Sent
  272. C - Scanned
  273. L - Local
  274.  
  275. Example:
  276.  
  277. Attributes      SCP
  278.  
  279.  
  280. Log
  281. ---
  282.  
  283. The Log statement will let WIMM log the scanned areas,
  284. personal messages and errors in logfile. If no log is
  285. specified, there will be no logfile. Please specify full path
  286. and filename.
  287.  
  288. Example:
  289.  
  290. Log C:\Squish\Wimm.log
  291.  
  292.  
  293. Exclude
  294. -------
  295.  
  296. With EXCLUDE you can prevent areas from being scanned. You can
  297. specify 1 area for every exclude line. Use the areatag to
  298. specify the echo.
  299.  
  300. Example: 
  301.  
  302. Exclude MUFFIN
  303.  
  304. This will prevent MUFFIN from being scanned.
  305.  
  306.  
  307. There is also very limited wildcard support. You can use '*'
  308. as a wildcard. It can _only_ be the first or the last
  309. character!
  310.  
  311. Examples: 
  312.  
  313. Exclude *028
  314.  
  315. This will prevent all areas with a tag ending with 028 (like
  316. points.028, basic.028 etc) from being scanned.
  317.  
  318. Exclude BASI*
  319.  
  320. This will exclude areas starting with BASI (like BASIC,
  321. BASIC.028..). 
  322.  
  323. You can have as many 'Exclude' statements as you like.
  324.  
  325.  
  326. Force 
  327. -----
  328.  
  329. With FORCE you can have WIMM scan a certain area on every run.
  330. This is useful when using the -F command line switch, for
  331. example if you want the netmail area to be scanned (the
  332. netmail area will _never_ appear in an echotoss.log file!).
  333. You can have as many 'Force' statements as you like.
  334.  
  335. Force has the same wildcard support as Exclude.
  336.  
  337. Example:
  338.  
  339. Force Netmail
  340.  
  341.  
  342. Notes
  343. -----
  344.  
  345. 'NOTES No' will prevent WIMM from putting a 
  346.  
  347. '--> Note: Copied by...'  
  348.  
  349. message at the top of every moved or copied message.
  350. This is useful if you use WIMM to move netmail for Areafix and
  351. Raid etc. from a large, fast Squish netmail area to a nearly
  352. empty  *.MSG area.. (so areafix and raid run much faster).
  353. This can be either 'Yes' or 'No'.
  354.  
  355.  
  356. Example:
  357.  
  358. Notes Yes
  359.  
  360.  
  361. AddAreaKludge
  362. -------------
  363.  
  364. This keyword controls whether WIMM will add an 'AREA:' kludge
  365. to moved or copied messages. TimEd and GoldED can use this
  366. kludge to easily find the correct area to put a reply in
  367. (using the 'reply in another area' function).
  368.  
  369. This can be either 'Yes' or 'No'.
  370.  
  371. Example:
  372.  
  373. AddAreaKludge Yes
  374.  
  375.  
  376.  
  377.  
  378.                     ----------------------
  379.                     Command line switches.
  380.                     ----------------------
  381.  
  382. There are two command line switches that can be used for WIMM:
  383.  
  384. -C : This gives path and name of an alternative configuration
  385.      file. The default configuration file is WIMM.CFG in the
  386.      current directory. 
  387.  
  388. Example:
  389.  
  390. WIMM -Cc:\dl\mycfg.cfg
  391.  
  392. This uses c:\dl\mycfg.cfg as configuration file.
  393.  
  394.  
  395. -F : This gives the path and name of a "echotoss.log" file.
  396.      The areatags from this file will be read, and only the
  397.      corresponding areas will be scanned for personal
  398.      messages.
  399.  
  400. Example:
  401.  
  402. WIMM -Fc:\squish\echotoss.log
  403.  
  404. In this case the file c:\squish\echotoss.log will be used.
  405.  
  406.  
  407. Of course, you can also use both switches together, like:
  408.  
  409. WIMM -Cmycfg.cfg -Fc:\squish\echotoss.log
  410.  
  411.  
  412.  
  413.                     -----------------------
  414.                     Some 'technical' stuff.
  415.                     -----------------------
  416.  
  417. WIMM was written using Borland C++ v3.1 (DOS version),
  418. although the '++' extensions were not used. The OS/2 version
  419. was compiled using Watcom C/C++ v10.0a.
  420.  
  421. The program relies heavily on the Squish MSGAPI by Scott
  422. Dudley.
  423. The MSGAPI is very easy to use, and as a result even a novice
  424. programmer (I'm still not very experienced..) can make useful
  425. programs (I hope ;-).
  426.  
  427. In Squish areas WIMM tries to read the indexes directly (so it
  428. does NOT use the MsgApi there..!). WIMM gains a lot of speed
  429. by doing this (instead of physically reading all message
  430. headers or opening the area the 'standard' way using the
  431. MSGAPI).
  432. Usually this doesn't make any difference (except for the
  433. speed), but there is one exception: in areas that are in fact
  434. empty, but _did_ contain messages in the past, it is possible
  435. that WIMM is a bit confused and says there are in fact
  436. messages scanned in that area. 
  437. This hardly ever happens, and will not cause WIMM to
  438. malfunction (i.e.: miss any personal messages). If it bothers
  439. you, use WIMM 1.00, and miss out on the extra speed :-)
  440. (Or just delete the .SQI file for that area. If the area
  441. doesn't contain any messages, that won't be a problem).
  442.  
  443. Apart from that you might miss personal messages if your
  444. indexes are 'corrupt'.
  445.  
  446.  
  447.                             -------
  448.                             Thanks!
  449.                             -------
  450.  
  451. Thanks to...
  452.  
  453. *    ROn van der Nagel (2:500/133) and some of his points for
  454.      betatesting.
  455.  
  456. *    Lawrence Pit for betatesting.
  457.  
  458. *    Don Dawson (my sales manager for the USA and Canada :-),
  459.      somehow he always manages to find loads of bugs..
  460.  
  461. *    Scott Dudley for Squish, Maximus, Msgapi..
  462.  
  463. *    Everyone who sent me netmail about WIMM. A nice 'thank
  464.      you' netmail from 'far away' can really make my day!
  465.      It's only because of some enthusiastic netmails that I
  466.      decided to work on a new version of WIMM (yep, Don
  467.      Dawson again, and also quite a few others!)
  468.  
  469.  
  470.             --------------------------------------
  471.             Feedback, bugs, complaints, donations.
  472.             --------------------------------------
  473.  
  474. The author can be reached at his BBS:
  475.  
  476. Name      :  Contrast BBS
  477. Location  :  The Hague, The Netherlands.
  478. Tel       :  31-70-3234903
  479. FidoNet   :  2:281/527 (V34/V32T/VFC/H16)
  480. Internet  :  art@cnh.wlink.nl
  481.  
  482. Or via snailmail:
  483.  
  484. Gerard van Essen
  485. Leharstraat 67
  486. 2551 LB  Den Haag
  487. The Netherlands.
  488.