SysOps: approved_backup — 2026-08-16 11:01 UTC
This commit is contained in:
@@ -8,7 +8,7 @@ from datetime import datetime
|
||||
from typing import Any, Optional
|
||||
|
||||
import httpx
|
||||
from fastapi import APIRouter, File, Form, HTTPException, UploadFile
|
||||
from fastapi import Request, APIRouter, File, Form, HTTPException, UploadFile
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
from app.config import settings
|
||||
@@ -1019,14 +1019,17 @@ async def ai_generate_post_draft(body: AIPostDraftBody):
|
||||
|
||||
|
||||
@herman_api.post("/chat")
|
||||
async def herman_chat_api(body: HermanChatBody):
|
||||
async def herman_chat_api(request: Request, body: HermanChatBody):
|
||||
if not body.message.strip():
|
||||
raise HTTPException(400, "message required")
|
||||
user = getattr(request.state, "user", None) or {}
|
||||
result = await herman_service.chat(
|
||||
body.message.strip(),
|
||||
channel=(body.channel or "cockpit").strip(),
|
||||
session_id=body.session_id,
|
||||
confirm_action_id=body.confirm_action_id,
|
||||
username=(user.get("username") if isinstance(user, dict) else None),
|
||||
role=(user.get("role") if isinstance(user, dict) else None),
|
||||
)
|
||||
return {"ok": True, **result}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user