Office hours scheduling script

I am looking for a script which will allow me to set up a online office hours management website. The solution needs to have the following features.

  1. Users can host their office hours, meaning they can select time slots when they are available for meeting with interested people. Those time slots will be displayed online with their profile that they are available for these slots.

  2. Other users can book a meeting based on available office hours.

  3. The script will manage all of the functions such as users hosting office hours, other users booking available office hours, meeting cancellation.

  4. Admin console which will allow admin to manage various functionality on the site.

What are the solutions available that will fulfill these requirements?