My favorites | Sign in
Google
                
Search
for
Updated Jul 27, 2009 by darrell.kuhn
Labels: Featured
FAQ  

Frequently Asked Questions

This FAQ contains common questions and answers about the Google Calendar Connectors.


What are the technical requirements for running the Google Calendar Connectors in my environment?


Are the Google Calendar Connectors secure?

The Google Calendar Connectors use role accounts to interact with your customer's Microsoft Exchange environment. This allows the customer to decide what minimum level of privileges to grant the services in their environment.
The Google Calendar Connectors also uses the authenticated GData feeds to retrieve free/busy information from Google Calendar.
Google Calendar Connector Web Service uses HTTPS to communicate with Google Calendar when it detects Google Calendar is using HTTPS. This means the Google Calendar Connector Web Service can operate in HTTP or HTTPS mode, depending on whether Google Calendar is in HTTP or HTTPS. In general, Google recommends running Google Calendar and the Google Calendar Connectors in a mutual level of security; either both in HTTPS or both in HTTP.
The Google Calendar Connector Web Service does NOT provide an authentication layer for choosing which requests for free/busy information and appointment details to allow or dis-allow. Anyone who knows the URL address of your Web Service and has network access to its URL would theoretically be able to perform Microsoft Exchange free/busy look ups and, if enabled, retrieve appointment details to the same degree as any user of your Google Apps domain.

What is the Google Calendar Connector Web Service URL?


How do I register a Google Calendar Connector Web Service URL?

Login to your Google Apps Domain control pannel
https://www.google.com/a/yourdomain.com

  1. In the "Service settings" drop-down, select "Calendar"
  2. Scroll down to Free/Busy service
  3. Click on "Set up Calendar to use your free/busy web service"
  4. Select I am using a free/busy service at this URI:
  5. Enter the URI of the installed Calendar Connector Web Service
For example: https://mywebserver.acme.com/GCalExchangeLookup/Exchangequerier.aspx (Please review the project http://code.google.com/p/google-calendar-connectors/wiki/FAQ for more details and common questions)


How does Google Calendar Connectors determine which Exchange users map to Google Apps user?

  • There is a setting SyncService.LDAPUserFilter that controls what Active Directory users/contacts are in scope of the sync service.
  • The connector reads the Primary SMTP address of the Exchange user account or contact object. We use this e-mail address as the key between Exchange and Google Apps and vice verse.

My Exchange primary SMTP address is different than my Google Apps SMTP address. How do I setup the connector to understand this?

Google Calendar Connector Web Service:
  • Use the GoogleApps.GCal.DomainMapping setting in the configuration file to specify your internal SMTP domain name and your Google Apps domain name.
Google Calendar Connector Sync Service:
  • Use the GoogleApps.GCal.DomainMapping setting in the configuration file to specify your internal SMTP domain name and your Google Apps domain name.
Google Calendar Connector Pug-in:
  • Use the ldap.domainMap setting in the configuration file to specify your internal SMTP domain name and your Google Apps domain name. Using this setting in conjunction with ldap.whitelist and ldap.blacklist lets you control what users are in scope of the Google Calendar Connector Plug-in.

What servers does the Google Calendar Connector need to connect to within my company?

Web Service:
  • If enabled to return appointment detail every server that hosts a mailbox. Make sure if you have IP whitelisting configured that the sever running the Google Calendar connectors is also include in that whitelist.
  • The web service will need to communicate via LDAP/GC to the domain controller configured in the web.config.
  • If not returning appointment detail the Web service only needs to talk to the Exchange servers configured in the web.config file.
  • If you have configured a proxy server the sync service will need to be able to talk to the configured server.
Sync Service:
  • If you are running the sync service in Appointment mode, the sync service will need to communicate to every server that hosts a mailbox you are syncing.
  • If you are running the sync service in SchedulePlus mode, the Sync service only needs to talk to the Exchange servers configured in the GoogleGCalExhangeSync.Service.exe.config file.
  • The web service will need to communicate via LDAP/GC to the domain controller configured in the web.config.
  • If you have configured a proxy server the sync service will need to be able to talk to the configured server.
