MCPcopy
hub / github.com/InkTimeRecord/TTime / TTimeAIChannelRequest

Class TTimeAIChannelRequest

src/renderer/src/channel/TTimeAIChannelRequest.ts:8–111  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6import { cacheGet } from '../utils/cacheUtil'
7
8class TTimeAIChannelRequest {
9 /**
10 * OpenAI - 翻译
11 *
12 * @param info 翻译信息
13 */
14 static openaiTranslate = async (info): Promise<void> => {
15 window.api['agentApiTranslateCallback'](
16 R.okD(
17 new AgentTranslateCallbackVo(info, {
18 code: OpenAIStatusEnum.START
19 })
20 )
21 )
22 let text = ''
23
24 await fetchEventSource('https://ink.timerecord.cn/apis/translate/translateAi/stream', {
25 method: 'POST',
26 body: JSON.stringify({
27 languageType: info.languageType,
28 languageResultType: info.languageResultType,
29 translateContent: info.translateContent
30 }),
31 headers: {
32 'Content-Type': 'application/json',
33 token: cacheGet('token')
34 },
35 async onopen(response) {
36 if (response.ok && response.headers.get('content-type') === EventStreamContentType) {
37 return // everything's good
38 } else {
39 window.api.logInfoEvent('[TTimeAI翻译事件] - error 连接失败 :', {
40 status: response.status,
41 statusText: response.statusText
42 })
43 window.api['agentApiTranslateCallback'](
44 R.errorD(
45 new AgentTranslateCallbackVo(info, {
46 code: OpenAIStatusEnum.ERROR,
47 error: '连接失败'
48 })
49 )
50 )
51 }
52 },
53 onmessage(msg) {
54 const resStr = msg.data
55 try {
56 const res = JSON.parse(resStr)
57 if (res.status !== 200) {
58 text += res.msg
59 window.api['agentApiTranslateCallback'](
60 R.okD(
61 new AgentTranslateCallbackVo(info, {
62 code: OpenAIStatusEnum.ING,
63 content: text
64 })
65 )

Callers

nothing calls this directly

Calls 2

cacheGetFunction · 0.90
okDMethod · 0.80

Tested by

no test coverage detected