mirror of
https://github.com/farcasclaudiu/Flowise.git
synced 2026-06-28 21:00:58 +03:00
Merge pull request #1131 from FlowiseAI/bugfix/RedisBackedChatMessage
Bugfix/Fix RedisChat SessionId
This commit is contained in:
@@ -119,27 +119,26 @@ const initalizeRedis = async (nodeData: INodeData, options: ICommonObject): Prom
|
|||||||
const redisChatMessageHistory = new RedisChatMessageHistory(obj)
|
const redisChatMessageHistory = new RedisChatMessageHistory(obj)
|
||||||
|
|
||||||
redisChatMessageHistory.getMessages = async (): Promise<BaseMessage[]> => {
|
redisChatMessageHistory.getMessages = async (): Promise<BaseMessage[]> => {
|
||||||
const rawStoredMessages = await client.lrange(sessionId ? sessionId : chatId, 0, -1)
|
const rawStoredMessages = await client.lrange((redisChatMessageHistory as any).sessionId, 0, -1)
|
||||||
const orderedMessages = rawStoredMessages.reverse().map((message) => JSON.parse(message))
|
const orderedMessages = rawStoredMessages.reverse().map((message) => JSON.parse(message))
|
||||||
return orderedMessages.map(mapStoredMessageToChatMessage)
|
return orderedMessages.map(mapStoredMessageToChatMessage)
|
||||||
}
|
}
|
||||||
|
|
||||||
redisChatMessageHistory.addMessage = async (message: BaseMessage): Promise<void> => {
|
redisChatMessageHistory.addMessage = async (message: BaseMessage): Promise<void> => {
|
||||||
const messageToAdd = [message].map((msg) => msg.toDict())
|
const messageToAdd = [message].map((msg) => msg.toDict())
|
||||||
await client.lpush(sessionId ? sessionId : chatId, JSON.stringify(messageToAdd[0]))
|
await client.lpush((redisChatMessageHistory as any).sessionId, JSON.stringify(messageToAdd[0]))
|
||||||
if (sessionTTL) {
|
if (sessionTTL) {
|
||||||
await client.expire(sessionId ? sessionId : chatId, sessionTTL)
|
await client.expire((redisChatMessageHistory as any).sessionId, sessionTTL)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
redisChatMessageHistory.clear = async (): Promise<void> => {
|
redisChatMessageHistory.clear = async (): Promise<void> => {
|
||||||
await client.del(sessionId ? sessionId : chatId)
|
await client.del((redisChatMessageHistory as any).sessionId)
|
||||||
}
|
}
|
||||||
|
|
||||||
const memory = new BufferMemoryExtended({
|
const memory = new BufferMemoryExtended({
|
||||||
memoryKey,
|
memoryKey,
|
||||||
chatHistory: redisChatMessageHistory,
|
chatHistory: redisChatMessageHistory,
|
||||||
returnMessages: true,
|
|
||||||
isSessionIdUsingChatMessageId
|
isSessionIdUsingChatMessageId
|
||||||
})
|
})
|
||||||
return memory
|
return memory
|
||||||
|
|||||||
Reference in New Issue
Block a user