Skip to content

Commit 1879176

Browse files
authoredJan 14, 2025
Merge pull request #35 from jeffwiegner/patch-chat_id
Getting chat_id to use as session_id
2 parents f1c4ef0 + a91332a commit 1879176

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed
 

‎local-ai-packaged/n8n_pipe.py

+11-2
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,15 @@
1313
import time
1414
import requests
1515

16+
def extract_event_info(event_emitter) -> tuple[Optional[str], Optional[str]]:
17+
if not event_emitter or not event_emitter.__closure__:
18+
return None, None
19+
for cell in event_emitter.__closure__:
20+
if isinstance(request_info := cell.cell_contents, dict):
21+
chat_id = request_info.get("chat_id")
22+
message_id = request_info.get("message_id")
23+
return chat_id, message_id
24+
return None, None
1625

1726
class Pipe:
1827
class Valves(BaseModel):
@@ -75,7 +84,7 @@ async def pipe(
7584
await self.emit_status(
7685
__event_emitter__, "info", "/Calling N8N Workflow...", False
7786
)
78-
87+
chat_id, _ = extract_event_info(__event_emitter__)
7988
messages = body.get("messages", [])
8089

8190
# Verify a message is available
@@ -87,7 +96,7 @@ async def pipe(
8796
"Authorization": f"Bearer {self.valves.n8n_bearer_token}",
8897
"Content-Type": "application/json",
8998
}
90-
payload = {"sessionId": f"{__user__['id']} - {messages[0]['content'].split('Prompt: ')[-1][:100]}"}
99+
payload = {"sessionId": f"{chat_id}"}
91100
payload[self.valves.input_field] = question
92101
response = requests.post(
93102
self.valves.n8n_url, json=payload, headers=headers

0 commit comments

Comments
 (0)
Please sign in to comment.