# Broadcast Plugin Readme

## Overview

The broadcast plugin broadcasts messages to all users in the system or to specific groups. It's primarily useful for sending announcements or notifications.

## Installation

Copy broadcast.jar into the plugins directory of your Openfire installation. The plugin will then be automatically deployed. To upgrade to a new version, copy the new broadcast.jar file over the existing file.

## Configuration

The broadcast plugin is configured via Openfire system properties. These can be configured under Server/Server Manager/System Properties:

- `plugin.broadcast.serviceName` -- the name of the broadcast service. If no value is set, the default is "broadcast".
- `plugin.broadcast.disableGroupPermissions` -- true to allow any user to broadcast a message to a group. When false, only group members or administrators can broadcast messages to a group. The default value is false.
- `plugin.broadcast.groupMembersAllowed` -- true to also allow group members to send broadcast messages to groups they belong to. When false, only administrators can send broadcast messages to a group. The default value is true. Note that the property value of `plugin.broadcast.disableGroupPermissions` can effectively override this value by letting anyone send broadcast messages to groups.
- `plugin.broadcast.allowedUsers` -- the comma-delimitted list of users allowed to broadcast messages to all connected users at once. When this property isn't set, anyone is allowed to broadcast messages to all users.

## Using the Plugin

To send a broadcast message, send a message to all@[serviceName].[serverName] or [group]@[serviceName].[serverName]. For example, if your server is called foo and the default service name is being used, a message to all@broadcast.foo would be broadcast to all users connected to the server. For the group staff, a message to staff@broadcast.foo would be sent to all users in the group staff that are currently online or offline.

Note: for maximum compatability between group implementations, it's recommended that you use lower-case group names in conjunction with the broadcast plugin.