project_documentation.md 1.54 KB

BHT-Chatbot Project

The hole project is build by gradle and divided into a couple of subprojects (cf. Subprojects section ). Each module is loosely connected through a Java Message Service. The application is running on a Jboss Wildfly inside of a docker container. Another docker container is used for the Rasa backend.

Infrastructure

The productive project is represented by a separate Git repository in absent of a continuous integration server. Pushing into this repository will automatically trigger a rebuild of the productive environment.

  • confer post-receive - Git hook for auto deploying the application

Subprojects

MainBot

  • Canteen Parser - web crawler for collecting data of the beuth university canteen
  • Common - holding common classes used by all other subprojects
  • Drools - Business Rules Management System used to generate the right answer
  • Global - global available services
  • Scheduler - Scheduling EJB, used to create and handle reminders.

Natural Language Processing

  • ApiAi - simple RESTEasy client application calling googles Api.ai API
  • Rasa - simple RESTEasy client application calling the rasa backend rest API

Messenger

  • Facebook - Facebook Messenger connector
  • Telegram - Telegram Messenger connector

Text <-> Speech Processing

  • Bing Speech - REST client for Microsofts Bing Speech API