diagram.plantuml
1.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
@startuml
abstract class Bot
note right of Bot
Abstraktion des Bots:
Verbindet zum jeweiligen
Service und leitet
Nachrichten an den
Gateway weiter
end note
class TelegramBot
class TwitterBot
Bot <|-- TelegramBot
Bot <|-- TwitterBot
class Gateway
note left of Gateway
Verbindungszentrale
zwischen
- Bots,
- nlp-Modulen,
- Registry
end note
class MetaMetaPersistence
note left of MetaMetaPersistence
z. B.: ob ein Nutzer
schon mal eine
Anfrage gestellt hat
end note
class MetaPersistence
note left of MetaPersistence
z. B.: ob ein Nutzer
den angefragten
Service schon mal
genutzt hat
end note
package nlp {
class "rasa-ai"
class "drools"
class "Google Cloud Speech API"
class "Google Cloud Natural Language"
class "Microsoft Azure Spracherkennungs-API"
class "Microsoft Azure Textanalyse-API"
"Google Cloud Speech API" -> "Google Cloud Natural Language"
"Microsoft Azure Spracherkennungs-API" -> "Microsoft Azure Textanalyse-API"
legend left
Zieht die Bedeutung
aus der Nachricht
(Text/Audio) heraus.
end legend
}
Gateway -- nlp
Bot "1..*" -- Gateway
Gateway -- MetaMetaPersistence
class Registry
Gateway "1" -- "1" Registry
Registry -- MetaPersistence
abstract class Service
note left of Service
Abstraktion der Services:
Verbindet zur Registry,
konfiguriert nlp-Modul,
empfängt Requests der Benutzer
erzeugt Antworten an den Benutzer
end note
class MensaService
Service <|-- MensaService
Service <|-- WetterService
Registry "1" -- "*" Service
@enduml