How to send alarm popup windows with LoriotPro to Windows Users.

Introduction to the notification by window popup

In LoriotPro alarm filtering you might want to trigger a popup alarm window on a remote workstation or a group of workstations.

LoriotPro is able to trigger action when receiving a SNMP trap, a proprietary EVENT or a SYSLOG. The action is defined in a filter. LoriotPro checks in real time that filter conditions are fulfilled and launches the action. LoriotPro is internally design to process hundred of incoming events per seconds and trigger the according actions.

In this how to, we want to notify network administrator of IS manager of any type of alarms by sending them a message that will popup a windows on their workstation. LoriotPro will be in charge of triggering the executable that will send the message and not directly send the message.

The first and easiest solution is included in the Windows Operating System and use the Net Send function available in Windows XP, 2000 and 2003. In Windows Vista it is necessary to use the MSG program because Net Send is not longer available for security reason. The Net Send was use by dumb hackers for making deny of service by blasting pc with popup messages.

The result is :

You will not be able to send message with Net Send under XP for example to a user under Windows Vista. In the other way, you will be able to send a message from a Vista to windows XP user.

Using Windows NetSend or MSG.exe

For the example we have set a filter on the LinkDown trap:

trap filter example

For setting filter and action first read the LoriotPro documentation below: http://www.loriotpro.com/Products/On-line_Documentation_V5/LoriotProDoc_EN/I9-Event_Management/I9-G7_Trap_Filter_Creation_EN.htm

In the Action Wizard of the filter (trap or event filter) you must choose the Start Windows Program option. You are then invited to select a program in your directory.

On Vista you can select msg.exe in /windows/system32 directory

On Windows 2000, Windows XP, Windows 2003 you can use the NET SEND command.

Here under an example of trap filter action on a Windows Vista

The syntax of the command:

C:\Windows\System32\msg User Name Message between quote

The full path is not necessarily required depending of your Windows settings.

In the upper example:

C:\Windows\System32\msg.exe %QFlorent Brisson%Q %QMessage from :%h ALARM : Interface %0 down%Q

Warning : The double quote is not allowed in the action parameters field. You should replace them by the %Q value. (this feature is available only with Loriotpro V5 release cc or higher).

The user name can be replace by * for sending a broadcast message to all users.

To test the filter use the Trap Simulator and generate a fake trap.

trap simulator

The trap is received.

The filter is matched and generates the action.

The action generates a message popup on the remote workstation

Syntax of the MSG command :

MSG {username | sessionname | sessionid | @filename | *} [/SERVER:servername] [/TIME:seconds] [/V] [/W] [message]

Username Identifies the specified username.
Sessionname The name of the session.
Sessionid The ID of the session
@filename Identifies a file containing a list of usernames, sessionnames, and sessionids to send the message to.
* Send message to all sessions on specified server.
/SERVER:servername server to contact (default is current).
/TIME:seconds Time delay to wait for receiver to acknowledge msg.
/V Display information about actions being performed.
/W Wait for response from user, useful with /V
Message Message to send. If none specified, prompts for it or reads from stdin.

 

REMARK:

On the remote Windows XP, the Messenger service should be started for enabling the reception of alert message.

Start the service form the Control Panel Administrative Tools Services interface

Or open a dos session and type : svchost.exe k netsvcs

 

Syntax of the Net Send command

net send {name | * | /domain[:name] | /users} message 

name Specifies the user name, computer name, or messaging name to which you want to send the message. If the information that you supply contains spaces, use quotation marks around the text (for example, "Computer Name"). Long user names might cause problems when you use them as NetBIOS names. NetBIOS names are limited to 16 characters, and the sixteenth character is reserved.
* Sends the message to all the names in your domain or workgroup.
/domain : name Sends the message to all the names in the computer's domain. You can specify name to send the message to all the names in the specified domain or workgroup.
/users Sends the message to all users connected to the server.
message Required. Specifies the text of the message.

 

net help command   : Displays help for the specified net command.

Remarks
  1. You can send a message only to a name that is active on the network. If you send the message to a user name, that user must be logged on and running the Messenger service to receive the message.
  2. You can broadcast a message to all of the names in your computer's domain (use * or /domain), or a different domain (/domain:DomainName). Broadcast messages can contain up to 128 characters.
  3. /users lets you send a message to all users who have sessions with the server.
  4. The Messenger service must be running for messages to be received.

Examples:

To send the message "Meeting changed to 3 P.M. Same place." to the user robertf, type:

net send robertf Meeting changed to 3 P.M. Same place.

To send a message to all users connected to the server, type:

net send /users This server will shut down in 5 minutes.

To send a message that includes a slash mark (/), type:

net send robertf "Format your disk with FORMAT /4"