The Aggregator User Interface

At the moment the aggregator is unauthenticated. A production version would be authenticated (simply a change to the web.xml) and this would allow groups to be defined and owned by the authenticated user.

For the current unauthenticated version, for demonstration purposes we have predefined a number of groups. It is possible to define new groups but they are not saved and disappear at session termination.

To obtain a freebusy display from the quickstart demonstration:

  1. In your browser go to http://localhost:8080/fbagg/
  2. Select the group
  3. Set the start and end date
  4. Click the "Aggregate" button.

In addition after selecting the group, it is possible to click on one of the displyed group members to get their individual freebusy.

If there are any errors in cmmunicatijg with the remote servers these will be displayed at the top.

Following that is a display with one line per day showing free and busy time. Busy time is marked wit a count of the number of busy attendees. This would allow a meeting organizer to decide to hold a meeting at a given time if sufficiently few potential attendees are busy.


Fixes

These are missing features or bugs that need to be resolved.

Finish timezone support

Currently the default timezone is hard-coded in all components. Some of the proxy servers need to determine what timezone the proxied server is running in. Th eaggregator uses the timezone to display the results. The proxies either need to determine the proxied timezone or it needs to be a property of the connection. The aggregator needs to be selectable and based on the browser locale settings.

Fix action form for dates

So they don't disappear when a group is selected.

Add group support

Groups are not stored in the database.


Enhancements

There are a number of enhancements that could be made, some simple, some not so. Many would require authentication to be maximally usable.

Multi-threading

At the moment each request is sent out serially. It is a relatively simple enhancement to multi-thread the outbound requests to significanlty reduce the time taken to get the aggregated response. An additional, but slightly more complex enhancement, would be to update the result as the responses arrive and allow regularly refresh the display to show the progress.

Working day.

Have a user preference defining the working day. This would allow us to discard information outside of those hours.

Sharing and access control.

The bedework project has access control and sharing code available. This could be used to allow users to limit access to their information and to share groups with other users.

Quorum

Allow user to specify a quorum, either as a percentae or as a mimimun required attendance. The display will then reflect that requirement.

Attendees role

Allow the user to mark the role of each attendee, This would affect generated meeting requests.

Attendees participation status

Allow the user to mark the participation status of each attendee, Non-participants would then not effect the freebusy display. The status would also be reflected in generated requests.