Outlook Appointments from Website

Francisco Barcena - April 02, 2019

It all started with a simple request. "We want our clients to stop calling" said someone in the meeting. This wouldn't make sense to anyone running a business, at least during the first couple of seconds after hearing it.

They wanted clients to stop calling to book appointments and instead allow them to book appointments online. But the barrier to this development was number of employees in the company, and the main two things they focus on, work and their outlook calendar. No one had time to look at an automated email saying "New appointment" and then putting that into their own outlook calendar. When you are good at your job and love what you do, you do not want to be interrupted.

There are certainly some solutions out there that offer a productized service of integrating a scheduling form on a website, but they charge a monthly fee multiplied by the number of users in a company. It can get costly as a monthly expense. Additionally going with a solution like that, company time would be lost on-boarding employees, creating their usernames, passwords, and showing them how to configure/adjust settings.

So how was I going to help solve this. First thing was to learn about their current setup. You don't want to introduce change.

A discovery meeting was scheduled. I learned about how the company currently managed their scheduling. This specific client used an on-site hosted Microsoft solution, Exchange Server. And on this server they had their employee emails, but one thing all the emails shared was access to one additional email account for example, calendar@company.com. This was the calendar where all events were scheduled. Inside the calendar, events were separated by category and each category was the employee name.

It was all pretty straight forward to me. I can understand why someone would not want to sign up to a SaaS (Software as a Service) that adds complexity to this simple setup. After the discovery meeting was done, I put sat on my computer and put on my app developer hat.

Communicating with Exchange Server seemed like a very daunting task at first, even for such a simple task as inserting events in a calendar under a category, but thankfully I discovered PyExchange, a python library that wraps the majority of Exchange Server communication specifics. This meant that I did not have to construct XML and personally adhere to the requirements of communicating with Exchange Server. The library did most of this.

On my end, what I had to make sure of was that company employees could not be double booked, that their proper schedule availabilities would show up on the company website, and that they had a user interface to further customize their availability beyond time slots that were already booked.

How much time and effort would your company save if calls were far and few in between? Do you know of an app that integrates with Microsoft Exchange that does not charge per user per month? I'm interested in hearing your thoughts.

Francisco Barcena