Plug-In:
  • The plug-in runs on the Exchange server which has the Novell GroupWise connector for Microsoft Exchange installed.
  • The plug-in will need to communicate via LDAP/GC to the domain controller configured in the config.txt if using ldap.whitelist or ldap.blacklist settings
  • If you have configured a proxy server the sync service will need to be able to talk to the configured server.

Do I need to setup the Google Calendar Connector Web Service in the DMZ and open ports so that Google can communicate with the Google Calendar Connector Web Service service?

No. The communication to the web service is between the client web browser and the Google Calendar Connector Web service, not a Google cloud server and the web service. The URL to this server can be an intranet only based DNS address.
If you want Google Calendar Exchange free/busy to work outside your intranet, via the Internet, then you can setup the server in a DMZ and open the firewall to access this server. The DNS address for this server should be accessible and the same for the intranet and Internet clients. For security reasons you should ensure the web service is running over SSL and only port 443 is open on your firewall to this server.

Does the Google Calendar Connector Sync service synchronize existing Exchange Calendar data into users Google Calendar?

No, the Google Calendar Sync service only is designed to synchronize Google Calendar free/busy data into your Exchange environment. It does not sync appointment details or other meeting data, just free/busy status for the meeting time.
There is functionally with the Google Calender Connector Web service to retrieve in real time Exchange free/busy data within Google Calendar.
A separate Google product: Google Calendar Sync is a client desktop application that syncs Outlook Calendar with a Google Calendar. This tool runs on an end user client desktop. For more information go here: http://www.google.com/support/calendar/bin/answer.py?answer=89955.

I host more than a single SMTP domain in my Exchange environment. How do I enable these other SMTP domains hosted in Exchange so that free/busy can be seen in Google Calendar?

  • If you host more than a one SMTP domain within your Exchange environment and want to look up free/busy data from Google Calendar for more than one domain, a special setting: the Google Calendar Connector Web Service Domain Name value needs to be configured in your Google Apps domain. A sanity checking mechanism verifies the domain of the e-mail address, matching it to a configuration domain setting in Google Apps. If the domain name does not match, the request is not passed to the Web service for a free/busy look up. If you want to have multiple domains passed to the web service this value will need to be modified in the Google Apps configuration by a Google Enterprise Support Engineer.
  • By default the value will match Google Apps domain name i..e "acme.com". To allow any domain name look ups this value needs to be changed to ".". This in effect matches any domain name and allows every look up to be passed to the Web service.
If you have other domains that are children of acme.com like child.acme.com or child-acme.com the domain value will not need to be updated as the sanity check will still match. If the child domain is acme-child.com this will not match on the value "acme.com" so you would want to configure the value to ".".
  • You also might need to configure multiple domain mapping values as well depending on your Exchange configuration.

