Scheduler

Wrapper written in Python around SchedJulia to schedule interviews.

Overview

This wrapper reads interview groups and availabilities from a Google Sheet, generates a schedule with SchedJulia, and pushes ths schedule to another Google Sheet. It converts to and from SchedJulia-format when using SchedJulia.

Prerequisites

Dependencies

Setup

  • Clone the repository and initialize the SchedJulia submodule.

    git clone https://gitlab.com/utmist/schedjulia-wrapper.git
    git submodule update --init --recursive
    
  • Install dependencies.

    pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib python-dotenv
    
  • Load environment variables in .env. A blank copy copy.env lists the required variables with sample variables from the 2020 summer period. The formats will be documented in the future.

  • Place credentials.json from the Google Sheets API in the root directory.

Usage

Run script.sh.

Troubleshooting

  • One bug encountered was expiration of Google Sheets API authentication. Problem might be solved by refreshing credentials.json or deleting token.pickle.

Development