Have you ever noticed that all your favorite apps have their own messaging capability built right in to the app? We all use SMS text messages on a daily basis to communicate with friends and family. But we can also send messages using What's App, Facebook messenger, Instagram Direct Message, etc. Why should your favorite Integrated Development Environment (IDE) be any different?
Back in the days, when all mainframe application developers were using TSO an operator could send broadcast messages and be sure that everyone received them. These messages were often used to alert developers about upcoming events such as scheduled system maintenance. However, the TSO SEND command is not limited to just broadcasting messages to all users. It can be used to communicate between two individuals such as:
TSO SEND 'ARE YOU JOINING US FOR LUNCH?' USER(WATSON) LOGON
These days, even though many developers are no longer using TSO directly and instead using modern development tools such as IBM Developer for z/OS (IDz) the need for broadcast messages or quick communication between individuals has not changed. Organizations may have separate enterprise software for messaging such as Slack or Microsoft Teams, but to use them developers need to break context, leave their IDE and find the name of the person to send a message. Also these tools know nothing about mainframe userids so administrators would need to setup specific groups to represent the TSO users with whom they really want to communicate. Of course the developer also needs to remember to check that separate enterprise messaging software every day. Wouldn't it be nice if these messages appeared in the tool developers spend most of their time using, just like it did in the old days?
IBM Developer for z/OS has the ability for developers and operators to use the same old SEND command they have always used in TSO, but have the messages sent to both IDz and TSO users. The following example popup dialog shows multiple messages waiting for the user when he starts using IDz to begin his work day. Note that two messages are from other developers, WATSON and THEBOSS, while one is a message from the operator. If the developer wishes to send a response to one of the messages from the developers then the Reply button can be used.
Operators use the MODIFY RSED SEND command for sending messages. Developers use the TSO SEND command, or the z/OS UNIX send command. Depending on which method you use, you can send messages to a single user, multiple users, or do a broadcast to all users. Multiple options exist in case you want to send a message to only users currently connected to the mainframe using IDz, to both connected and disconnected users, or to only popup a message the next time a user logs on.
The maximum length of the SEND command including the options and message text is limited to 320 bytes. So while it allows you to send more characters than Twitter, there is a limit. Oh, and you cannot attach pictures, so no need to worry about receiving selfies from co-workers.
Besides using the TSO or z/OS UNIX Command Shell to issue SEND message commands, another possibility is to create a Menu Manager action, such as the one below. Menu Manager can be used to create custom actions which execute TSO Commands, REXX, CLIST, or Submit JCL. The example below creates a new menu action named SEND Message which prompts the user for the text, userid and option to use when executing the TSO SEND command.
Configuration work for SEND Message support must be done by your z/OS system administrator, and is very limited (define security profiles to limit who can use this, and make the IDz TSO SEND exit available to those users who need to use the TSO version of the SEND command). Details about configuring SEND Message support for your environment can be found here:
Details about using Menu Manager to extend the base functionality of IBM Developer for z/OS can be found here:
Special thanks to Onno Van den Troost for contributing to this blog.