Wednesday, January 27, 2010

Exchange 2007 Calendar Issues fixed with Rollup2

On 1.22.2010, Microsoft released Rollup2 For Exchange 2007 SP2.

Here are the calendar-related issues that Rollup2 addresses:

970817 An appointment is displayed incorrectly as an all-day event if you use a mobile device to synchronize the calendar in Exchange Server 2007

971177 The Auto Attendant 'Business Hours' schedule is not updated in Exchange Server 2007 when the DST setting is changed

971349 Exchange Server 2007 users intermittently cannot access an Exchange Server 2003 user's Free/Busy information in Office Outlook 2007

973969 Incorrect exceptions are generated for a recurring iCalendar message when an Exchange Server 2007 server processes an SMTP message that contains the iCalendar message part

974161 Some attendees cannot receive a meeting cancellation notification when the appointment recurrence pattern is changed by using EWS in Exchange Server 2007

974999 The "Task Owner" field is not set when you create a task in Outlook Web Access

975165 EWS proxying requests fail after you run Availability Service requests in a CAS to CAS proxying scenario in Exchange Server 2007

975404 An attachment of a meeting request cannot be opened when you use a CDO application to accept a meeting request in Exchange Server 2007:

975903 The RemoveDelegate operation of EWS fails, and then a "500 internal server" error response and event ID 4999 are logged in an Exchange Server 2007 server

976025 The free/busy information of an Exchange Server 2007 user is not displayed

977091 The time for an updated meeting request is incorrectly shown in an exception instance of a recurring meeting request on an Exchange Server 2007 environment

Thursday, January 14, 2010

Zimbra Calendar / Tasks / Contacts to Exchange 2007/2010 Migrations

Update November, 2011.  If you're interested in Zimbra to Exchange calendar migration, see our newer posts on a faster, simpler method.  http://calendarservermigration.blogspot.com/2011/11/faster-easier-zimbra-ics-to-exchange.html


December was a busy time at the Sumatra HQ.

We averaged two migrations a week and got three inquiries about migrating calendars from Zimbra to Exchange -- one of which we consider credible in that they kept a dialog going.

So, after a few weeks of skunk works development (which is an oxymoron here), we've got Zimbra calendaring, tasks, and contacts migrating into Exchange 2007/2010, with full state information intact.

Of course, if you want to take calendar data INTO Zimbra we can still do that. But we are kind of psyched that this is the first calendar we'll take you into or out of.
Keep in mind, you could export your ICS files and import them into Exchange (try it and see if that preserves your guest responses) or you could just move PSTs (again, try it). Our process re-creates the guest lists and responses of the calendar data on the Exchange side and it does it server-side with no end user interaction.

Wednesday, November 25, 2009

Oracle Calendar Server Designate to Microsoft Exchange Delegate Migration

Trying to get Outlook Delegate Permissions:


from Oracle Calendar Server Designate Access Rights


can be tough.

We just made the Oracle Calendar DESIGNATE to Microsoft Exchange DELEGATE migration simpler (and removed PFDAVAdmin from the equation, while it worked it was a complicated pain in the neck).

Now under the processing stage check box in our insertion code is an option called "Set Delegates"

It takes a converted designates export file, as we've previously told you how to build, and will set those according to these rules:

  • Users must be VALIDATED
  • NO delegates are set to see PRIVATE items on Exchange
  • NO delegates are set to receive Meeting Invitations
  • There is no UNDO for Delegates

Here is the “get-mailbox fl” command that shows Russ has been set as Zyg's delegate


In the database:

If Delegate is true then the user is assigned as an EDITOR

If ReadONLY is set to true, then the user is assigned as a REVIEWER
If ReadONLY is set to FALSE, then the user is assigned to AUTHOR

Here is the commandlet to WIPE OUT ALL DELEGATES, regardless of who set them:

get-mailbox -ResultSize unlimited where {$_.Servername -like "Server" -and $_.GrantSendOnBehalfTo -ne {}} Set-Mailbox -GrantSendOnBehalfTo $null

(Remember to change “SERVER” to your server name!)

We suggest you use this in your TEST environment for verification purposes.

Tuesday, November 10, 2009

Insert Holidays Server-Side into Exchange 2007

