Ver código fonte

加入 coreAPI - openAI 的功能

Louise lin 1 ano atrás
pai
commit
ef79605520

+ 36 - 1
HiTeachCC/ClientApp/src/api/coreApi.js

@@ -251,5 +251,40 @@ export default {
                 reject(err)
             })
         })
-    }
+    },
+    createAITask: function(idToken, userPrompt) {
+        let data= {       
+            userPrompt: userPrompt,
+            id_token: idToken
+        }
+        return new Promise((resolve, reject) => {
+            post(apiUrl + '/Service/CreateAITask', data).then(res => {
+                if (res.error) {
+                    reject(new Error(res))
+                } else {
+                    resolve(res)
+                }
+            }, err => {
+                reject(err)
+            })
+        })
+    },
+    getAITaskResult: function(idToken,taskId) {
+        let data= {       
+            taskId: taskId,
+            id_token: idToken
+        }
+        return new Promise((resolve, reject) => {
+            post(apiUrl + '/Service/GetAITaskResult', data).then(res => {
+                if (res.error) {
+                    reject(new Error(res))
+                } else {
+                    resolve(res)
+                }
+            }, err => {
+                reject(err)
+            })
+        })
+    }, 
+
 }

+ 24 - 1
HiTeachCC/ClientApp/src/views/Board.vue

@@ -1,5 +1,9 @@
 <template>
   <div class="board">
+    <!--OpenAI測試-->
+    <div @click="triggerOpenAI()" style="z-index: 2000; color: red; position: fixed; top: 10px; left: 10px">
+      OpenAI測試
+    </div>
     <!--Gpt安裝提示訊息-->
     <div v-show='showHintGptInstalled' class="textinput-view">>
       <div class="textinput-card">
@@ -7447,7 +7451,26 @@ export default {
     pasteFromClipboard(){
       this.$refs.addImgBox.pasteFromClipboard()
       this.showRightClickMenu=false
-    } 
+    },
+    async triggerOpenAI(){
+      try {
+      const idToken = sessionStorage.getItem("idToken");
+      const task = await this.$api.coreApi.createAITask(idToken, "測試CC");
+      const taskId = task?.taskId;
+
+      if (taskId) {
+        setTimeout(async () => {
+          const result = await this.$api.coreApi.getAITaskResult(idToken, taskId);
+          console.log(task, result, "triggerOpenAI");
+        }, 2000);
+        
+      } else {
+        console.error("Task creation failed, taskId is undefined");
+      }
+      } catch (error) {
+        console.error("An error occurred:", error);
+      }
+      } 
   },
 
   created() {