Skip to content

A tutor chatbot microservice written for my final year project at university.

Notifications You must be signed in to change notification settings

raen79/tutor_chatbot

Repository files navigation

Tutor Chatbot

A tutor chatbot microservice that responds to student answers about coursework.

Build Status Maintainability

Getting Started

Prerequisites

  • Ruby 2.3
  • Rails 5.1
  • Postgres
  • An RSA key pair (pub key generated by external auth service in production)
  • Gmail account
  • A redis server running locally
  • Auth service set up on your computer (follow: https://github.com/raen79/authentication)

Installation

Environment Variables

dot-env gem is installed and so you can set up all your environment variables in a .env file at the root of the project. The following environment variables need to be set:

DB_USER = username for you DB
DB_PWD = password for your DB user
GM_USER = Gmail email address
GM_PWD = Gmail password
RSA_PUBLIC_KEY = Your public RSA key (don't worry about \n they are handled)
RSA_PRIVATE_KEY Your RSA private key (only used in testing, so only necessary in test/dev env, in production an external auth service which has not yet been set up will take care of the jwt token gen)
AUTH_URL = url string of your authentication service (https://subdomain.domain.com or localhost:port)

The production environment only needs GM_USER, GM_PWD, and RSA_PUBLIC_KEY set up.

Database

$ bundle exec rails db:setup

Documentation

http://tutor-chatbot.herokuapp.com/api_docs/swagger#/Faqs

Running the Tests

bundle exec rspec

Todo

  1. Add ability for lecturers to upload coursework brief and semantically extract question/answer pairs from it

Author

About

A tutor chatbot microservice written for my final year project at university.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published