Team: Dawid Godek, Jakub Darul, Łukasz Kaźmierczak
Chatbot created for automating issue creation in ticketing systems (like JIRA
).
It can be used by clients of software house who often don't provide enough
information for developers when creating bug issues.
We chose to use Facebook Messenger
as communication channel, but application
could support more channels (WhatsApp
, custom-build chat, Slack
) in the future.
Chatbot during conversation with user extracts following pieces of information:
- issue name
- part of application where issue happened
- precondition
- expected behavior
- actual (erroneous) behavior
- priority of issue
- incident date
- issue description (additional)
Chatbot also has an ability to warn user if issue that is being created looks like a duplicate.
Chatbot is implemented as 3 deployable services which correspond to 3 project directories in our repository:
Service responsible for integration with Facebook Messenger
and JIRA
.
It controls conversation flow, uses ner-service to extract desired
pieces of information from messages. Exposes API used by webview in bite-frontend
- Scala
- Akka
- Akka Http
Service responsible for extracting issue data from text. Communicates with hackathon-backend using gRPC. Extracts data using NLP techniques, as well as simple heuristics. Uses word2vec embeddings and cosine similarity to detect duplicates between issues.
- Python
- SpaCy
Service serving webview for reviewing data extracted from conversation before creating issue.
- ReasonML
- React