Select Git revision
bullet1.com
bullet1.com 33.08 KiB
$set nover
$copy sys$input AAAREADME.TXT
$deck
The following are instructions for creating and installing the BULLETIN
utility. None of the command procedures included here are sophisticated, so it
is likely that several modifications will have to be made by the installer.
The installer should enable all privileges before installation.
One of the main uses of BULLETIN, besides storage of messages that are manually
entered by users, is storage of messages from network mailing lists. This is
done by using the BBOARD feature, which is enabled using the SET BBOARD command
inside BULLETIN. The alternative method is for mail messages to be written
directly by a mailing program by calling internal BULLETIN routines. Such a
a program has been written for the popular mail utility PMDF. If you wish to
do so for another utility, read the text file WRITEMSG.TXT. I would be glad to
include any such programs with my distribution if you think such a program
would be of use to other users.
1) CREATE.COM
This will compile and link the BULLETIN sources. Also, there are several
INCLUDE files for the fortran sources (.INC files). BULLETIN will create it's
data files in the directory pointed to by the logical name BULL_DIR. If you
elect not to use this definition, BULLFILES.INC should be modified.
Note that after this procedure compiles the sources, it puts the objects
into an object library, and then deletes all the OBJ files in the directory.
NOTE 1: If you elect to have folders with the BBOARD feature that receives
messages from outside networks, you may have to modify the subroutine
which executes the RESPOND command. That command sends messages to either
the originator of the message or the mailing list associated with the
folder. These routines assume that one can simply use the VMS MAIL
utility to do so.
NOTE 2: The maximum number of folders for this distribution is 96 folders.
If you wish to increase this, modify BULLUSER.INC and recompile the sources.
When the new executable is run, it will create a new BULLUSER.DAT data file
and rename the old one to BULLUSER.OLD. You cannot reduce the number of
folders.
BULLETIN will work for both V4 & V5. However, you will have to reassemble
ALLMACS.MAR if you are upgrading from V5, i.e.
$ MAC ALLMACS
$ LIB BULL ALLMACS
$ DELETE ALLMACS.OBJ;
$ @BULLETIN.LNK
$ COPY BULLETIN.EXE BULL_DIR:
$ RUN SYS$SYSTEM:INSTALL
BULL_DIR:BULLETIN/REPLACE
2) INSTALL.COM
The following procedure copies the executable image to SYS$SYSTEM and
installs it with certain privileges. It also installs the necessary
help files in SYS$HELP. (BULLETIN help file is installed into the
system help library HELPLIB.HLB. If you don't wish this done, delete
or modify the appropriate line in the procedure. Also, the help
library for the BULLETIN program, BULL.HLB, can be moved to a different
directory other than SYS$HELP. If this is done, the system logical name
BULL_HELP should be defined to be the directory where the library is
to be found.)
3) LOGIN.COM
This contains the commands that should be executed at login time
by SYS$MANAGER:SYLOGIN.COM. It defines the BULLETIN commands.
It also executes the command BULLETIN/LOGIN in order to notify
the user of new messages. NOTE: If you wish the utility to be a
different name than BULLETIN, you should modify this procedure.
The prompt which the utility uses is named after image executable.
If you want messages displayed upon logging in starting from
oldest to newest (rather than newest to oldest), add /REVERSE to
the BULLETIN/LOGIN command. Note that users with the DISMAIL
flag setting in the authorization file will not be notified of
new messages. See help on the SET LOGIN command within the BULLETIN
utility for more information on this. Also, please note that when
a brand new user to the system logins, to avoid overwhelming the new
user with lots of messages, only PERMANENT SYSTEM messages are displayed.
If you want SYSTEM messages, i.e. messages which are displayed in full
when logging in, to be continually displayed for a period of time rather
than just once, you should add the /SYSTEM= qualifier. This is documented
in BULLETIN.HLP, although there it is referred to only with respect to
a user wanting to review system messages. It can be added with /LOGIN.
4) BULLSTART.COM
This procedure contains the commands that should be executed after
a system startup. It should be executed by SYS$MANAGER:SYSTARTUP.COM.
It installs the BULLETIN utility with correct privileges. It also
includes the command BULLETIN/STARTUP. This starts up a detached process
with the name BULLCP. It periodically check for expire messages, cleanup
empty space in files, and converts BBOARD mail to messages. It also allows
other DECNET nodes to share it's folders. If you don't want this feature
and don't plan on having multiple folders or make use of BBOARD, you could
eliminate this command if you like. However, it is highly recommended that
you create this process to avoid extra overhead when users login. NOTE:
BULLCP normally is created so it is owned by the DECNET account. If that
account does not exist, BULLCP will be owned by the account that issues
the BULLETIN/START command. In that case, access via other DECNET nodes
will not be available.
If you are installing BULLETIN on a cluster and plan to have the bulletin
files be shared between all of the cluster nodes, you only need to have
this process running on one node. On all other nodes, the system logical
name BULL_BULLCP should be defined (to anything you want) so as to notify
BULLETIN that BULLCP is running. (On the local node where BULLCP is running,
this logical name is automatically defined.)
The use of the MARK command to mark messages require that a file be
created for each user which saves the marked info. That file file is
stored in the directory pointed to by the logical name BULL_MARK. You can
either let users who want to use this command define it themselves, or
you can define it for them, i.e. DEFINE/SYSTEM BULL_MARK SYS$LOGIN.
5) INSTRUCT.COM
This procedure adds 2 permanent messages which give a very brief
description about the BULLETIN utility, and how to turn off optional
prompting of non-system messages (via SET NOREADNEW).
6) BOARD_SPECIAL.COM
This command procedure describes and illustrates how to use the
SET BBOARD/SPECIAL feature. This feature allows the use of BBOARD
where the input does not come from VMS MAIL. For example, this could
be used in the case where mail from a non-DEC network is not stored
in the VMS MAIL. Another example is BOARD_DIGEST.COM. This file
takes mail messages from "digest" type mailing lists and splits them
into separate BULLETIN messages for easier reading.
To use this feature, place the special command procedure into the
bulletin file directory using the name BOARD_SPECIAL.COM. If you want
to have several different special procedure, you should name the command
procedure after the username specified by the SET BBOARD command.
7) INSTALL_REMOTE.COM
This procedure, in conjunction with REMOTE.COM and DCLREMOTE.COM allows
a user to install new versions of BULLETIN on several DECNET nodes from
a single node, rather than having to login to each node. This is
especially useful when a new version modifies the format of one of the
data file. Older versions of BULLETIN will not run with newer formats
and will either issue error statements when run, or may cause major
problems by attempting to change the files back to the old format.
(NOTE: Don't attempt to use this if different nodes are running
different versions of VMS, i.e. V4 and V5, as they require different
linked executables.)
8) MASTER.COM
If you are using PMDF, and want to use the BBOARD option, a set of
routines are included which will allow PMDF to write message directly
into folders, which is a much more effecient way of doing it than
the normal BBOARD method of using VMS MAIL. Read PMDF.TXT for how
to do this.
9) BULLETIN.COM
If one wants BULLETIN to be able to send messages to other DECNET
node's GENERAL folder, but wants to avoid running the process created
by BULLETIN/STARTUP on this node, another method exists. This is the
"older" (and slower) method. BULLETIN.COM must be put in each node's
DECNET default user's directory (usually [DECNET]). Once this is done,
the /NODE qualifier for the ADD & DELETE commands can be used.
NOTE: Privileged functions such as /SYSTEM will work on other nodes
if you have an account on the other node with appropriate privileges.
You will be prompted for the password for the account on the remote node.
$eod
$copy sys$input BULLDIR.INC
$deck
PARAMETER DIR_RECORD_LENGTH = ((97+3)/4)*4
COMMON /BULL_DIR/ MSG_BTIM,MSG_NUM,DESCRIP,FROM,LENGTH,EX_BTIM
& ,SYSTEM,BLOCK,HEADER_BTIM,HEADER_NUM,NEWEST_EXBTIM,NEWEST_MSGBTIM
& ,NBULL,NBLOCK,SHUTDOWN,SHUTDOWN_BTIM,NEMPTY
& ,DATE,TIME,EXDATE,EXTIME,NEWEST_EXDATE,NEWEST_EXTIME
& ,NEWEST_DATE,NEWEST_TIME,SHUTDOWN_DATE,SHUTDOWN_TIME
CHARACTER*53 DESCRIP
CHARACTER*12 FROM
LOGICAL SYSTEM
CHARACTER*11 DATE,EXDATE,NEWEST_EXDATE,NEWEST_DATE,SHUTDOWN_DATE
CHARACTER*11 TIME,EXTIME,NEWEST_EXTIME,NEWEST_TIME,SHUTDOWN_TIME
INTEGER MSG_BTIM(2),EX_BTIM(2),HEADER_BTIM(2)
INTEGER NEWEST_EXBTIM(2),NEWEST_MSGBTIM(2),SHUTDOWN_BTIM(2)
CHARACTER*(DIR_RECORD_LENGTH) BULLDIR_ENTRY
EQUIVALENCE (MSG_BTIM,BULLDIR_ENTRY)
CHARACTER*52 BULLDIR_HEADER
EQUIVALENCE (HEADER_BTIM,BULLDIR_HEADER)
DATA HEADER_BTIM/0,0/,HEADER_NUM/0/
CHARACTER MSG_KEY*8
EQUIVALENCE (MSG_BTIM,MSG_KEY)
PARAMETER LINE_LENGTH=255
COMMON /INPUT_BUFFER/ INPUT
CHARACTER INPUT*(LINE_LENGTH)
$eod
$copy sys$input BULLETIN.HLP
$deck
1 BULLETIN
Invokes the PFC BULLETIN Utility. This utility is used for reading,
adding and deleting message. Users are notified at login time that new
messages have been added and the topics of those messages are
displayed. Reading of those messages is optional. (Use the command SET
READNEW while in BULLETIN for setting automatic reading.) Privileged
users can add system bulletins that are displayed in full at login
time. These messages are also saved, and can be read by BULLETIN.
Messages are automatically deleted after a specified expiration date,
or they can manually be deleted by either the submitter of the message
or a privileged user.
Format:
BULLETIN
BULLETIN has an interactive help available while using the utility.
Type HELP after invoking the BULLETIN command.
2 Description
The BULLETIN utility is a utility to display messages to users when
logging in. Users are notified of messages only once. They're not
forced into reading them every time they log in. Submitting and
reading messages is easy to do via a utility similar to the VMS MAIL
utility. Privileged users can create messages which are displayed in
full. (known as SYSTEM messages). Non-privileged users may be able to
create non-SYSTEM messages (unless your system manager has disabled the
feature), but only topics are displayed at login.
Folders can be created so that messages pertaining to a single topic
can be placed together. Folders can be made private so that reading
and writing is limited to only users or groups who are granted access.
Alternatively, folders can be made semi-private in that everyone is
allowed to read them but write access is limited.
When new non-system messages are displayed, an optional feature which a
user may enable will cause BULLETIN to ask whether the user wishes to
read the new bulletins. The user can then read the messages (with the
ability to write any of the messages to a file). A user can enable the
notification and prompting of new messages feature on a folder per
folder basis. However, the exception is messages submitted to the
default GENERAL folder. Users are always notified at login of new
bulletins in this folder, but can disable the prompting. This is to
give non-privileged users some ability to force a notification of an
important message.
Messages have expiration dates and times, and are deleted automatically.
Expiration dates and times can be specified in absolute or delta
notation. Privileged users can specify "SHUTDOWN" messages, i.e.
messages that get deleted after a system shutdown has occurred.
"PERMANENT" messages can also be created which never expire.
Privileged users can broadcast their message (to either all users or
all terminals).
A user can select, on a folder per folder basis, to have a message
broadcast to their terminal immediately notifying them when a new
message has been added.
An optional "Bulletin Board" feature allows messages to be created by
users of other systems connected via networks. A username can be
assigned to a folder, and any mail sent to that user is converted to
messages and stored in that folder. This feature originally was
designed to duplicate the message board feature that exists on some
Arpanet sites. However, with the addition of folders, another possible
use is to assign an Arpanet mailing list to a folder. For example, one
could have an INFOVAX folder associated with an INFOVAX username, and
have INFO-VAX mail sent to INFOVAX. Users could then read the mailing
list in that folder, rather than having INFO-VAX sent to each user.
Optionally, the input for the bulletin board can be directed to be taken
from any source other than VMS MAIL. This might be useful if incoming
mail is stored in a different place other than VMS MAIL.
Messages can be either sent to a file, to a print queue, or mailed to
another user.
2 /EDIT
Specifies that all ADD or REPLACE commands within BULLETIN will select
the editor for inputting text.
2 /KEYPAD
Specifies that keypad mode is to be set on, such that the keypad keys
correspond to BULLETIN commands.
2 /PAGE
/[NO]PAGE
Specifies whether BULLETIN will stop outputting when it displays a full
screen or not. /PAGE is the default. If /NOPAGE is specified, any
output will continue until it finishes. This is useful if you have a
terminal which can store several screenfuls of display in it's memory.
2 /STARTUP
Starts up a detached process which will periodically check for expired
messages, cleanup empty space in files, and convert BBOARD mail to
messages. This is recommended to avoid delays when invoking BULLETIN.
It will create a process with the name BULLCP. For clusters, this
need be done only on one node. On all other nodes, the system logical
name BULL_BULLCP should be defined (to anything) in order that BULLETIN
is aware that it is running on another node. (On the local node where
BULLCP is running, this logical name is automatically defined.)
2 /STOP
Stops the BULLCP process without restarting a new one. (See /STARTUP
for information on the BULLCP process.)
2 /SYSTEM
/SYSTEM=[days]
Displays system messages that have been recently added. The default is
to show the messages that were added during the last 7 days. This can
be modified by specifying the number of days as the parameter.
This command is useful for easily redisplaying system messages that
might have been missed upon logging in (or were broadcasted but were
erased from the screen.)
$eod
$copy sys$input BULLETIN.LNK
$deck
$ LINK/NOTRACE BULL/LIB/INC=BULLETIN$MAIN,SYS$SYSTEM:SYS.STB/SEL/NOUSERLIB-
/EXE=BULLETIN,SYS$INPUT/OPT
ID="V1.75"
$eod
$copy sys$input BULLFILES.INC
$deck
C
C FOLDER_DIRECTORY IS THE DIRECTORY THAT FILES FOR FOLDERS THAT
C ARE CREATED ARE KEPT IN. IF YOU WISH TO PREVENT FOLDER CREATION,
C YOU SHOULD MODIFY BULLCOM.CLD TO MAKE THE CREATE COMMAND A PRIVILEGED
C COMMAND (OR SIMPLY REMOVE THE LINES WHICH DEFINE THE CREATE COMMAND).
C
C BBOARD_DIRECTORY IS THE SCRATCH AREA USED BY BBOARD WHEN EXTRACTING
C MAIL. IF IT IS UNDEFINED, BBOARD WILL NOT BE ABLE TO BE USED.
C NOTE THAT EITHER THE BBOARD ACCOUNTS MUST HAVE ACCESS TO THIS DIRECTORY,
C OR THE BBOARD ACCOUNTS MUST BE GIVEN SYSPRV PRIVILEGES TO BE ABLE
C TO WRITE INTO THIS DIRECTORY. ALSO, FOR BBOARD TO WORK, MAKE SURE
C THAT THE SUBPROCESS LIMIT FOR USERS IS AT LEAST 2. YOU WILL ALSO HAVE
C TO INCREASE THE FOLLOWING SYSTEM PARAMETERS WHICH AFFECT DETACHED PROCESES:
C PQL_DPGFLQUOTA = 10000, PQL_DWSQUOTA = 500, & PQL_DFILLM = 30.
C (NOTE: ACCESS CAN BE GIVEN TO THE DIRECTORY FOR THE BBOARD ACCOUNTS USING
C ACLS, I.E. " SET ACL/ACL=(ID=bboard,ACCESS=R+W)/OBJ=FILE directory.DIR")
C
COMMON /FILES/ BULLFOLDER_FILE,FOLDER_DIRECTORY,BBOARD_DIRECTORY
COMMON /FILES/ BULLUSER_FILE,BULLINF_FILE
CHARACTER*80 FOLDER_DIRECTORY /'BULL_DIR:'/
CHARACTER*80 BBOARD_DIRECTORY /'BULL_DIR:'/
C
C NOTE: THE FOLLOWING DEFINITIONS ASSUME THAT BULL_DIR IS USED. IF IT
C IS NOT, THEN THEY SHOULD ALSO BE CHANGED.
C
CHARACTER*80 BULLUSER_FILE /'BULL_DIR:BULLUSER.DAT'/
CHARACTER*80 BULLFOLDER_FILE /'BULL_DIR:BULLFOLDER.DAT'/
CHARACTER*80 BULLINF_FILE /'BULL_DIR:BULLINF.DAT'/
$eod
$copy sys$input BULLFOLDER.INC
$deck
!
! The following 2 parameters can be modified if desired before compilation.
!
PARAMETER BBEXPIRE_LIMIT = 30 ! Maxmimum time limit in days that
! BBOARDS can be set to.
PARAMETER BBOARD_UPDATE = 15 ! Number of minutes between checks
! for new BBOARD mail. (Note: Check
! only occurs via BULLETIN/LOGIN.
! Check is forced via BULLETIN/BBOARD).
! NOT APPLICABLE IF BULLCP IS RUNNING.
PARAMETER ADDID = .TRUE. ! Allows users who are not in the
! rights data base to be added
! according to uic number.
PARAMETER FOLDER_FMT = '(A25,A4,A12,A80,A12,3A4,A8,7A4)'
PARAMETER FOLDER_RECORD = 184 ! Must be multiple of 4
COMMON /BULL_FOLDER/ FOLDER,FOLDER_NUMBER,FOLDER_OWNER,
& FOLDER_DESCRIP,FOLDER_BBOARD,FOLDER_BBEXPIRE,
& USERB,GROUPB,ACCOUNTB,
& F_NBULL,F_NEWEST_BTIM,FOLDER_FLAG,F_EXPIRE_LIMIT,
& F_NEWEST_NOSYS_BTIM,FILLER,
& FOLDER_FILE,FOLDER_SET
INTEGER F_NEWEST_BTIM(2)
INTEGER F_NEWEST_NOSYS_BTIM(2)
LOGICAL FOLDER_SET
DATA FOLDER_SET /.FALSE./, FOLDER/'GENERAL'/
CHARACTER FOLDER_OWNER*12,FOLDER*25,ACCOUNTB*8
CHARACTER FOLDER_FILE*80,FOLDER_DESCRIP*80,FOLDER_BBOARD*12
CHARACTER*(FOLDER_RECORD) FOLDER_COM
EQUIVALENCE (FOLDER,FOLDER_COM)
COMMON /BULL_FOLDER1/ FOLDER1,FOLDER1_NUMBER,FOLDER1_OWNER,
& FOLDER1_DESCRIP,FOLDER1_BBOARD,FOLDER1_BBEXPIRE,
& USERB1,GROUPB1,ACCOUNTB1,
& F1_NBULL,F1_NEWEST_BTIM,FOLDER1_FLAG,F1_EXPIRE_LIMIT,
& F1_NEWEST_NOSYS_BTIM,FILLER1,
& FOLDER1_FILE
CHARACTER FOLDER1_OWNER*12,FOLDER1*25,ACCOUNTB1*8
CHARACTER FOLDER1_FILE*80,FOLDER1_DESCRIP*80,FOLDER1_BBOARD*12
INTEGER F1_NEWEST_BTIM(2)
INTEGER F1_NEWEST_NOSYS_BTIM(2)
CHARACTER*(FOLDER_RECORD) FOLDER1_COM
EQUIVALENCE (FOLDER1,FOLDER1_COM)
$eod
$copy sys$input BULLUSER.INC
$deck
!
! The parameter FOLDER_MAX should be changed to increase the maximum number
! of folders available. Due to storage via longwords, the maximum number
! available is always a multiple of 32. Thus, it will probably make sense
! to specify a multiple of 32 for FOLDER_MAX, as that it what really will be
! the capacity. Note that the default general folder counts as a folder also,
! so that if you specify 64, you will be able to create 63 folders on your own.
!
PARAMETER FOLDER_MAX = 96
PARAMETER FLONG = (FOLDER_MAX + 31)/ 32
PARAMETER USER_RECORD_LENGTH = 28 + FLONG*16
PARAMETER USER_FMT = '(A12,<4+FLONG*4>A4)'
PARAMETER USER_HEADER_KEY = ' '
COMMON /HEADER_INFO/ TEMP_USER,BBOARD_BTIM,NEWEST_BTIM,USERPRIV
COMMON /HEADER_INFO/ SET_FLAG_DEF,BRIEF_FLAG_DEF
COMMON /HEADER_INFO/ NOTIFY_FLAG_DEF
CHARACTER TEMP_USER*12
DIMENSION BBOARD_BTIM(2),NEWEST_BTIM(2),USERPRIV(FLONG)
DIMENSION SET_FLAG_DEF(FLONG),BRIEF_FLAG_DEF(FLONG)
DIMENSION NOTIFY_FLAG_DEF(FLONG)
COMMON /BULL_USER/ USERNAME,LOGIN_BTIM,READ_BTIM,
& NEW_FLAG,SET_FLAG,BRIEF_FLAG,NOTIFY_FLAG
CHARACTER*12 USERNAME
DIMENSION LOGIN_BTIM(2),READ_BTIM(2)
DIMENSION NEW_FLAG(FLONG) ! Bit set indicates new message in folder
DIMENSION SET_FLAG(FLONG) ! Bit set indicates READNEW set for folder
DIMENSION BRIEF_FLAG(FLONG) ! Bit set indicates READNEW/BRIEF set
DIMENSION NOTIFY_FLAG(FLONG)! Bit set indicates to broadcast
! notification when new bulletin is added.
CHARACTER*(USER_RECORD_LENGTH) USER_ENTRY,USER_HEADER
EQUIVALENCE (USER_ENTRY,USERNAME)
EQUIVALENCE (USER_HEADER,TEMP_USER)
COMMON /FOLDER_TIMES/ LAST_READ_BTIM(2,0:FOLDER_MAX)
! Last read times for each folder as stored in BULL_DIR:BULLINF.DAT
COMMON /NEW_MESSAGES/ NEW_MSG
DIMENSION NEW_MSG(FLONG) ! Flag showing new messages detected
$eod
$copy sys$input HANDOUT.TXT
$deck
Introduction to BULLETIN on the Vax
2/88 AW
PUBLISHED BY THE DREW UNIVERSITY ACADEMIC COMPUTER CENTER. MAY BE
COPIED WITH WRITING CREDIT GIVEN TO DREW UNIVERSITY.
BULLETIN was written for the Public Domain by Mark London at MIT.
The BULLETIN utility permits a user to create messages for
reading by other users. Users may be notified upon logging on
that new messages have been added, and what the topic of the
messages are. Actual reading of the messages is optional. (See
the command SET READNEW for info on automatic reading.) Messages
are automatically deleted when their expiration data has passed.
The program runs like VAX mail. The different interest
groups or BULLETIN boards are implemented in the form of
'Folders', just like a filing cabinet. A Folder contain various
messages on the same general topic. A message is a piece of text
written by a user or staff person and added to a particular
folder. All users are not permitted to submit messages to all
folders.
A message consists of an expiration date, a subject line
and the text of the message. BULLETIN will prompt the user for
these things when a message is being added.
Several different folders are currently defined to
BULLETIN. The General Folders will be used by Computer Center
Staff to post messages of general interest concerning the VAX to
the user community. If something is of an important nature, it
will be posted in the General folder as a 'System' message.
This is a special message type. It will be displayed to each
user as they log in the first time after that message was
posted. This will be done automatically by BULLETIN on login.
Once a particular system message has been displayed, it will not
be displayed for that user on subsequent logins.
Folders
Different folders have been created to contain messages on
different topics. Folders may be public, semi-private, or
private. The majority of the folders will be public. However a
few will be semi-private, which will mean that all users may
read messages in the folder but not all will be able to post to
it. Currently, there are several folders defined:
GENERAL -- system messages
PUBLIC_ANNOUNCEMENTS -- Can be used by anyone to post messages
of interest to the public
On Beta:
AIDE STATION -- Private folder for Computer Center Employees
In addition on Alpha there are folders that receive electronic
magazines, such as:
NETMONTH -- The monthly magazine of BITNET information.
RISKS -- Identifying the risks involved in using computers.
INFOIBMPC -- Information about the IBM personal computers.
INFOVAX -- Information on the Digital VAX.
PROGRAMMING_JOURNALS-Includes MINIX, UNIX and C, Modula-2 and
Prolog journals
watch for new ones being added.
Using BULLETIN
BULLETIN is invoked by type the command 'BULLETIN' (or BULL,
for short) at the '$' prompt. BULLETIN will display its prompt
'BULLETIN>'. Help is available from DCL command level ($) or from
within the BULLETIN program itself by typing the word 'HELP'. To
leave the BULLETIN program, type 'EXIT'.
To see what is there
In order to see message and folders, on can use the
'Directory' command. Upon entering BULLETIN, the user is place
in the General folder. If the user wishes to see which folders
exist, the directory/folders command is used. for example:
typing:
BULLETIN> directory/folders
will make a display like:
Folder Owner
*GENERAL SYSTEM
*PUBLIC_ANNOUNCEMENTS BBEYER
NETMONTH BITNET
*VAX_SIG BBEYER
An asterisk (*) next to the folder name indicates you have unread
messages in that folder.
The command 'DIRECTORY/FOLDERS/DESCRIBE' would list all available
folders, along with a brief description of each.
To switch from one folder to another folder, the user may
execute the 'SELECT' command. For example, the following
command would show what a user would do to switch to the folder
called PUBLIC_ANNOUNCEMENTS:
BULLETIN> SELECT PUBLIC_ANNOUNCEMENTS
and BULLETIN would respond:
Folder has been set to PUBLIC_ANNOUNCEMENTS
Now the user may get a list of the messages in this folder
by issuing the directory command with no qualifiers.
This command, for example:
BULLETIN> DIRECTORY
would have bulletin respond:
# Description From Date
1 CHRISTMAS PARTY oleksiak 26-JUN-88
2 Learning about BULLETIN oleksiak 26-JUN-87
3 VAX MAIL LLLOYD 01-Jan-87
The command 'DIR/NEW' will list just unread messages.
Reading messages
In order to read messages in a folder, the user may type
the read command or he/she may simply type the number of the
message he wishes to read. The message numbers can be acquired
by doing the 'DIRECTORY' command. If the user hits a carriage
return with no input whatsoever, BULLETIN will type the first
message in the folder, or if there are new messages present, it
will type the first new message in the folder.
If a folder contains the above messages (as seen by the
'Directory' command) then these messages can be read by:
BULLETIN> READ
and BULLETIN would respond:
Message number: 1 PUBLIC_ANNOUNCEMENTS
Description: CHRISTMAS PARTY
Date: 26-JUN-1988 8:08:40 Expires: 1-JAN-1989 08:08:40
...Body of message.....
Should the user only wish to see message number 3, he can
enter the 'READ' command with the message number as a parameter.
for example:
BULLETIN> READ 3
There are three other useful commands that can be used at
the 'BULLETIN>' prompt when reading messages. These are:
BACK - Read the message preceding the message currently being
read.
CURRENT - Start reading the current message at the top. This is
useful for someone who is reading a message and wishes to reread
it from the beginning.
NEXT - Start reading from the beginning of the next message.
This is handy if the user is reading a very long message and
wants to skip to the next one.
Saving the interesting stuff.
If the user sees something which he/she wants a copy of,
the extract command can be use to write an ASCII copy of the
message into a file. This command works on the current message
being read. It requires the name of the file into which to save
the message. If the file name is not given, the user will be
prompted for it. For example:
BULLETIN> Read 2
********** Message on Screen ********
A person could then type
BULLETIN> extract
file: FV.TXT
BULLETIN>
BULLETIN has now saved the contents of message number 2 into the
file name 'FV.txt'.
If the file to which the user is writing already exists,
BULLETIN will append the message to the file. The user can
force BULLETIN to write a new file containing only the message
being saved by using the '/new' qualifier in the 'extract'
command. These messages can then be sent to other users, or
downloaded for use in Wordperfect. (See "Mail on the Vax", or
"Transferring a file between a PC and the VAX").
This command may be useful if you wish to transfer the message to
your PC, perhaps using a BITNET journal message as a reference in
a paper. Once the file is saved, you can transfer it to a PC by
following the instructions in the handout 'Transferring files
from the PC to the VAX of from the VAX to a PC".
Adding messages
A user may add a message to a folder by selecting the
folder and then using the 'ADD' command. This is provided that
the user is adding the message to a public folder. The user has
the option of giving the 'ADD' command and typing a message using
the VAX editor or uploading a message from your PC (see
documentation), or add a message you have extracted from VAX
mail. BULLETIN will prompt for the expiration date and subject
line. It will then add the text of the file as the body of the
message. To add a message that is stored in a file (from MAIL or
from your PC, for example) type:
ADD filename
If the user does not specify a file name, he/she will be
prompted to enter the body of the message. The user may also
use the EDT text editor by issuing the command with the
'/EDIT'option.
For example:
BULLETIN> sel PUBLIC_ANNOUNCEMENTS
folder has been set to PUBLIC_ANNOUNCEMENTS
BULLETIN> ADD MESS.TXT
IT IS 10-JUL-1988 12:41:06.15. SPECIFY WHEN THE MESSAGE SHOULD
EXPIRE: ENTER ABsolute TIME: <DD-MMM-YYYY]HH:MM:SS OR DELTA
TIME: DDD HH:MM:SS
A user then type the date of expiration and press the 'return'
button. The time input may be ignored. For example, typing:
20-JUL-1988 or type "10" - for ten days in the future.
BULLETIN responds:
ENTER DESCRIPTION HEADER. LIMIT HEADER TO 53 CHARACTERS.
Now the user may enter the subject of the message.
BULLETIN>
The above session adds the text in the file 'mess.txt' as the
next message in the PUBLIC_ANNOUNCEMENTS Folder. The message
will be deleted automatically on the 20th of July as requested
by the user adding the message.
Asking BULLETIN to notify you of new messages upon logging in.
If the user wishes to get notification on login when new
messages are in a folder, he should use the 'READNEW' option.
This command does not force the reader to reading new messages,
only gives notification. To do this, 'SELECT' each folder you
are interested in and do a 'SET READNEW' command while set to
that folder.
Example:
BULLETIN> Select PUBLIC_ANNOUNCEMENTS
folder has been set to PUBLIC_ANNOUNCEMENTS
BULLETIN> SET READNEW
Alternately, you may type SET SHOWNEW. This will just display a
message notifying you that there are new messages.
Mailing a BULLETIN message
A user may directly mail another user a message found in the
BULLETIN. While reading the message that he/she desires to send,
at the 'BULLETIN>' type 'MAIL'. The Vax will then ask to whom
you wish to send the information too.
Check the BULLETIN DISCUSSION folder on ALPHA for new additions.
If you have comments or questions about BULLETIN, leave them
there.
$eod
$copy sys$input INSTRUCT.TXT
$deck
This message is being displayed by the BULLETIN facility. This is a non-DEC
facility, so it is not described in the manuals. Messages can be submitted by
using the BULLETIN command. System messages, such as this one, are displayed
in full, but can only be entered by privileged users. Non-system messages can
be entered by anyone, but only their topics will be displayed at login time,
and will be prompted to optionally read them. (This prompting feature can be
disabled). All bulletins can be reread at any time unless they are deleted or
expire. For more information, see the on-line help (via HELP BULLETIN).
$eod
$copy sys$input NONSYSTEM.TXT
$deck
Non-system bulletins (such as this) can be submitted by any user. Users are
alerted at login time that new non-system bulletins have been added, but only
their topics are listed. Optionally, users can be prompted at login time to
see if they wish to read the bulletins. When reading the bulletins in this
manner, the bulletins can optionally be written to a file. If you have the
subdirectory [.BULL] created, BULLETIN will use that directory as the default
directory to write the file into.
A user can disable this prompting featuring by using BULLETIN as follows:
$ BULLETIN
BULLETIN> SET NOREADNEW
BULLETIN> EXIT
Afterwords, the user will only be alerted of the bulletins, and will have to
use the BULLETIN utility in order to read the messages.
$eod
$copy sys$input WRITEMSG.TXT
$deck
BULLETIN contains subroutines for writing a message directly to a folder. This
would be useful for someone who is using the BBOARD feature, but wants to avoid
the extra overhead of having the message sent to an account as MAIL, and then
have BULLCP read the mail. It is better if the network mail could be written
directly to the folder bypassing VMS MAIL, as it reduces a lot of cpu overhead.
Call INIT_MESSAGE_ADD to initiate a message addition.
Call WRITE_MESSAGE_LINE to write individual message lines.
Call FINISH_MESSAGE_ADD to complete a message addition.
Calling formats:
CALL INIT_MESSAGE_ADD(IN_FOLDER,IN_FROM,IN_DESCRIP,IER)
C
C INPUTS:
C IN_FOLDER - Character string containing folder name
C IN_FROM - Character string containing name of owner of message.
C If empty, the default is the owner of the process.
C IN_DESCRIP - Character string containing subject of message.
C If empty, the message is searched for a line
C which starts with "Subj:" or "Subject:".
C OUTPUTS:
C IER - Error status. True if properly connected to folder.
C False if folder not found.
C
CALL WRITE_MESSAGE_LINE(BUFFER)
C
C INPUTS:
C BUFFER - Character string containing line to be put into message.
C
CALL FINISH_MESSAGE_ADD
C
C NOTE: Only should be run if INIT_MESSAGE_ADD was successful.
C
$eod