Calendar Integrations
The Gobierto People module (also known as Altos Cargos y Agendas) allows officials to publish their public agenda both by manually creating events or by syncing with external services. Right now the supported services are:
Google Calendar
We use the v3 of the Google Calendar API. Instead of accessing it directly we use the google-api-ruby-client gem, which is developed by Google and abstracts us from many of the details.
Authentication is performed via OAuth.
IBM Notes
We use the IBM Domino Access Services REST API. This provides information about several data stored within IBM Notes accounts apart from calendars and events.
Currently we support versions 9.0.1 and 8.x of IBM Domino Access Services.
Even though this is a REST API, the authentication is performed by filling an HTML form with mechanize because the servers we integrated with only allowed us to authenticate the requests via the session cookie.
You can find more information about how to retrieve calendar events in the official documentation.
Microsoft Exchange
We use the EWS Managed API, which provides a unified interface around several Microsoft products such as Exchange Online, Exchange Server 2007-2013 and Office 365.
Instead of accessing the API directly, we use the exchanger ruby gem.
For a better understanding of the internals of this integration we recommend checking the exchanger readme and the official documentation.
Updated about 6 years ago