Switch news service from Google News to local SearXNG

- Use local SearXNG at localhost:8888 instead of Google News RSS
- No more 302 redirects or blocked requests — local is fast and reliable
- 5s timeout on all SearXNG requests
- Removed async locks (no contention needed for local service)
- Re-enabled research and headlines

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-06 21:34:45 -07:00
parent c03f46ea96
commit e45ba2617a
2 changed files with 52 additions and 68 deletions

View File

@@ -921,9 +921,8 @@ async def start_call(caller_key: str):
session.start_call(caller_key)
caller = session.caller # This generates the background if needed
# Headlines fetch disabled — Google News RSS blocks automated requests
# if not session.news_headlines:
# asyncio.create_task(_fetch_session_headlines())
if not session.news_headlines:
asyncio.create_task(_fetch_session_headlines())
return {
"status": "connected",
@@ -1078,8 +1077,7 @@ async def chat(request: ChatRequest):
epoch = _session_epoch
session.add_message("user", request.text)
# Research disabled — was causing hangs and producing garbage searches
# session._research_task = asyncio.create_task(_background_research(request.text))
session._research_task = asyncio.create_task(_background_research(request.text))
try:
async with asyncio.timeout(20):
@@ -1676,8 +1674,7 @@ async def _trigger_ai_auto_respond(accumulated_text: str):
broadcast_event("ai_done")
# Research disabled — was causing hangs
# session._research_task = asyncio.create_task(_background_research(accumulated_text))
session._research_task = asyncio.create_task(_background_research(accumulated_text))
# Also stream to active real caller so they hear the AI
if session.active_real_caller: