mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Poe API fixed
This commit is contained in:
44
poe.js
44
poe.js
@ -252,24 +252,44 @@ class Client {
|
||||
}
|
||||
}
|
||||
|
||||
on_message(ws, msg) {
|
||||
const data = JSON.parse(msg);
|
||||
const message = JSON.parse(data["messages"][0])["payload"]["data"]["messageAdded"];
|
||||
async on_message(ws, msg) {
|
||||
try {
|
||||
const data = JSON.parse(msg);
|
||||
|
||||
const copiedDict = Object.assign({}, this.active_messages);
|
||||
for (const [key, value] of Object.entries(copiedDict)) {
|
||||
//add the message to the appropriate queue
|
||||
if (value === message["messageId"] && key in this.message_queues) {
|
||||
this.message_queues[key].push(message);
|
||||
if (!('messages' in data)) {
|
||||
return;
|
||||
}
|
||||
|
||||
//indicate that the response id is tied to the human message id
|
||||
else if (key !== "pending" && value === null && message["state"] !== "complete") {
|
||||
this.active_messages[key] = message["messageId"];
|
||||
this.message_queues[key].push(message);
|
||||
for (const message_str of data["messages"]) {
|
||||
const message_data = JSON.parse(message_str);
|
||||
|
||||
if (message_data["message_type"] != "subscriptionUpdate"){
|
||||
continue;
|
||||
}
|
||||
|
||||
const message = message_data["payload"]["data"]["messageAdded"]
|
||||
|
||||
const copiedDict = Object.assign({}, this.active_messages);
|
||||
for (const [key, value] of Object.entries(copiedDict)) {
|
||||
//add the message to the appropriate queue
|
||||
if (value === message["messageId"] && key in this.message_queues) {
|
||||
this.message_queues[key].push(message);
|
||||
return;
|
||||
}
|
||||
|
||||
//indicate that the response id is tied to the human message id
|
||||
else if (key !== "pending" && value === null && message["state"] !== "complete") {
|
||||
this.active_messages[key] = message["messageId"];
|
||||
this.message_queues[key].push(message);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (err) {
|
||||
console.log('Error occurred in onMessage', err);
|
||||
this.disconnect_ws();
|
||||
await this.connect_ws();
|
||||
}
|
||||
}
|
||||
|
||||
async *send_message(chatbot, message, with_chat_break = false, timeout = 20) {
|
||||
|
Reference in New Issue
Block a user