From b75ca46565bc072eb0ce4eceea2228f5b3bc463b Mon Sep 17 00:00:00 2001 From: Niek van der Maas Date: Fri, 17 Mar 2023 14:02:50 +0100 Subject: [PATCH] Delete accidentally committed file --- src/lib/Bing.svelte | 195 -------------------------------------------- 1 file changed, 195 deletions(-) delete mode 100644 src/lib/Bing.svelte diff --git a/src/lib/Bing.svelte b/src/lib/Bing.svelte deleted file mode 100644 index 17328f4..0000000 --- a/src/lib/Bing.svelte +++ /dev/null @@ -1,195 +0,0 @@ -const sendRequestBing = async (messages: Message[]): Promise => { - const conversation = await ( - await fetch("https://www.bing.com/turing/conversation/create", { - credentials: "include", - }) - ).json(); - - return await new Promise((resolve, reject) => { - const text = messages[messages.length - 1].content; - const invocationId = "0"; - - const terminalChar = ""; - - const result = { - author: "bot", - id: crypto.randomUUID(), - conversationId: conversation.conversationId, - clientId: conversation.clientId, - conversationSignature: conversation.conversationSignature, - invocationId: `${parseInt(invocationId, 10) + 1}`, - text: "", - detail: "", - conversationExpiryTime: null, - }; - - const ws = new WebSocket("wss://sydney.bing.com/sydney/ChatHub"); - ws.onopen = () => { - ws.send(`{"protocol":"json","version":1}${terminalChar}`); - }; - - ws.onmessage = (event) => { - const objects = event.data.toString().split(terminalChar); - const messages = objects - .map((object) => { - try { - return JSON.parse(object); - } catch (_) { - return object; - } - }) - .filter(Boolean); - - if (!messages.length) { - return; - } - - // Initial message - if (messages.length === 1 && Object.keys(messages[0]).length === 0) { - ws.send(`{"type":6}${terminalChar}`); - - const params = { - arguments: [ - { - source: "cib", - optionsSets: [ - "nlu_direct_response_filter", - "deepleo", - "disable_emoji_spoken_text", - "responsible_ai_policy_235", - "enablemm", - "harmonyv3", - "h3ads", - "wlthrottle", - "cpcttl7d", - "blocklistv2", - "h3toppfp2", - "dv3sugg", - ], - allowedMessageTypes: [ - "Chat", - "InternalSearchQuery", - "InternalSearchResult", - "Disengaged", - "InternalLoaderMessage", - "RenderCardRequest", - "AdsQuery", - "SemanticSerp", - "GenerateContentQuery", - "SearchQuery", - ], - sliceIds: [ - "perfsvgopt", - "228h3ads", - "h3ads", - "0310wlthrot", - "307retryscs0", - "307retryscs0", - "cache0307", - "ssoverlap50", - "ssplon", - "sssreduce", - "sswebtop2", - "302blocklist", - "308disbings0", - "311h3toppfp2", - ], - isStartOfSession: true, - message: { - locale: "en-US", - market: "en-US", - region: "US", - author: "user", - inputMethod: "Keyboard", - text, - }, - conversationSignature: conversation.conversationSignature, - participant: { - id: conversation.clientId, - }, - conversationId: conversation.conversationId, - }, - ], - invocationId, - target: "chat", - type: 4, - }; - - ws.send(`${JSON.stringify(params)}${terminalChar}`); - - return; - } - - for (const message of messages) { - if (message.type === 1) { - // Message in progress - const msg = message.arguments[0].messages[0]; - - if (!msg.messageType) { - result.author = msg.author; - result.text = msg.text; - result.detail = msg; - - // Write to stdout - console.log(`\r${result.text}`); - } - } else if (message.type === 2) { - // Message complete - if (message.item.result.error) { - throw new Error(`Error message: ${message.item.result.error}`); - } - - const validMessages = message.item.messages?.filter((m) => !m.messageType); - const lastMessage = validMessages?.[validMessages?.length - 1]; - - if (lastMessage) { - result.conversationId = message.item.conversationId; - result.conversationExpiryTime = message.item.conversationExpiryTime; - - result.author = lastMessage.author; - result.text = lastMessage.text; - result.detail = lastMessage; - - //resolve(result); - } - } else if (message.type === 3) { - // Conversation complete - const response: Response = { - id: result.id, - object: "response", - created: 1, - choices: [ - { - index: 0, - message: { - role: "assistant", - content: result.text, - }, - finish_reason: "stop", - }, - ], - usage: null, - error: null, - }; - resolve(response); - - ws.close(); - return; - } else { - // TODO: handle other message types - // these may be for displaying "adaptive cards" - console.warn("Unexpected message type", message.type, message); - } - } - }; - - ws.onerror = (error) => { - console.log("WebSocket error:", error); - reject(error); - }; - - ws.onclose = (_event) => { - console.log("WebSocket closed"); - }; - }); - }; \ No newline at end of file