answerAskUserTool static method
Future<Stream<SSEModel> ?>
answerAskUserTool(
- String messageId,
- List<
AskUserChoice> options, - String? answer
Implementation
static Future<Stream<SSEModel>?> answerAskUserTool(
String messageId,
List<AskUserChoice> options,
String? answer,
) async {
ChatController chatController = Get.find();
String? assistantId = chatController.assistant.value?.id;
Conversation? conversation = chatController.conversation.value;
if (assistantId == null || conversation == null) return null;
PupauMessage message = chatController.messages.firstWhere(
(element) => element.id == messageId,
);
bool isMarketplace = chatController.isMarketplace;
final Map<String, String>? authParams = chatController.pupauConfig?.authHeaders;
if (authParams == null) return null;
String url = ApiUrls.toolQuestionUrl(
assistantId,
conversation.id,
message.id,
isMarketplace: isMarketplace,
);
Stream<SSEModel> messageSendStream = SSEClient.subscribeToSSE(
method: SSERequestType.POST,
url: url,
header: {
...authParams,
"Conversation-Token": conversation.token,
"Content-type": "Application/json",
},
body: {"request": generateAnswerBody(options, answer)},
);
return messageSendStream;
}