How to contact Google Support

  1. Use the Contact us online link that can be found in your Google Apps control panel Domain Settings | Account Information | Admin support
  2. Select the button: "If you issue is not covered above, report it via email"
  3. Complete the support request form:
    • Problem you're having: Enabling or verifying services
    • Brief Summary: Please enable my domain for Calendar interoperability with Exchange.
    • Full Description: (Please provide either the value "." for all domains. Or provide a list of the domains you would like to include.

Update my Google Apps domain enabled for the Google Calendar Connectors with a special domain sanity checking value!
Customer PIN: Please enter the value which can be retrieved from the Google Apps control panel Domain Settings | Account Information Support PIN: Please enter the value which can be retrieved from the Google Apps control panel Domain Settings | Account Information


I need to sync both Exchange mailboxes and contacts/mail enabled users. How do I setup the sync service to run in both modes?

  • The sync service does not support running in both a SchedulePlus and Appointment mode at the same time. We recommend you install the sync service on two separate servers. Configure each server for one of the respective sync modes.

I have users configured in both Google Calendar and Exchange. What free/busy data will be displayed?

  • The first service to respond to the free/busy request is displayed. If the user is a Google Apps user then Google apps data will be displayed. If there is a no Google Apps user or the account is disabled, Exchange data will be displayed. If the user is both a Google Apps user and Exchange user, only Google Apps free/busy data will be displayed.

How do I force a complete re-sync of the Google Calendar Sync Service?

  • Delete the file UserModifiedTimes.xml from C:\google\data and restart the Google Calendar Sync Service. This will force a full re-sync for each user.

Can the Google Calendar Connectors sync a Google Calendar Resource's free/busy data from Google Apps into Exchange?

Yes if using the Google Calendar Sync Service!
  1. Create an Exchange contact with the e-mail address of the Google Apps Calendar Resource.
  2. Define a timezone for the Resource calendar. To set the timezone login as an Admin of the Gooogle Apps domain and load Google Calendar. Added the Resource calendar to your "My Calendars" by entering the e-mail address for the resource. Click on Settings | Calendars | click on the Resource calendar. Under "Calendar Time Zone:" select a timezone and click Save.
  3. Configure the Google Calendar Connector Sync service using SchedulePlus mode. Ensure the contact object is in scope of the sync service.

How is the free busy status mapped from the Google Calendar to Exchange?

The GCal meetings can have 5 possible statuses:

  1. Cancelled.
  2. Confirmed.
  3. Tentative.
  4. Not set.
  5. Any unknown value.

The attendees of a meeting in GCal can have 6 possible statuses:

  1. Accepted.
  2. Declined.
  3. Invited.
  4. Tentative.
  5. Not set.
  6. Any unknown value.

The combination of those (event status X attendee status) are mapped to the following Exchange free busy statuses:

  1. Free.
  2. Busy.
  3. Tentative.
  4. OOF.

First several special cases:

  1. Nothing is mapped to the Exchange OOF, since no such information is available from GCal.
  2. The meeting status is not set when the projection is just free busy. In such case, it is considered same as Confirmed.
  3. The attendee status is not set when the projection is just free busy. In such case, it is considered same as Accepted.
  4. Unknown value for meeting status is treated as Confirmed. There is no perfect match here, but this should not happen unless calendar introduces new status.
  5. Unknown value for attendee status is treaded as Accepted. Same logic as above.

So here are the rules

  1. If the meeting is Cancelled, regardless of the attendee status, the time is considered Free.
  2. If the attendee status is declined, regardless of the meeting status, the time is considered Free.
  3. If the meeting is not Cancelled, and the attendee status is Invited, the time is considered Tentative (to match Exchange/Outlook behavior).
  4. If the meeting is Tentative, and the attendee status is not declined, the time is considered Tentative.
  5. If the meeting is Confirmed and the attendee status is accepted, the time is considered Busy.
  6. If the meeting is Confirmed and the attendee status is tentative, the time is considered Tentative.

Here is the mapping in table format:

Confirmed Not set Unknown Tentative Cancelled
Accepted Busy Busy Busy Tentative Free
Not set Busy Busy Busy Tentative Free
Unknown Busy Busy Busy Tentative Free
Invited Tentative Tentative Tentative Tentative Free
Tentative Tentative Tentative Tentative Tentative Free
Declined Free Free Free Free Free


Can I run multiple instances of the Google Calendar Connectors on the same server?


Comment by jay0lee, Apr 01, 2009

There is one reference to Novell GroupWise? in this document. Is that reference correct? Doesn't seem to fit...

Comment by woodall.j, Jul 20, 2009

Are there any plans to make this available for Exchange 2007 as well?

Comment by JorgeRSG, Sep 28, 2009

Does this work for Exchange 2007 alone? Are there any plans to make this available?

Comment by ttrenerry, Dec 01, 2009

Do i use either of these services for a one time move of the shared company calandar to Google Apps


Sign in to add a comment