Message Structure
A message is any text that RSCS writes to its console or sends to a user in another virtual machine or on another node. RSCS can issue text and columnar messages.
All messages are described by a MSGBLOK (see MSGBLOK), which the calling task provides to the message processing modules.
A message can be sent to a combination of destinations. RSCS uses the following routing codes to determine where it should send a message.
| Code | Destination | Explanation |
|---|---|---|
| R | RSCS console | The message is sent to the RSCS virtual console
(the RSCS operator or the user ID specified on the DISCONNECT command).
When sent to the RSCS operator, the message contains a time stamp. If another user ID is specified on the DISCONNECT command, the message is delivered by the CP MSGNOH or MSG commands and does not contain a time stamp. |
| C | CP operator | The message is sent to the OPERATOR virtual machine (CP operator). |
| O | Any user ID on any node | MSGBLOK fields indicate the destination. If sent to a local user, the message is delivered by the CP MSGNOH, MSG, or SMSG commands. If sent to a remote user, the message is sent through the RSCS network before being delivered to its final destination. |
| V | Any user ID at the local node | This routing code is similar to the O code. However, here, RSCS ignores the remote node field in the MSGBLOK and the message is always routed to a local user. |
| P | Same as the R, O, and V routing codes | The message is private and cannot be part of a SET or SETMSG subscription. The message can be routed to any user. |
Messages are identified by a message number (between DMT000 and DMT999) for the RSCS server and a severity code (I, W, E, S, and T). Each message also contains fixed text, controlled by message repositories, and substitution fields, which are controlled by values in the MSGBLOK. To issue a message, RSCS takes the following steps:
- Looks for the format of the message in repositories, using the
message number in the MSGBLOK as an index.
These repositories (translation and conversion) issue messages in different languages. Two execs, MCONV and MCOMP, compile the repositories into TEXT decks that can be linked into RSCS load module or into an exit routine package. See Message Repositories for more information.
- Builds the message using the format identified in the repositories. Any substitution parameters, passed in the MSGBLOK by the calling task, are also included in the message.
- Issues the message to all destinations identified by the routing codes.