Skip to content

eikenb/ihol

Repository files navigation

I Hate OutLook (ihol)

We use Office-365 at work, but I despise the online Outlook 'client' for calendaring. So I wrote this. Turns out several of my co-workers are in the same boat, so I'm sharing this here.

At the moment it outputs calendar events in remind or basic ICal formats for adding them to local calendars. It will also output the full body of the next or more events.

Authentication Setup

MS requires Oauth2 based login now which complicates setup a bit. You need a set of API credentials from MS and store them in a config file in json format.

conf.js.template is a template to be renamed to conf.json and populate with your own id/credentials (ClientID, ClientSecret, TenantID)

The O365 library used has this documented in their README. Do the first step (with all its sub-steps) to get the Application ID and Client Secret. When adding permissions, be sure to add these:

Calendars.ReadWrite, offline_access and User.Read

Be sure to have the Application (client) ID and the Client Secret saved. If there is a Directory (tenant) ID in the Overview write it down as well.

NOTE: if there is no Directory (tenant) id, use "common" TenantID in the conf.json file.

Once that is done, continue below..

  • Copy conf.json.template to conf.json
  • Create your virtualenv buy running createVenv.sh
  • Populate your conf.json with various IDs obtained above
  • Run the ./initial-auth.py and follow the directions
  • ihol should now run

Note you also need to keep the ./o365_token.txt file created by the initial-auth.py run. The token in that file will stay good indefinitely as long as you use it once every 90 days.

About

I Hate OutLook (O365 calendar pull)

Resources

License

Stars

Watchers

Forks

Packages

No packages published