MCPcopy Create free account
hub / github.com/admineral/OpenAI-Assistant-API-Chat / Chat

Function Chat

app/page.tsx:8–77  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

6import { useChatState, useChatManager, useStartAssistant } from './hooks';
7
8export default function Chat() {
9 const {
10 assistantName, setAssistantName,
11 assistantModel, setAssistantModel,
12 assistantDescription, setAssistantDescription,
13 inputmessage, setInputmessage,
14 chatMessages, setChatMessages,
15 isButtonDisabled, setIsButtonDisabled,
16 files = [], setFiles,
17 isStartLoading, setStartLoading,
18 statusMessage, setStatusMessage,
19 isSending, setIsSending,
20 inputRef,
21 formRef,
22 initialThreadMessage,
23 setInitialThreadMessage,
24 setChatStarted,
25 chatStarted: chatHasStarted,
26 chatManager, setChatManager,
27 assistantId,
28 isMessageLoading, setIsMessageLoading,
29 progress, setProgress,
30 isLoadingFirstMessage,
31 setIsLoadingFirstMessage,
32 chatUploadedFiles = [], setChatUploadedFiles,
33 chatFileDetails, setChatFileDetails,
34 fileIds, setFileIds,
35 } = useChatState();
36
37 useChatManager(setChatMessages, setStatusMessage, setChatManager, setIsMessageLoading, setProgress, setIsLoadingFirstMessage);
38 useStartAssistant(assistantId, chatManager, initialThreadMessage);
39
40 const startChatAssistant = async () => {
41 setIsButtonDisabled(true);
42 setStartLoading(true);
43 if (chatManager) {
44 try {
45 console.log('Starting assistant with the following parameters:');
46 console.log('Assistant Name:', assistantName);
47 console.log('Assistant Model:', assistantModel);
48 console.log('Assistant Description:', assistantDescription);
49 console.log('File IDs:', fileIds);
50 console.log('Initial Thread Message:', initialThreadMessage);
51
52 await chatManager.startAssistant({ assistantName, assistantModel, assistantDescription }, fileIds, initialThreadMessage);
53
54 console.log('Assistant started:', chatManager.getChatState());
55 setChatStarted(true);
56 } catch (error) {
57 console.error('Error starting assistant:', error);
58 if (error instanceof Error) setStatusMessage(`Error: ${error.message}`);
59 } finally {
60 setIsButtonDisabled(false);
61 setStartLoading(false);
62 }
63 }
64 };
65

Callers

nothing calls this directly

Calls 3

useChatStateFunction · 0.90
useChatManagerFunction · 0.90
useStartAssistantFunction · 0.90

Tested by

no test coverage detected