Giter Club home page Giter Club logo

ssol-courses's Introduction

User Manual

github.com/linanqiu/ssol-courses

By Xingzhou He and Linan Qiu

Features

  • Signs up for courses on SSOL automatically (and keeps retrying for courses that are full till you get them. No more clicking frenzy on sign up day!)
  • Retries until you get the course
  • Fetches courses from bulletin automatically (done live from Columbia Bulletin using ADI Courses API)
  • Searches courses via keywords and departments (done live from Columbia Bulletin using ADI Courses API)
  • Fetches Departments from Columbia Website (done live from Columbia website)
  • Professors with CULPA reviews are indicated and linked to CULPA (done live from CULPA)
  • Optimized timing to prevent SSOL IP Block
  • IP Block Check
  • Registration Appointment Timing Check

In other words, we didn't read anything off a text file. Everything should be updated live.

Dependencies

  • Selenium WebDriver
  • Gson
  • MIGLayout
  • Java 1.6

Quick Start

Login

Login

Log in by typing in your UNI and password. If wrong combination is entered, a notice will be shown.

Choose Semester

Semester

If you have the option of two semesters (for example, Summer 2013 and Fall 2013), you will be given a choice. If you only have one semester, this dialog will not show and your only semester will be chosen.

Main Interface

Main Interface

You will now be at the main window. Personal Information section shows your UNI and your chosen semester. It also shows if you are blocked by SSOL. (Note: You will be blocked if you click too many times in a given time frame. While we optimized the program's timing to avoid that, SSOL is still an ass sometimes.) It also shows if you have a registration appointment available right now.

Log

You can also view log messages. We basically redirected System.out OutputStream to here.

You will also see your current sections. Current Sections are only updated the night before, so it is only accurate as of midnight the previous registration day. Blame SSOL.

Search

Section Directory allows you to search for sections to add. You can either search by department using keywords or search in all departments using keywords.

Course Listing In the Course Listing, Sections are categorized by courses, hence you won't be spammed by a 100 LitHum sections.

Instructor Dialog

Double clicking on any section (including the ones in existing sections, section directory and section to add) brings up the Instructor Dialog. This shows information about the instructor.

Culpa Dialog

If the instructor is present on CULPA, his name will appear differently. Clicking on it brings up your browser straight to his CULPA page.

Clicking the "+" sign adds sections to the Sections To Add portion. Clicking "-" removes it from the portion.

Adding Courses

Clicking Start runs the bot. The bot will attempt to get the classes for you on SSOL. If it is a success, the section will appear GREEN.

Unsuccessful

If it is unsuccessful (probably because the course is full), it will appear yellow. If the course is not found, it will appear red. Green and red sections will be skipped every subsequent run.

If the course is unsuccessful, the bot will keep retrying every 50 seconds. After all, this is the whole point of the program.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.