execute method
Future<Content>
execute(
- ToolContext context,
- Map<String, dynamic> arguments
)
override
Implementation
@override
Future<Content> execute(
ToolContext context,
Map<String, dynamic> arguments,
) async {
final result = await context.room.agents.invokeTool(
toolkit: toolkitName,
tool: name,
participantId: participantId,
onBehalfOfId: onBehalfOfId,
input: ToolContentInput(JsonContent(json: arguments)),
);
switch (result) {
case ToolContentOutput(:final content):
return content;
case ToolStreamOutput():
throw AgentException(
"tool '$toolkitName/$name' returned a stream; expected a single chunk",
);
}
}