createNewConversation method
Future<void>
createNewConversation(
)
Implementation
Future<void> createNewConversation() async {
try {
resetLoadingMessage();
update();
if (assistant.value != null) {
conversation.value = await ConversationService.createConversation(
assistantId,
isMarketplace,
isAnonymous: pupauConfig?.isAnonymous ?? false,
);
if (conversation.value == null) resetConversation();
PupauEventService.instance.emitPupauEvent(
PupauEvent(
type: UpdateConversationType.newConversation,
payload: {
"assistantId": assistantId,
"assistantType": assistant.value?.type ?? AssistantType.assistant,
"conversation": conversation.value!,
},
),
);
isConversationHistoryLoaded = false;
return;
}
} catch (e, stackTrace) {
PupauEventService.instance.emitPupauEvent(
PupauEvent(
type: UpdateConversationType.error,
payload: {
"error": "Error creating new conversation: ${e.toString()}",
"errorType": e.runtimeType.toString(),
"stackTrace": stackTrace.toString(),
"assistantId": assistantId,
"assistantType": assistant.value?.type ?? AssistantType.assistant,
"assistantExists": assistant.value != null,
},
),
);
}
}