Home

In my Exchange support experience, customers often ask me about the differences between using the Auto Accept Agent and Outlook Direct Booking. They want to know which they should use for their specific environment. After much research, I compiled the following matrix of advantages and disadvantages of each to help you decide for yourself which you should use.

 

The Auto Accept Agent is a server-side store event sink available in Exchange 2003 SP1 which provides automatic server-side processing of meeting requests sent to resource mailboxes. The Agent handles initial scheduling, cancellations and updates and sends responses to the meeting organizer - meaning less scheduling conflicts and allowing receptionists and conference room owners to spend their time more productively.

 

What are the advantages of using Auto Accept Agent?

 

  1. The agent runs on the server 24 hours per day, 7 days a week. The agent responds immediately and the requestor does not have to wait for the receptionist to return from lunch.

  2. The agent checks the availability by looking at the calendar (resource schedule), not the Free/Busy information. This reduces the number of issues caused by free/busy update lag.

  3. It can decline individual conflicting instances within a recurring meeting request.

  4. In case of declined meeting request with conflicts (or a meeting request accepted with conflicts) the response includes date/time information on which instances conflict.

  5. All comments and attachments are removed from the meeting requests. Only the time and date information will remain on the meeting item. This prevents the delegate from viewing and confidential or private information. It also keeps the mailbox trim.

  6. Meetings marked as private are processed immediately. Additionally, the private flag is stripped from meeting requests so the receptionist will always have clear visibility to what is on the calendar.

  7. It replaces the need for excessive permissions needed to allow direct booking and does not require delegate permissions or configuration

  8. Much more robust than Outlook "auto-booking".

  9. Reminders are removed from the conference room's copy of the meeting.  This avoids "reminder hell" in the event the conference room mailbox is directly opened in Outlook.

  10. It handles meeting requests from all clients including OWA.

  11. The resource mailbox owner retains their rights on the resource mailbox and will remain the ultimate authority on the mailbox.

Does Auto Accept Agent have any disadvantages compared to direct booking?

  1. The agent code must run on every Exchange server that has a resource mailbox, since CDOEX is used to process requests and can only access local mailboxes.

  2. Delegates (e.g. Receptionists) will be less aware of the number and nature (urgency) of incoming requests.

  3. Currently the booking window will be limited to 6 months. This can be changed but it's not recommended. It will take a while for requestors to become accustomed to this hard limit. Important: Any request beyond the six-month window, including recurring meetings extending past it, will automatically be declined.

  4. Delegates will have to check the Inbox, Sent Items, and Deleted Items for unexpected items, but can do so more infrequently.

With that said, I would also like to talk about direct booking and its advantages and some considerations while using it.

 

Why direct booking?

 

Direct booking is an Outlook-specific feature that uses the organizer's Outlook client (Outlook 2000 or later) to book an appointment directly into a resource mailbox schedule. The Outlook client of the person organizing the meeting performs all the necessary tasks, such as conflict checking and placing the reservation on the resource calendar. To set up direct booking, follow:

 

291616 How to direct book a resource in Outlook 2002 or in Outlook 2003

http://support.microsoft.com/default.aspx?scid=kb;EN-US;291616

 

Advantages of Direct booking:

 

  1. Immediate confirmation/denial of booking request.

  2. It has the logic to avoid double-booking.

