Bedework Public Events Registration System
Bedework 3.9 10 supports a basic public events registration system that allows authenticated users to register for events. Users may view and modify their registrations, such as unregistering or changing the number of tickets they've requested. When registration is full, users may choose to be placed on a waiting list. Users on waiting lists will automatically be moved up in the queue if space becomes available.
...
Administrators can specify how many users may register, how many tickets each registrant may request, and set the opening and closing dates of registration. Administrators can view and modify a registration list and download CSV files of their registrations on-demand.
Data about the event is maintained in x-properties attached to the event and provides the following information:
- Booking window start and end
- Number of tickets
- Max number of tickets per person
Enabling and Disabling Public Events Registration
Enabling Public Events Registration
...
The public events registration system is enabled by default if you have installed Bedework 3.9 with the data available in the quickstart.
...
If you wish to disable the public events registration system remove the "Eventreg admin token" from the System Preferences in the administrative web clientjmx console:
- Log into the Bedework public events administrative clientjmx console, e.g. http://localhost:8080/caladminjmx-console
- Click "org.bedework.bwengine" in the left menu, then "service=System" in the right menu
- Remove the value
of Click "Update" button - in the
"Eventreg admin token" field (set it to an empty value)- EventRegAdminToken field
- Click "Apply Changes"
- Invoke "saveConfig" to save your changes.
Enabling Public Events Registration (possibly after upgrade
...
from a previous release)
If you have moved to Bedework 3.9 using data from a previous release, you are not likely to First ensure that the CalWs interface is available. This is the SOAP service that the event registration service uses o communicate with bedework. In system.xml make sure the <calSoapWsURI> element is present and has the same value as the soap:address element in pubcalws-soap/wssvc.wsdl (this requires better explanation - it's a file deployed in the bw-xml ear)
If you have upgraded from an older release, you may not have the data required for event registration in your system yet. Follow these steps to turn on the event registration system: (Please note: the process outlined below is only set up for the default quickstart and postgresql configs at the moment.)
- Start up jboss and apacheDS
- Go to the System tab and select "Manage System Preferences"
- Paste the EventRegAdminToken value into the "Eventreg admin token" field Click "Update" button
- Log into the JMX-Console shipped with Bedework's JBoss, e.g. http://localhost:8080/jmx-console
- Click "org.bedework.eventreg" in the left menu, then "service=Eventreg" in the right menu
- If no database exists:
- Set “create” and “export” attributes to "True"
- Click "Apply changes" button (at the bottom of the list of attribute values)
- Find the "schema" operation in the lower list, and click the “Invoke” button to export schema and create database
- You should see a successful result; click "Back to MBean" button to return to "service=Eventreg"
- Set “create” and “export” attributes to "True"
- Point at needed systems:
- Set the WsdlUri attribute value to: http://localhost:8080/wsdls/pubcalws-soap/wssvc.wsdl
- Set the TzsUri attribute value to: http://localhost:8080/tzsvr
- Click "Apply changes" button
- Admin token:
- If no admin token exists, click “generateAdminToken”
- You should see a successful result; click "Back to MBean" button to return to "service=Eventreg"
- You should see a string such as "c0e93685-93cd-4bee-bed2-9996b89be28c" in the EventRegAdminToken attribute value. Click "Apply changes" button
- Copy the EventRegAdminToken value (for use in the next step)
- If no database exists:
Log into the Bedework public events administrative client, e.g. http://localhost:8080/caladmin - Click "org.bedework.eventreg" in the left menu, then "service=Eventreg" in the right menu
- Click "org.bedework.bwengine" in the left menu, then "service=System" in the right menu
- Paste the value into the EventRegAdminToken field
- Click "Apply Changes" button
- Invoke the "saveConfig" operation to save your changes.
- Click "org.bedework.bwengine" in the left menu, then "service=System" in the right menu
- Test:
- Add a new public event. You should be able to select the checkbox "Users may register for this event", and make the event registerable.
- Visit the event in public client -- you should be able to register for it.
- Add a new public event. You should be able to select the checkbox "Users may register for this event", and make the event registerable.
...
The public events registration features have been backported into Bedework 3.8. If you would like to install the system, perform the following steps: (Please note: the process outlined below is only set up for the default quickstart and postgresql configs at the moment.)
- Update the Bedework source, build the event registration system, and clean/build Bedework:
- ./bw -updateall
- ./bw -quickstart -eventreg
- ./bw -quickstart clean ./bw -quickstart deploy
- mkdir quickstart-3.9/jboss-5.1.0.GA/server/default/data/bedework/eventreg/ unzip pubcalws-soap.zip into quickstart-3.9/jboss-5.1.0.GA.server/default/deploy/ROOT.war/wsdls/
- If no database exists:
- Set “create” and “export” attributes to "True"
- Click "Apply changes" button (at the bottom of the list of attribute values)
- Find the "schema" operation in the lower list, and click the “Invoke” button to export schema and create database
- You should see a successful result; click "Back to MBean" button to return to "service=Eventreg"
- Set “create” and “export” attributes to "True"
- Point at needed systems:
- Set the WsdlUri attribute value to: http://localhost:8080/wsdls/pubcalws-soap/wssvc.wsdl
- Set the TzsUri attribute value to: http://localhost:8080/tzsvr
- Click "Apply changes" button
Admin token: - If no admin token exists, click “generateAdminToken”
- You should see a successful result; click "Back to MBean" button to return to "service=Eventreg"
- You should see a string such as "c0e93685-93cd-4bee-bed2-9996b89be28c" in the EventRegAdminToken attribute value.
- Click "Apply changes" button Copy the EventRegAdminToken value (for use in the next step)
- Log into the Bedework public events administrative client, e.g. http://localhost:8080/caladmin
- Go to the System tab and select "Manage System Preferences"
- Paste the EventRegAdminToken value into the "Eventreg admin token" field Click "Update" button to save your changes.
- Add a new public event. You should be able to select the checkbox "Users may register for this event", and make the event registerable.
- Visit the event in public client -- you should be able to register for it.
(These commands should be performed from the root of the quickstart directory. See also: building the Quickstart release.)
Fix up quickstart
Start up jboss and apacheDS
Log into the JMX-Console shipped with Bedework's JBoss, e.g. http://localhost:8080/jmx-console
Click "org.bedework" in the left menu, then "service=Eventreg" in the right menu
Test:
Notifications from EventReg
The event registration service will send notifications to the calendar engine when changes take place that might require notifying users. The event registration service calls the calendar engine notification web service (not to be confused with the notification engine). This web service allows the core engine to add notifications to the accounts of subscribed users. It is the job of the notification engine to forward those via email or some other service.
To configure notifications from eventreg you need to set the BwId, BwToken and BwUri properties in "service=Eventreg"and the NotifierId and NotifierToken values in "org.bedework.bwengine" -> "notifications"