TheDeveloper
TheDeveloper

Reputation: 940

Integrating Outlook Calendar to Website / Other

When the users add events to the online calendar they also can be added to the outlook calendar (synchronize). Obviously a site built using PHP can not integrate with desktop application directly, so I am looking alternative options.

Options I found:

Questions:

  1. Are there any outlook plug-ins paid or free (ideally) that can achieve this?
  2. Are there any web service/ APIs that can achieve this?
  3. Any other ideas or solutions?

Upvotes: 14

Views: 26498

Answers (5)

Gavin G
Gavin G

Reputation: 876

Building off Rahul's idea but using a different approach - Microsoft provides something similar to a "RSS feed" that auto updates each time you GET the URL, except it's an feed of "ICS" event data:

  1. Open up Outlook Web Access (OWA), e.g. if you are using a microsoft.com account the URL might be https://outlook.live.com/calendar/ (if you are using some other Microsoft 365 account the URL may be different)

  2. On the top right, click the Settings icon

  3. Click View all Outlook Settings

  4. Click Calendar > Shared Calendars > and under Publish a calendar, select the calendar, then under Select permissions, choose as appropriate, then click Publish

  5. It will give you HTML and ICS links. Copy the ICS link URL.

  6. Use your favourite programming language/tool/software to periodically do a HTTPS request (using CURL or AJAX or some other HTTP fetch) using GET method to the URL you got in step 5. You will get back a bunch of calendar data in ICS format. Use this however you need. You may be able to find some pre-written code from elsewhere that parses ICS data for you, or you can manually create your own parser code if you have to.

Upvotes: 0

Rahul Saxena
Rahul Saxena

Reputation: 465

To get the calender event follow these step:

  1. Sign in to Calendar
  2. On the toolbar, click Share
  3. Select the calendar that you want to export/embed.
  4. Click Get a link.
  5. Under Show event details (click Create) Note: If step number 5 is already performed, just skip it and click Link to event details
  6. Copy the link that you needed and paste it on the desired program/website.

Upvotes: 1

Yavor
Yavor

Reputation: 703

Office 365 comes with an REST API that can be used to read/write to calendars. Here's some documentation on this. http://msdn.microsoft.com/office/office365/api/calendar-rest-operations

Alternatively, the EWS Managed API might be able to help you: http://msdn.microsoft.com/en-us/library/office/dd633696(v=exchg.80).aspx and http://msdn.microsoft.com/en-us/library/office/dd633702(v=exchg.80).aspx

Upvotes: 3

Jibs
Jibs

Reputation: 9

Use EWS exchange webservice to achieve this. If it is a website with a no. of users u will need to create OU in exchange server and add a admin user who has read permissions to all accounts in the DL. EWS exposes endpoints where in u can fetch the calendar mail add read and do all kind of operations.

Upvotes: 0

Auberon Vacher
Auberon Vacher

Reputation: 4775

you could do this by having the outlook subscribe to the online calendar.

with phpicalendar you can have other clients subscribe to your calendars (here)

you may want to tweak the generated .ics file to include X-PUBLISHED-TTL - Recommended update interval for subscription to the calendar

Upvotes: 1

Related Questions