With these advantages in mind, some disadvantages of Direct booking include:

  1. Direct booking requires granting organizer read/write permissions on the calendar. Hence, users can just go onto the resource's calendar and delete existing meetings to free up space for their own meetings.

  2. Organizer must remember to designate resource as "Resource" and not "Required" or "Optional". No conflict checking is done if resource specified as one of the latter (rule on resource's inbox should be created to generate reply to this effect).

  3. Since there is availability against free/busy, latency in free/busy replication can result in double-booking.

  4. Conflicts aren't detected beyond the range of published free/busy and can result in double-booking.

  5. Outlook Web Access does not currently support the "direct booking" of meeting requests.

Direct booking should not be used in conjunction with automatic booking done by the Auto Accept Agent. There is also configuration associated with direct booking that could conflict with Auto Accept Agent settings. For example, the default setting for direct booking is to accept all requests, regardless of conflicts. There is also a direct booking setting that automatically declines all recurring requests. These settings are only honored by Outlook and only when the resource is specified as a resource attendee. You should not register a resource mailbox for Auto Accept Agent in Exchange 2003 when you set up a resource for direct booking in Outlook. This is discussed in the below article

903290 You should not register a resource mailbox for Auto Accept Agent in Exchange 2003 when you set up a resource for direct booking in Outlook

http://support.microsoft.com/default.aspx?scid=kb;EN-US;903290

 

Cluster Server Installation Notes

 

I also get asked if the agent can be installed on a cluster. Installing the Auto Accept Agent on a cluster requires only minor considerations. The installation of the binaries is the same as installing on a standalone server. However, Auto Accept Agent must be installed on each node that may be used for failover. If Auto Accept Agent is not installed on a passive node, meeting requests will be orphaned in the resource mailbox Inbox if this node is made active. Since the agent starts only when needed, there is no need to change the service startup settings. Because the configuration is file-based, it is important to use the same settings across all nodes in the cluster. If Auto Accept Agent is running on multiple active nodes, any per-mailbox settings must be put in all AUTOACCEPT.CONFIG.XML files. This file can be copied to all nodes of a cluster.

 

Mailbox sink registration must be done using the active node which hosts the mailbox. Although passive nodes must have Auto Accept Agent installed, they are not actually running Exchange services and are incapable of performing the mailbox registration. There is no need to make a node active to install or remove the Auto Accept Agent.

 

In next blog post: Troubleshooting Auto Accept Agent top support issues.

 

- Nagesh Mahadev

63 Comments
Not applicable
Thanks for a very good post here!
Not applicable
Great article for those who didnt know the differences and advantages of AAA. Good job. I would also like to see some troubleshooting tips. We have AAA in our organization and I barely know what to look for.
Not applicable
Just what the Dr ordered - we are currently migrating from Exch 5.5 and are actively debating how to migrate DB of resources. One drawback to DB that you did not mention is having to create a user account for the resource. AAA seems like a good alternative.
Not applicable
I've worked with the 5.5 Autoaccept scripts in the past and also extended them to include features not provided by the original scripts.  I am pleased that the 2003 version now includes much of this extended functionality but there is still one significant omission - the ability to notify a designated contact of any schedule changes within a given resource calendar.  The simple ability to CC a designated contact with any newly accepted booking, update or cancelation would address this need.  The absence of this functionality in the 2003 AutoAccept scripts is the one feature preventing this from being a usable solution in our environment.
Not applicable
Bruce thanks for your comment. I will see if I can incorporate this in my future blog on AAA.
Not applicable
Dan thanks for your feedback. I was wondering about the thought process on CCing a designated contact. Can you elucidate more on why a contact. Maybe we can see if something along the lines of what you need maybe incorporated in the near future if we dont have it now.
Not applicable
Hurray, 2 week vacation starting today ;-)

How to enforce Microsoft Outlook cached mode via...
Not applicable
Thanks for the response Nagesh!

The though process primarlily relates to an auto-booking scenario where there is human intervention required such as the following:

