2. Zentrale Fragestellung
• Wie groß ist das generelle Interesse eines Chatbots im
universitären Umfeld?
• Ist ein Chatbot in der Lage eine herkömmliche grafische
Benutzeroberfläche zu ersetzen?
4. CHATBOT
• Softwareindustrie unterliegt einem ständigen Wandel
• Nach dem initialen Erfolg des Webs wurden mobile Applikationen immer beliebter
• Nutzer/innen eines Mobiltelefons verbringen den Großteil der Zeit in Messenger-
Applikationen
• Softwareindustrie erkannte Chance um Services über Messenger anzubieten
• Evolution von Interfaces: Von Web über Mobile bis hin zu Conversational
5. CHATBOT
Applikation Herkunft Monatlich aktive Nutzer
WhatsApp US 1 Mrd
Facebook Messenger US 900 Mio
Viber Israel 784 Mio
WeChat China 762 Mio
Line Japan 560 Mio
Instagram US 500 Mio
Kik Canada 275 Mio
Snapchat US 220 Mio
Hike India 100 Mio
Quelle: http://www.bbc.com/news/business-37153831
Statistik Messenger 2016
8. UMSETZUNG - Architektur
SPA Node.js
TUG Search
Proxy
NLU
message
bot response
messageJSON response
query parameter
XML Data
9. UMSETZUNG - Architektur
SPA Node.js
TUG Search
Proxy
NLU
message
bot response
messageJSON response
query parameter
XML Data
“Please give me the email address of Martin Ebner”
10. UMSETZUNG - Architektur
SPA Node.js
TUG Search
Proxy
NLU
message
bot response
messageJSON response
query parameter
XML Data
“Please give me the email address of Martin Ebner”
14. UMSETZUNG - NLU
Please give me the phone
number of Martin Ebner.
Is the book Betriebssysteme
available?
Please give me the
address of room i11.
contact_information
contact_type
person
Quelle: http://www.dialogflow.com
23. UMSETZUNG - Backend
• XML response von TUGSearchProxy wird geparsed (xml2js)
• Verbesserung der Suchresultate durch weiteres filtern
• Exakte Übereinstimmung des Suchworts
• Bei zu viel gefunden Ergebnissen, Aufforderung zum Spezifizieren des
Suchworts
• Fallback TUGSearchProxy Resultat
• Aufbereitung der Response zur Single Page Application
• Spezialfall Site-search
• GET Request an http://search.tugraz.at/search?q=….
• Request der Urls der Ergebnisse
• Parsen des Contents aufgrund eines definierten Selectors (Beispiel: ‘.int-content-
left-teaser’).
• Einheitlicher Seitenaufbau durch TYPO3 Content-Pages