Done.

Ship it.

The Sumatra Utilities for Exchange 2007 are now available for download.

Keep in mind, they won't just insert holidays for the 2010 calendar year, they'll also let you:

  • Check for broken meetings in your conference rooms
  • Gracefully remove terminated user meetings
  • Extract resource use data you can then analyze in a spreadsheet (not full ResourceWatch but it gives you easy access to data that was hard to get before)
  • And if you want to start using them to develop your own applications (we've got one business school that's done that and another evaluating), we can do that as well.

Saturday, November 07, 2009

Sumatra Utilities documentation is out

A quick update on the Sumatra Utilities for Exchange 2007: we've field proven them in an East Coast medical school with over 8000 users.

Insertion of 10 holidays for these users took about three hours.

We consider that a success.

We're running our final regression testing on them now but we can give you the link to the documentation (Word format).

http://www.sumatra.com/Sumatra%20Utilities%20Manual.doc

Stay tuned.

Friday, October 30, 2009

Impersonation in Exchange 2010

Quick tip: Impersonation in Exchange 2010 has morphed from setting ACLs to Role Based Access Control (RBAC). It could not be easier to impersonate users in the entire domain:

new-ManagementRoleAssignment -Name:_suImpersonateRole
-Role:ApplicationImpersonation -User:'xxx@xxx.xxx'

Here is a link to a Microsoft TechNet article: Understanding Role Based Access Control

Thursday, October 29, 2009

Sumatra Utilities for E2K7 available next week

We're not trying to drive you crazy -- just trying to make sure everything works and getting our legalese squared away.

The Sumatra Utilities for Exchange 2007 (including holiday server-side insertion capability) will be available next week.

Keep checking here for updates.

Monday, October 26, 2009

FullAccess fails with the error: The specified folder could not be found in the store.

I have been banging my head against the Exchange 2007 brick wall for the last month over the error: "The specified folder could not be found in the store."

Sumatra's conference room analysis tool's Exchange Web Service calendar folder "FindItem" request failed for about 5% of the rooms at one client. Other clients do not have this problem! The service account had FullAccess to all rooms. All conference rooms were on the same Exchange mailbox server, in the same OU, configured to autoaccept. Some had delegates, some did not.

The client could use the service account credentials to access the calendars via OWA. Was it a corrupted meeting? We changed FindItem's interval. No luck. Was EWS timing out over a large mailbox? Increased the HTTP timeout. No luck. Our FindItem requet uses the DistinguishedFolderID. We called GetFolder to find the FolderID. It failed on the inbox with the message "The specified object was not found in the store", and for the calendar folder with the message "The specified folder could not be found in the store".

Ahha! The permissions were not inherited. We added "InheritanceType: All" and it worked. Here is the syntax:

Get-Mailbox -filter {isResource -eq $True} -Resultsize unlimited
Add-MailboxPermission -User: xxxx -AccessRights: FullAccess
-InheritanceType: All

Tuesday, October 06, 2009

Holiday insertion server-side in Exchange 2007

Remember the Sumatra Utilities for Exchange 2003 and their beloved server-side holiday insertion capability?

And you remember how every year you ask us if we've done it for Exchange 2007?

Well, we (finally) rebuilt it for Exchange Web Services. Check out this example.

Friends of Sumatra can use this at no charge (you all know who you are) so just ask us and we'll send it out.

For everyone else we're actually going to charge for the capability this time.

Which brings me to the purpose of this posting: If you have any preferences on how we should do this -- drop us a line. If you do not know our emails you can use our contact form.

Oh yeah -- this is also going to include the broken meeting check, the terminated user utility, and the interface for managing conference room statistics (the full application for the last one will be a separate follow-on offering).

Monday, September 28, 2009

500 errors on test insertion into Exchange 2007?

When you get a "500" error on validation or a test insertion, please verify your:

  1. CAS/MBX boxes are members of Windows Authorization Access Group
  2. Impersonation permissions stuck (and are not denied) through Active Directory Sites & Services
  3. Service Account is NOT a member of any Exchange Admin Group/Domain Admin group

Monday, September 21, 2009

Oracle Calendar / Meeting Maker to Google Calendar Migration