A meeting room and a video conferencing device are both listed as seperate bookable resources in the Exchange GAL and enabled for AutoAccept booking.  A designated contact (let's call her Sally) from the Audio Visual Department is responsible for ensuring that the video conferencing device is setup in the designated time and place.

Let's say I book a meeting for Wednesday afternoon from 2:00 - 4:00 and I invite both the devices.  They are both available and autoaccept my request.  On Wed morning Sally checks the schedule and sees that she needs to set up her device in room #403 at 2:00.  She will be unaware of changes that might occur between when she first checks the Calendar in the morning and when the device is scheduled. The reason for the change could be that I have cancelled the meeting, changed the time, or maybe got bumped out of the room I wanted by someone with more authority and needed to change the location.

You could argue that the resource owner should have the resource Calendar open constantly but our users who manage the setup of these devices will only accept the autobooking functionality if we can provide this real-time notification when booking changes occur.

We have looked for ways to use rules to accomplish this functionality in conjunction with the AutoAccept scripts but since any "check messages after sending" rules are client-side only, we were not able to make this work seamlessly.

Hope this makes sense!  BTW, all the functionality that is included with the 2003 scripts works great and I would highly recommend it for most implementations that don't have these more advanced requirements.
Not applicable
Nagesh, I just re-read your post and perhaps I am confusing the matter with my poor choice of words.  Notifying an Exchange contact (as opposed to a user) is not the requirement here.  We just neeed the ability to CC another mailbox from the Exchange GAL.
Not applicable
What are the risks of using more than 6 months of window when booking a appt?

Thanks!
Not applicable
Brian, the booking window can be changed to be longer than 6 months if necessary. Whether the window is treated as a “hard limit” is actually controlled by a setting EnforceBookingWindow that allows the booking window to be “weakly” enforced.  The meeting is essentially “truncated” at the 6 month mark (or whatever the booking window is set at).

However, to avoid problems with organizers not realizing that their room has “run out” after 6 months, using the hard limit is probably the best configuration. With that said, I dont see any other risks. You can change the booking window but would have to educate the concerned people.
Not applicable
Dan, so what I’m getting out of this is that you want Sally to be notified if there is a change made to the resource. I don’t recall a way to customize that through the xml file. I’ll see what I can find. Sorry for the delayed response.

Thanks,
- Nagesh
Not applicable
Dan, the functionality that you are looking for isn’t in the product (that I can find). One way to get around it might be to do an event sync, maybe when an item is added to sent items, that forwards it to the user.Sorry.
Not applicable
Thanks Nagesh.  You are correct that in the scenario described, we would want a method of notifying Sally with an email anytime a change is made to the resource.  Would you expect that this functionality may be provided in the future?  Currently we are looking at a third-party product to accomplish this but it seems like a relatively trivial addition to the existing agent.
Not applicable
Dan I will definitely pass this feedback to Dev and see if this can be incorporated in the future or if it is already in the next version of Exchange. Thanks for the suggestion Dan. I will keep you posted.
Not applicable
Dan I will definitely pass this feedback to Dev and see if this can be incorporated in the future or if it is already in the next version of Exchange. Thanks for the suggestion Dan. I will keep you posted.
Not applicable
How do I make sure a resource is not configured for direct booking before configuring the resource to use the Auto Accept Agent script?  I couldn't find anything in the Deployment Guide or Microsoft's KB on how do do this?
Not applicable
Mike, the quickest way to figure this out would be to create a profile for the resource mailbox, log into it using Outlook. Go to Tools | Options | Calendar Options | Resource Scheduling - If "Automatically accept meeting requests and process cancellations"

or any of the check boxes are selected, then this resource mailbox is configured for direct booking.



How to direct book a resource in Outlook 2000, Outlook 2002, or Outlook 2003

http://support.microsoft.com/default.aspx?scid=kb;en-us;291616



Hope this helps.

- Nagesh

Not applicable
Dan, we are incorporating Auto Accept Agent functionality out-of-the-box in E12, with some significant additions to the E2K3 AAA functionality including custom per-mailbox responses and finer grained controls over who can book and when.  The particular feature below is not in the plans, but E12 web services will allow for notifications on calendar changes. I dont have much information about E12 web services at this time.

Hope this helps
- Nagesh
Not applicable
Nagesh,

Would the things Dan requested be as simple as making the user a Delegate and forwarding meeting requests to them. I do believe when something updates that the delegate is notified as well.
Not applicable
George, if you set up a delegate, the current configuration for resource mailboxes is for only the Delegate to receive copies of meeting requests. Forwarding meeting requests only to a delegate causes two issues with the AAA function and management:
1. No copy is saved in the resource mailbox's inbox. Because the sink is triggered by the OnSave event, it is required that the request actually be saved in the Inbox.
2. When both the delegate and the resource receive meeting requests, there is no clear indication that the request has been processed by AAA.  This would cause Sally a good deal of confusion – she would have to cross reference each request with AAA responses.

To overcome these issues, it is recommended to configure the mailbox to no longer send meeting requests to the resource mailbox's delegate

Hope this makes sense.

Thanks,
- Nagesh
Not applicable
I'm having a problem with Auto Accept. When I first installed AA, whenever I booked a couple of test meetings for our resource, it would give me a popup confirmation saying it was successfully booked. It would do the same for when it found a conflict, would not let me book it until I picked a free time for the resource. Now it's not doing this. It's just going ahead and sending the email to the invites, but it does send me a Decline email saying there was a conflict. This is nice, but I would rather get a popup prompt when the user tries to schedule, instead of it emailing everyone, and THEN saying the meeting was declined. Any help?
Not applicable
Hi everybody,

we're using Auto Accept Agent and now have some new issue. What we need is the same thing like Auto Accept Agent, but it should not deny the request when there is a conflict... I know that the Auto Accept Agent is only for booking ressources, but it would be perfect, if there could be somekind of parameter to set, so that the Agent does allow conflicts not only with recurring meetings.

Any suggestions?

Thanks in advance

Matze K.
Not applicable
This is an excellent read for those who are testing auto accept agents.. Thanks Nagesh...
Not applicable
Tommy, I have 2 more blogs coming up on troubleshooting. Is this happening with all resources or some resources? Do you still see the problem with a new resource?
Not applicable
Tommy,


Direct Booking and Auto Accept do not play nice together. See

http://support.microsoft.com/default.aspx?scid=kb;EN-US;903290 for additional information.

Not applicable
Matze I am in the process of verifying something with the product team. Please hang tight and I will post a reply regarding your question soon.
Not applicable
Matze, there are no plans to add more functionality to the E2K3 Auto Accept Agent.

For E12, however, we are adding an “AllowConflicts” bool that will allow unlimited number of conflicts (including single meetings) if set to true.

Hope this helps.
- Nagesh
Not applicable
Matze, there are no plans to add more functionality to the E2K3 Auto Accept Agent.

For E12, however, we are adding an “AllowConflicts” bool that will allow unlimited number of conflicts (including single meetings) if set to true.

Hope this helps.
- Nagesh
Not applicable
Currently, we are only using one resource. THis is a new domain.
Not applicable
Thanks Nagesh for the quick reply,

this will help if AutoAccept for E12 will work on E2K3. I think the AutoAccept feature will be integrated in E12? So we have to upgrade to E12 whenever it's released... This would help but we just bought the E2K3 and i don't think that we can afford an upgrade to E12 soon.

Is it possible to program a modified event sink who does nothing else than accepting meeting requests? has anybody a suggestion how to do this? Are there any source-codes of AutoAcceptAgent so i could modify it myself?

Thanks in advance

Matze K
Not applicable
One thing I'm trying to figure out is if I use the direct booking will I receive a reply from the resource if it has been successfully booked?
Not applicable
Hi,

I'm having the exact same problem as Tommy - I use 8 different resources and only one of them (which is setup exactly the same as the rest) displays the dialog box when users book a meeting saying whether or not it was successfully booked.

Matt
Not applicable
Gates, yes, but only if you add the resource to the Resources when invited. You will get a pop up saying "The resources for the meeting were successfully booked"
Not applicable
Matt it looks like you have set up your resources for direct booking. When you mentioned it displays "dialog box" it makes me believe that you have direct booking and not AAA. If you are using AAA, you will get an email saying whethere or not the meeting was successfully booked. Am I missing something?
Not applicable
Definitely using AAA - direct booking is not used with any of the resources!  Yes the users do get an email saying that the resource has been booked but one of the resources displays the dialog box which is very helpful!  Checked that particular resource and direct booking is not enabled!
Not applicable

Matt, AAA is a tool that automatically processes meeting requests (message class:IPM.Schedule.*) sent to one or more resource mailboxes, such as conference rooms. The agent hosts a store event sink to handle meeting requests as they arrive in a resource mailbox. Once the agent is registered on the inbox folder of a resource mailbox, meeting requests sent to a resource mailbox are automatically processed by the event sink. The sink handles acceptance,cancellation and update requests and sends notifications to the organizer. It is odd to note that you get a dialog box. Is this mailbox specified in the xml file? Does this mailbox have any delegates? If so is the "Send meeting requests and responses" check box checked by any chance! Even with that I wouldnt think the dialog box should pop up.
Not applicable
Is the Auto Accept Agent the only way to get a reply from the resource then?
Not applicable
This brings up something I have been facing for some time.  When users are terminated and they have booked several resources.  How do I clear that out?
Not applicable
Gates, yes and no. Yes from AAA vs direct booking perspective. No because you can write your own sink that can emulate AAA or as an add-on to AAA
Not applicable
Sounds like AAA is the simplist way to go then.
Not applicable
This post is a 2nd in the series talking about Auto Accept Agent (see the 1st post here). As mentioned...
Not applicable
Robert, good question. The recommendation is to use the Exchange Mailbox Manager to automatically purge the AAA managed mailboxes.  The mailbox manager runs on designated servers and purges mailboxes based on recipient policies.  This allows the Exchange administrator to select the exact mailboxes that will be examined and which messages (by age and size) that will be purged. The recommended recipient policy should select only the mailboxes that are being processed by the Auto Accept Agent.  The filter for the Mailbox Manager recipient policy will query by Alias and Information Store database.  Since the AAA managed conference rooms will generally be consolidated onto the same database, this is a reliable method of scoping the filter to the right mailboxes.  Since there is no need to set any special AD attributes, the amount of administrative overhead is kept to a minimum.  The one draw back is that any mailbox that ceases to be AAA managed will continue to be affected by Mailbox Manager until it is moved to a different database. The one short-coming of the mailbox manager is that it does not purge recurring appointments.  This is an explicit part of the design to avoid premature deletion of still active recurring meetings. You will have to do it manually.To stop the AAA from processing meeting request for a specific mailbox, unregister the sink from the mailbox. The REGISTERMAILBOX.VBS script includes an uninstall option (/U) to perform this task.REGISTERMAILBOX.VBS must be run from the console of the Exchange server. There isn’t a remote administration option with this script.

Not applicable
I have the AAA setup and working.  I had one question when I cancel a meeting is it supposed to send a cancelation message back to the meeting organizer?
Not applicable
Yes Gates. If you choose to "Send cancellation and delete meeting" or do a "Send update", the meeting organizer will get a cancellation message back.
Not applicable
I don't receive on from the resource.  Do I need to turn this on?
Not applicable
One thing I did not see, does the AAA delete canceled meetings or do you need to setup Mailbox Manager to remove them?
Not applicable
This is a 3rd blog post on the subject of Auto Accept Agent. You can go here to see the 1st one and here...
Not applicable
Gates you dont need to turn it on. It should be on automatically.
Not applicable
Do you know of a way to run the RegisterMailbox.vbs script remotely, passing it an /M:blah@blah.com address?