diagram.plantuml 402 Bytes
@startuml
class Request {
platform
userId
message: Message
history: Trace
metadata: KeyValueStore
answer(): Response
}



class Message {
id: unique
evaluated: Meaning
evaluate()
}

Request *-- Message

Response -- Request


class Response {
request: Request
answer
history: Trace
}

class TextMessage {
content
}

class AudioMessage {
url
}

Message <|-- AudioMessage
Message <|-- TextMessage
@enduml