31 lines
671 B
Dart
31 lines
671 B
Dart
import 'agent.dart'; // Import the Agent class
|
|
|
|
class Message {
|
|
final String content;
|
|
final String sender;
|
|
|
|
Message(this.content, this.sender);
|
|
}
|
|
|
|
class Chat {
|
|
final String id;
|
|
final List<Message> _messages = [];
|
|
final Agent agent = Agent(); // Create an instance of Agent
|
|
|
|
Chat(this.id);
|
|
|
|
List<Message> get messages => List.unmodifiable(_messages);
|
|
|
|
void addUserMessage(String message) {
|
|
_messages.add(Message(message, 'user'));
|
|
agent.receivedChatMessage(this, message); // Call agent's method
|
|
}
|
|
|
|
void addAgentMessage(String message) {
|
|
_messages.add(Message(message, 'agent'));
|
|
}
|
|
|
|
void clearMessages() {
|
|
_messages.clear();
|
|
}
|
|
} |