What is it?

Offline access in Outlook Web App for Exchange 2013 lets users use Outlook Web App even when not connected to a network.

Offline access is newly available in Outlook Web App on the following web browsers.:

For more information about the offline user experience, see Using Outlook Web App offline.

What data is available offline?

Mail

  • Users will be able to see all their folders, and content in all offline-supported folders.
  • Offline-supported folders include:
    • Inbox
    • Drafts
    • Any folder viewed from the browser in the last week
  • For each offline-supported folder, users will have 3 days of content or 150 items, whichever is larger.
  • Attachments are not available when offline.

Calendar

  • Reminders will pop-up for meetings and appointments
  • Current month and upcoming year of calendar
  • Multiple calendars are not available when offline

People

  • All Contacts
  • Anyone the user emails often or has emailed recently
  • The Auto-Complete cache (the list of matching names that appear as someone is added to a message)

What user actions are supported offline?

Scenario What you can do:
Read email
  • Read messages
  • View in-line images within a message
  • Read IRM-protected messages
  • View conversations or items by date
Email triage
  • Delete messages
  • Mark as read/unread
  • Flag messages
  • Move messages
View and be reminded of upcoming events
  • View by day, week, or month
  • Get reminders for appointments and meetings
  • View meeting series
Find and act on contact information for someone you already know
  • View all contacts
  • View contact details
  • Change sort order “i.e. View by company”
Write or send a message
  • Compose a new message
  • Reply, reply all, forward
  • AutoComplete recipient names/addresses
  • Save to Drafts
  • Edit existing drafts
  • Open Outbox items and edit (becomes a draft)
  • Compose IRM-protected message
Add or update contact info
  • Create, edit, delete Contacts
Add appointments or meetings to your calendar
  • Create or edit single appointments
  • Accept/decline meetings
  • Delete (any calendar item)

Note: Users can’t search or sort messages while offline

Protecting data

Setting up offline access through a browser starts a process that copies mailbox data locally into a web database storage location. This is determined by the browser, and is typically a file or set of files on disk. For example, at the time this post was written, IE10 and Chrome browsers used the following file locations for their web database storage (on Windows):

  • Internet Explorer: %systemdrive%\Users\%username% \Local\Microsoft\Internet Explorer\Indexed DB
  • Chrome: %systemdrive%\Users\%username% \AppData\Local\Google\Chrome\User Data\Default\databases

The data stored for offline use is accessible through the Windows user account under which it is enabled, and is not encrypted. Like the other files on the computer, the best way to protect it is to use disk-level encryption such as Bitlocker.

Organization Policy Controls:

By default, users are able to set up Outlook Web App 2013 for offline use. You can disable the ability for users in your organization to use Outlook Web App offline using the following Exchange Management Shell (EMS) commands:

To set offline access for an Outlook Web App mailbox policy, use:

Set-OwaMailboxPolicy –AllowOfflineOn [NoComputers | AllComputers | PrivateComputers]

To set offline access for an Outlook Web App virtual directory:

Set-OwaVirtualDirectory –AllowOfflineOn [NoComputers | AllComputers | PrivateComputers]

Deep Dive: How does it work?

Getting and storing mailbox data:

The browser’s local database stores some of the content of the Exchange mailbox. In Internet Explorer, this database is an industry standard HTML5 IndexedDB database. In Safari and Chrome browsers, this is a WebSQL database. The browser (not Outlook Web App) decides where the data is stored, what the quotas are, and how the data is ultimately aged-out. When Outlook Web App is set up for offline use, a process begins to copy all necessary Outlook Web App data locally. On a high bandwidth network, this process will often complete in a minute or two. Once offline is set up, the process will run whenever Outlook Web App is in use, and make sure that any server-side changes are reflected in the local database

  • when Outlook Web App is first set up for offline use,
  • on Outlook Web App startup (after it’s been set up for offline use)
  • while using Outlook Web App, whenever anything in the Exchange mailbox changes

This process iterates through the Exchange mailbox, getting and writing updates to the browser’s local database in the following order:

  1. The data needed to update the message list currently displayed in Outlook Web App
  2. Calendar reminder notifications
  3. The latest Inbox list
  4. The latest message list of the rest of offline-supported folders
  5. People updates
  6. Calendar updates
  7. The content of messages in the current list
  8. The content of messages in the Inbox
  9. The content of messages in the rest of the offline-supported folders
  10. In-line images in any messages stored locally
  11. Each item in the above list is called a sync module

The amount of storage Offline Outlook Web App uses is bounded by the browser’s database quota. If the process hits browser quota while copying data, it pauses, and a back-off algorithm iterates through the above modules in reverse order, removing them from the local database until it is under quota.

Diagram: Offline storage model
Figure 1: Offline Storage Model

What happens when Outlook Web App goes offline

If the network connection fails or is disabled while Outlook Web App is in use, users can continue working normally. Similarly, a user can start Outlook Web App when offline, such as on an airplane or in a café without WiFi, and use it normally. Outlook Web App will appear without requiring that they sign in. The best way to get to Outlook Web App when offline is by using a favorite or bookmark. When Outlook Web App is set up for offline use, Internet Explorer will give the option of creating a favorite. The Favorite makes it easy to navigate to the right place. The only indication that the app is working offline will be a timestamp in the bottom corner of the Outlook Web App mail view indicating the last time that Outlook Web App was updated.

Other places that will differ between Outlook Web App in an offline vs online state are features that aren’t supported offline. For example, “Create Rule…” from right-clicking on a message, will show the same error message that would display if Outlook Web App was not setup for offline use.

When a supported action is taken while offline (for example, deleting a message), within a period of milliseconds the following sequence of events occur:

  • The delete will be applied to the view, which is cached in memory. The message will disappear immediately
  • The delete will be applied to the message in the local database, so that even if you stay offline across many Outlook Web App sessions, the item will appear deleted in Outlook Web App.
  • The delete action will be written to a queue that will be replayed as soon as connectivity to the server is reestablished. All offline create/update/delete activity is stored in this queue, which is stored as a table in the local web database. Outlook Web App replays this activity to the server the next time Outlook Web App is connected

Diagram: Offline Action and Data Synchronization Model
Figure 2: Offline Action and Data Synchronization Model

Outlook Web App determines network connectivity status based on the response of each web request to the Exchange server. As soon as network connectivity is detected, Outlook Web App replays the queue of offline activity back to the server, so that all clients will now reflect any work you’ve done while offline. After the queue is replayed and the server is up to date, the process to copy changes or new messages from the server to the local Outlook Web App database begins.

To store messages that were created offline, Outlook Web App creates an Outbox folder in the folder tree. This Outbox is local to the machine you’re on. Users can open and edit messages from the Outbox folder, at which point they become drafts and are moved to the Drafts folder until Send or Save is selected. Messages that are created and sent while offline will remain on the client until the next time Outlook Web App is open and connected to Exchange.

If the user regains network connectivity while working offline in Outlook Web App, they may be prompted to sign in again.

Sara Manning