Home

Awesome

uCheck (node.js backend)

uCheck automatiseert ingewikkelde stappen op uSis. Zodat Leidse studenten zich makkelijker kunnen inschrijven voor studieonderdelen en sneller hun cijfers kunnen controleren.

Install

  1. Installeer node.js

  2. Installeer npm:

    curl http://npmjs.org/install.sh | sh
    
  3. Installeer de benodigde modules:

    npm install express htmlparser soupselect
    
  4. Start de server

    node server.js
    
  5. Check of het werkt op

    http://localhost:3000/
    

    Als het werkt krijg je een "OK"

API

Cijfers in JSON

http://localhost:3000/cijfers/<s0000000>/<wachtwoord>/

Inschrijvingen in JSON

http://localhost:3000/inschrijvingen/<s0000000>/<wachtwoord>/<jaar>/

Voortgang in HTML

http://localhost:3000/cijfers/<s0000000>/<wachtwoord>/	 
	

Asynchroon

http://localhost:3000/cijfers_token/<s0000000>/<wachtwoord>/	
http://localhost:3000/inschrijvingen_token/<s0000000>/<wachtwoord>/<jaar>/

Bewaar de token, roep later dan deze call aan:

http://localhost:3000/token/<token>/

De JSON van cijfers en inschrijvingen worden een minuut bewaard. Als de token niet aanwezig is krijg je "invalid token" terug. Als de JSON nog niet gedownload is blijft de connectie 'alive' tot de JSON wordt gestuurd.

Servers

uCheck.nl draait op 2 servers. Eén met een php-backend en de ander met een node.js (serverside javascript) backend.

De PHP backend regelt:

De Node.js backend regelt:

Ik heb 2 node.js servers staan.

  1. Amazon EC2 (Ierland): http://ec2-79-125-78-169.eu-west-1.compute.amazonaws.com:3000/
  2. No.de: http://ucheck.no.de/

Niet inbegrepen

Op mijn servers is nog de module 'Prowl' aanwezig, enkele verwijzingen staan nog in de code. Met Prowl kan ik errors pushen naar mijn telefoon.