metakgp/hermes

Name: hermes

Owner: metakgp

Description: The messenger of the gods himself delivering important notices from various IITKGP noticeboards

Created: 2018-01-18 08:46:59.0

Updated: 2018-02-12 06:15:40.0

Pushed: 2018-02-13 11:39:58.0

Homepage: null

Size: 47

Language: Python

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Hermes

The messenger of the gods himself delivering important notices from various IITKGP noticeboards

Motivation

IITKGP has a lot of internal and public noticeboards that most students are not aware of, but will definitely benefit from. Hermes aims to solve this by monitoring the noticeboards and sending updates to students by email.

Setup
Install dependencies

Install all required python modules.

install -r requirements.txt
Mailgun setup

Hermes uses Mailgun's APIs to send emails. Setting up an account and registering a new domain is easy and well explained in their official documentation.

Required config variables

Hermes requires Mailgun specific environment variables to work.

GUN_API_KEY="xxx" # API key from Mailgun dashboard
GUN_DOMAIN="xxx" # Configured domain at Mailgun from which to send emails
T_RUN="false" # Set to either "true" or "false". If true, the scrapers will check ALL notices. Only last 10 otherwise.
ET_EMAIL="xxx" # Target email address
TAS_URL="xxx" # URL for Veritas

Now the big trouble is, Hermes needs to be run within the institute (since the internal noticeboards are not accessible from outside campus). BUT the administration doesn't provide sudo access to a permanant server to set this up (because ¯\_(?)_/¯). So, Veritas is another helper script that can handle storing the scraped notices (and their MD5 hashes) on an independent server hosted outside campus.

So, setup and run Veritas before running Hermes. Instructions for running Veritas is provided in it's README. The VERITAS_URL env variable required above should point to wherever Veritas is hosted.

License

GPLv3. Issues and pull requests are welcome.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.