OK, for street cred, we did a Meeting Maker (it will work with Oracle or Sun Java Calendar as well) to Google Calendar migration extension.


Keep in mind, we'll morph this as it makes contact with the real world. Here's how it currently works.


We use our tools to produce ICS files. Not a problem for appointments, but for meetings the idea is to make them live.


Here's how we do it. We insert the emails of the attendees into the OWNER's agenda.




She or he can find these really easily after inserting into Google by searching for "(re-propose)" Open it and highlight the emails, copy / drag them into "Guests"

SAVE it and SEND it:
Voila, live meetings, simple, inexpensive, and done.


There's a few issues: I think we'll load all the To-Dos into an All-Day Event on the day of the migration (since Google doesn't have an import/export capability for Tasks yet).

We migrate Contacts via CSV files.

We looked at automated ways of uploading, but the Google Calendar API does not support uploading via ICS. So we're sitting on XML uploads via cURL until we have a corporate customer (which means we are not holding our breath).

We think it's more likely a corporate customer is going to want to get OUT of Google Calendar and into Exchange (you listening, Roche?).

NB: We only handle "re-propose" for meetings which have not yet ENDED -- any other meetings get turned into appointments in everyone's calendar.

Wednesday, September 09, 2009

Smartphones and your calendar server migration

We go over this a lot with folks and it's worth blogging about.

Let's say you're switching your calendar server and you've got BlackBerrys, Smartphones, ancient PDAs, whatever connected to your old server. And you want to use the same product when you're done in your NEW environment (let's call it Exchange).

Our recommendation is that as part of your migration process you blank out your calendars in your source system and re-synch completely on your target.

Why? Because the synch usually keeps track based on something called UIDs (or Universal Identification Numbers). You change your calendar server, you change your UIDs, and if you're not careful your Smartphone will get data from BOTH systems (and this is a hassle).

While migration is going on we strongly recommend turning off your BlackBerry server. Why? Sumatra generates a lot of email as part of re-creating end-user calendars in Outlook. While Sumatra’s insertion technology removes almost all of that email from end user’s in boxes, it can not remove those messages delivered to your device via the BlackBerry Exchange Server. So depending on your migration option your BlackBerry users will either be flooded with a lot of email (no EventSink) or some email (EventSink).

Since your BlackBerrys, Palms, or WindowsMobile PCs is synched with a system that is obsolescing – you will need to clear the calendars when you shut down your Oracle Calendar / Meeting Maker / Sun Java Calendar / etc. server, then have your users re-synch after the migration is completed.

BlackBerry

For clearing the calendar on the Blackberry – see the following webpage:
http://www.blackberry.com/knowledgecenterpublic/livelink.exe/fetch/2000/8021/7925/8142/How_To_-_Reset_the_BlackBerry_device_calendar.html?nodeid=1201826&vernum=1


Palm

For clearing the calendar on a Palm OS, you might use the Purge function:
http://kb.palm.com/SRVS/CGI-BIN/WEBCGI.EXE?New,kb=PalmSupportKB,CASE=obj(5029),ts=Palm_External200173


Windows Mobile (Pocket PC)
For Windows Mobile, you can:
· Open ActiveSync
· Double Click on Calendar.
· Change the settings such that it syncs only 0 past and 0 future appointments.
· SYNC - this will clear all calendar items on the IPAQ / most other Pocket PCs.
Note: Some earlier ActiveSync versions attempt to interpret the default Sumatra Category as a date field. If you have Windows Mobile PCs you should remove the keyword AFTER you have done your quality assurance testing on the migration. Sumatra also has a COM add-in for Outlook that will accomplish the same thing on a user-by-user basis.

NotifyLink

Updated September 10, 2009 with info from Notify Technology.

Migration for NotifyLink Enterprise Server (NLES) Users with recent versions.

An administrator must:

  1. Make sure the NLES server and device software are up to date.
  2. Create the new mail and PIM servers
  3. Open the user administration list and for each user to be moved, select the “Edit User” button.
  4. On the “Edit User” page, switch the email and PIM servers to the new servers that were created.
  5. This should all be done after the actual migration is complete on the server side. Notify Tech claims their software should handle the rest. It should re-prime accounts and issue full resynchronization commands. The device PIM stores will be automatically cleared and reloaded with the new account info.

    Earlier versions of their software ran a more complicated, non-automatic process.

Saturday, September 05, 2009

"Run-As" for Vista/Windows Server 2008

Wondering how you can get the "Run-As" back in the context menus for Vista and Windows Server 2008? Thanks to Sysinternals Mark Russinovich and Jon Schwartz it's easy. Their tool ShellRunAs is located here: (http://technet.microsoft.com/en-us/sysinternals/cc300361.aspx)

It's easy to use - Unzip and move shellrunas into windows\system32. Then type the following in the start/Run command line: shellrunas /reg. That's it. Right click on an item to see "Run as different user"

Russ

Friday, September 04, 2009

When the Cloud disappears why does everyone not fall to earth?

Gmail went down again on September 1, 2009.
My schadenfreude finally met my Weltanschauung.


Of course, I got THIS one at 3:43 PM PDT which was DARNED confusing:

So with everyone who's been looking to migrate into Google Calendar: be really careful what you ask for.
And to everyone already there: migrating OUT of Google Calendar into Exchange is a LOT easier than a real time server-side synch between the two.

Thursday, September 03, 2009

Yes, we joined Twitter

You can now find us on Twitter:

http://twitter.com/sumatra_dev

We're sending all our future blog postings there, too.

Facebook is just not a natural match for us, though.

Monday, August 31, 2009

Migrating Resource Scheduler Data into Exchange 2007

No sooner was one of us back from the Seattle Opera Ring Cycle (Janice Baird rocks!) than we got one of our favorite types of inquiries: Can we get data out of Resource Scheduler and into Exchange 2007 native?

Short answer: Yes.


If you're primarily using Resource Scheduler to book rooms (something Exchange 2003 did not do well) and want to take advantage of the newer (and better) capability in Exchange 2007, this is very doable. We've already figured out how the Resource Scheduler SQL schema is structured and can simply modify and re-propose the meetings with mailbox-enabled resources on E2K7. With this knowledge if you want to try to write this code yourselves, go ahead, but be forewarned, it is harder than you think.


In contrast to the hundreds of calendar migrations we've done, this is more of an informed consent clinical trial right now, but if you're interested drop us a line. The more interest there is the more likely it is we'll proceed with development.


You should also read: Resource scheduling in Exchange Server 2007 and Using Exchange 2007 for Resource Booking. For the truly adventurous and technically adept, check out How to Create or Remove Custom Resource Properties.

Monday, August 17, 2009

Sun Java Calendar, aka iPlanet, full-state migration to Exchange 2007

Sun Java Calendar Server, previously known as Sun ONE Calendar Server, and before that iPlanet Calendar Server (the darn thing has had more names than that "Diddy" guy) is now among our full-state, server-side migrations into Exchange 2007.


It kept popping up sporadically and just came around for a 5000 user migration. Then this opportunity turned into a 500 user migration with a budget that would cover a few blended drinks at Starbuck's and we were wondering how we were going to make any money out of it. As any of you know, we're market-driven.

So here's how it's working.

We use Sun's WCAP protocol to extract the calendar and task data.

We run it through our conversion tools to morph into our intermediate format from which we can map user IDs and do all sorts of other wondrous things.

Then we insert it into Exchange 2007 using EWS (we parted ways with the now-deprecated CDO way back after Exchange 2003).


A few notes:

Recurrence patterns in Sun Java Calendar are a 1:1 match for Outlook, so we have thus far not seen any exceptions.


We can actually handle attachments. The big issue here is not the technical aspects of attachments, but the logistical ones. Often when running a migration the amount of data can cause low-set quotas to be exceeded pretty quickly, and you don't want to run into that at 2:00 AM on a Saturday. So we recommend extracting to a common directory and just passing a link to the attachment in the Agenda field. If you can avoid migrating them entirely, so much the better.

SJC has a limit on "on-going" meetings. Outlook / Exchange do not -- so we simply set an SJC "ongoing" meeting to an Outlook meeting with No End Date.

A word on versions.

We do version 6.x. With a little bit of prodding (in the commercial sense) we could be convinced to make it work for Sun ONE / iPlanet 5.x.

Future version 7 (now in beta) - we are not guaranteeing. You want to check out Calendar Server 6 and Calendar Server 7 Comparison and Coexistence. Since Sun does not currently have a migration path between 6 and 7 we're not anticipating we'll need to have a version 7 migration to Exchange path for a while.

However, since Calendar Server 7 us apparently based on MySQL (see : Best Practices for Backing up and Restoring MySQL Databases in Calendar Server Deployments) we are very optimistic a full-state migration will just involve reading their database and morphing it into our schema.

Bigger question is: Will Version 7 even make it out the door when the Oracle acquisition is final? Oracle is not likely to keep supporting two past-their-prime calendar systems.

Friday, August 14, 2009

Meeting Maker to Google Calendar field test results

It's been a productive few weeks.


We just used our existing iCalendar tools to export a few Meeting Maker calendars for a site that wanted to go into Google Calendar.


With a little surgery (removing our Time Zone DST definitions) and using the Zulu time option, the data actually imports pretty well. The above example is real-world data.


Now there's a couple of things it doesn't do right out of the box: banners are currently off kilter (this is an easy fix), and we're not sure it's worth replicating the full set of state data for guests (because nobody else does it and everybody going into Google Calendar is price-constrained), but it's not that hard to at least put the guest list into the Description field.

As you know, we actively solicit your feedback.

Saturday, August 01, 2009

Migrating to/from Lotus Notes/Domino Calendar from/to something else?

It was a glorious summer day in Boston and of course I could think only of calendars.

Having come off installing Yellow Dog Linux on my PS3, I thought "How much geekier can I make the day?" OK, I actually thought "how soon can I fire up the grill?" but the lack of high-quality Chilean sea bass caused me to re-think my plans.

So given that one of the development guys warned me that there was no way I could possibly set up a Lotus Domino configuration on Linux by my own self, I had to prove him absolutely correct and generate this sample calendar. (BTW: If you try doing this on Fedora, remember to shutdown sendmail or Domino won't come up due to a port conflict.)

Needless to say - yes, this means we're looking at full-state migrations out of Lotus Notes and into other less "legacy" environments. Our first impetus is someone who wants to take a few thousand Meeting Maker seats and put them INTO Lotus Notes, but we can work in stages.

More later.

Thursday, July 30, 2009

Exchange 2007 Rollup 9 for SP1

MS released Exchange 2007 Rollup 9 for SP1 last week. The KnowledgeBase article (970162) reports twelve calendar, Outlook/OWA-related fixes:

  1. 954739 Exchange Impersonation feature does not work if a cross-forest topology has only a one-way trust relationship between forests (Ex07SP1)
  2. 961124 Some messages are stuck in the Outbox folder or the Drafts folder (Ex07SP1)
  3. 961544 Mobile users whose location is set to New Zealand cannot synchronize an exceptional occurrence after the daylight saving time (DST) update (KB 951072) is installed (Ex07SP1)CAS server
  4. 967479 Entourage clients cannot synchronize with mailboxes (Ex07Sp1/Win 08)
  5. 967525 Error 4 is returned when you synchronize a supported list of contact properties by using Exchange ActiveSync(Ex07SP1)
  6. 967676 E-mail address properties of contacts changed through Exchange Web Services (EWS) are not updated in Outlook or Outlook Web Access (OWA)(Ex07SP1)
  7. 968081 Monthly recurring meetings are declined if the "Schedule only during working hours" option is enabled(Ex07SP1)
  8. 968350 When you change the location field of a recurring calendar item to empty, the location field is set to the default value of the recurring series if this recurring item is synchronized on a Windows Mobile device (Ex07SP1)
  9. 969054 Error message after user replies to a message that has more than 300 recipients in Outlook Web Access (OWA): "Microsoft Exchange issued an unexpected response (500)" (Ex07SP1)
  10. 969324 Outlook crashes when you try to use Outlook to view e-mail messages that are arranged by subject in (Ex07SP1)
  11. 969838 An error message is returned when a user tries to change a recurring appointment in Office Outlook Web Access that was created in Outlook 2007 (Ex07SP1)
  12. 969969 OWA Error "Outlook Web Access has encountered a Web browsing error" when a user tries to delete a calendar item