# Fastpath Plugin Readme

## Overview

The Fastpath plugin adds support for managed queued chat requests, such as a support team might use. For example, a web based "Live Support" interface can point a potential customer at a workgroup representing the Sales team. Members of that workgroup will receive notification that a someone is waiting and when someone from that workgroup accepts, the customer and the team member will be connected to communicate with each other.

## Installation

Copy fastpath.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 fastpath.jar file over the existing file. Make sure to follow the upgrading instructions under the Upgrading section, regardless of if you have the old Fastpath plugin or Enterprise installed currently or not. The only time you can skip the Upgrading section is if you know for a fact that you have never run Fastpath or Enterprise.

Make sure that the enterprise plugin is removed before installing this plugin. Otherwise the enterprise plugin will rename the fastpath.jar to fastpath.jar.old thus removing thus plugin. If this happens just stop the server, remove the enterprise.jar plugin and rename fastpath.jar.old to fastpath.jar and start the server again.

## Upgrading from Pre-Enterprise Fastpath and Enterprise

Due to the previous version of Fastpath existing before it was incorporated into Enterprise, and due to this replacing part of the Enterprise plugin, upgrading to this Fastpath plugin requires some manual steps. Effectively, we need to clean up the old database a bit and change the names of a couple of things. So the steps you will need to perform are as follows:

1. Shut down your server.
2. Remove enterprise.jar and the directory enterprise.
3. Log into your database, you can use the embedded-db-viewer scripts in bin/extra to access the Embedded database.
4. Execute the following SQL: `DELETE FROM ofVersion WHERE name = 'fastpath'`
5. Execute the following SQL (this may fail if you never had enterprise instaled, that is ok): `UPDATE fpWorkgroupProp SET propValue = REPLACE(propValue, 'com.jivesoftware.openfire.fastpath','org.jivesoftware.openfire.fastpath')`
6. Execute the following SQL (this may fail if you never had enterprise installed, that is ok): `UPDATE fpAgentProp SET propValue = REPLACE(propValue, 'com.jivesoftware.openfire.fastpath','org.jivesoftware.openfire.fastpath')`
7. Execute the following SQL (this may fail if you never had enterprise installed, that is ok): `UPDATE fpWorkgroupProp SET propValue = REPLACE(propValue, 'com.jivesoftware.xmpp.workgroup','org.jivesoftware.xmpp.workgroup')`
8. Execute the following SQL (this may fail if you never had enterprise installed, that is ok): `UPDATE fpAgentProp SET propValue = REPLACE(propValue, 'com.jivesoftware.xmpp.workgroup','org.jivesoftware.xmpp.workgroup')`
9. Execute the following SQL (this may fail if you never had enterprise installed, that is ok): `UPDATE fpDispatcherProp SET propValue = REPLACE(propValue, 'com.jivesoftware.xmpp.workgroup','org.jivesoftware.xmpp.workgroup')`
10. Start up your server. If you had enterprise installed, you -will- see an SQL error show up, but it should only show up once and is ok. (it is an attempt to recreate a table that already exists) The error will look like: `fastpath - Database update failed. Please manually upgrade your database.`

You only need to do these steps once when moving to this Fastpath plugin. Do not repeat these steps on future Fastpath plugin updates.

## Configuration

Configuration is performed under the Fastpath tab in the Openfire admin console. The quick start guide can be found here.