Menu

Tree [d64150] master /
 History

HTTPS access


File Date Author Commit
 .gitignore 2024-03-29 Wilfred van Velzen Wilfred van Velzen [f53aa0] Initial commit
 COPYING 2024-03-29 Unknown Unknown [351dc7] Updated version number to 3.0
 FILE_ID.DIZ 2025-05-12 Unknown Unknown [d64150] Bug fixed for sending netmail
 README 2025-05-12 Unknown Unknown [d64150] Bug fixed for sending netmail
 fidostoredmsg.py 2025-05-12 Unknown Unknown [d64150] Bug fixed for sending netmail
 fidostoredmsg_attributes.py 2025-05-12 Unknown Unknown [d64150] Bug fixed for sending netmail
 mpost.cfg 2024-03-29 Wilfred van Velzen Wilfred van Velzen [f53aa0] Initial commit
 mpost.py 2025-05-12 Unknown Unknown [d64150] Bug fixed for sending netmail
 mpost_config.py 2025-05-12 Unknown Unknown [d64150] Bug fixed for sending netmail
 nodenumber.py 2025-05-12 Unknown Unknown [d64150] Bug fixed for sending netmail

Read Me

MPost/PY Version 3.1, May 2025             (C) 2025 Wilfred van Velzen
======================================================================


1. About MsgPost and the current status
---------------------------------------

Mpost is a program to post a text file as netmail and echomail message into
*.MSG style message area from command line. It is useful in
shell scripts or batch files for system maintanance purposes, like
posting a monthly echomail statistics, posting rules files, or similar
tasks.

Mpost, the original C version, is (C) by Codeland Australia and has been written
by Colin Wheat, originally for OS/2 only. The last release of MPost before
Tobias Ernst took over the source code, was MPost version 1.10.

In 1999, Tobias Ernst has done some modifications to this source code. Year 2000
bugs had to be fixed, added a way to add FTSC-0054 charset kludges to the
posted mails, and ported the software to Unix, NT and DPMI DOS.  In order to
make the public profit from these changes (especially the Y2K one), Tobias
released these modifications to the public, both the source code and binaries
for all relevant platforms.

The python code was written from scratch by Wilfred van Velzen in 2024. The main
goal was having a version that can automatically and correctly set the message
time and TZUTC kludge. As a bonus the Python version runs on many more
platforms, basically on any platform where Python 3 is available, without the
need for compiling any source.

If you are already using MPost and want to start using the Python version, copy
the provided .py files to the directory where you keep your commands, and
simply use the provided mpost.py file in your script or batch file, they should
work immediately with the old configuration file.


2. Using MPost
--------------

The following list shows all command line and configuration file options. For a
more detailed description, also refer to mpost.cfg, the sample configuration
file, which also contains some helpful remarks.


COMMAND LINE:

              COMMAND LINE ONLY
-T<name>      Text source file path & name
-K            Kill text file after processing
-C<name>      Configuration file path & name
-?            Program help screen
-V            Show version

              CONFIGURATION OVERRIDES
-M<name>      Message area path & name (prefix $ for Squish, ! for Jam)
-N<addr>      Netmail format - send to address
-O<addr>      [Zone:]Net/Node[.Point][@Domain]
-P[cfhdkprul] Message priority flags
-F<fname>     Message addressed to first name
-L<lname>     Message addressed to last name
-W<name>      Message addressed from name
-J<subj>      Message subject
-h<charset>   Specify charset kludge name to use, like "IBMPC" or "LATIN-1"


CONFIGURATION FILE:

Address:      [Zone:]Net/Node[.Point][@Domain]
Origin:       <Your system echomail identification>
Area:         <Message area path & name>
Netmail:      [Zone:]Net/Node[.Point][@Domain]
MsgType:      <Echomail | Conference | Local | Matrix>
To:           <Some Name>
From:         <Your Name>
Subj:         <Your Subject>
Attr:         <c|f|h|d|k|p|r|u|l>
NoSeenBy:
Charset:      <charset kludge name>


Meaning of priority/attr flags:

   p: Private
   c: Crash
   d: Direct
   f: File attach
   h: Hold
   k: Kill sent
   r: File Request
   u: File Update Request
   l: Local flag (inverse!)

The local flag is set by default. If you want to turn it off, use the 'l' flag.


EXIT CODES:

   0    -  Normal exit
   1 *  -  Syntax exit
   2 *  -  Out of memory
   3 *  -  Configuration or text file not found
   4    -  No system address set
   5 *  -  Message base open failed
   6 *  -  Names list file not found
   7 *  -  No message folder file name set.

   * = Currently not used


3. Mpost and the charset kludge
-------------------------------

The FTSC 0054 charset kludge is a means to use national special characters
(ASCII 128 to 254) in Fidonet mails. The charset kludge is a sign that tells
mail readers in which character set the mails hass been written, so that they
can recode the mail to the character set that the operating system / terminal
of the receiver is using.

Mpost does not include logic for charcter set kludges. All it can do is
insert a level 2 character set, but you have to tell it which one. The rule
of the thumb is:

If the text file that you are posting uses special characters as used by DOS
and OS/2, especially umlauts and IBM graphics characters (IBM graphics is
often used by statistics generators to produce nicer borders), use either the
configuration file statement

   Charset: IBMPC

or the "-hIBMPC" command line option. If you are using Windows or UNIX, it is
most likely that your umlauts comply to ISO 8859-1. In this case, use

   Charset: LATIN-1

or the "-hLATIN-1" command line option. (Windows calls this ANSI,
and uses it for the Times New Roman, Courier New etc. fonts, though not for
the terminal window; Unix calls this ISO 8859-1 keymap, though some Linux
boxes can also be configured to use CP850 or CP437 instead, which would be
the same as IBMPC).
   Russian users must use CP866 instead of +7_FIDO or other obsolete, example:

   Charset: CP866

or the "-hCP866" command line option.


4. MSGID considerations
-----------------------

MPost/PY uses the systems random generator for generating MSGID's. This has a
very very small chance to cause collisions, but is in my opinion better then
using the system time, which might collide if your script runs at the same time
as you write a message in your editor for instance.


5. mpost.py and Python versions
-------------------------------

MPost/PY is developed for Python version 3. The specific version used for
development is 3.4.5 on linux x86_64. It was also tested with 3.4.4 on
Windows XP SP3. Any newer version of Python 3 will probably work too.


6. License
----------

MPost/PY is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation; either version 3 of the License, or(at your option) any later
version.

MPost/PY is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with
this program.  If not, see <http://www.gnu.org/licenses/>.



7. Contact
----------

This version of MPost is available for download at sourceforge:

https://sourceforge.net/projects/mpost/

If you want to contact me, you can do so at the following addresses:

Fido:   Wilfred van Velzen @ 2:280/464
e-mail: fmail.gpl@gmail.com

[EOF]
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.