- Oracle ADB queue table (sql/schema.sql) - Queue CRUD: core/queue_db.py - YouTube transcript: core/youtube.py - Web page fetch: core/web.py - LLM enrichment via OCI GenAI Gemini Flash: core/enricher.py - Text chunker: core/chunker.py - Obsidian note writer: core/obsidian.py - Oracle vector store insertion: core/vector.py - Polling daemon: daemon/worker.py - Telegram bot: bot/telegram_bot.py - Main runner: main.py
24 lines
469 B
Python
24 lines
469 B
Python
"""Main entry point: starts daemon thread + Telegram bot."""
|
|
|
|
import threading
|
|
|
|
from dotenv import load_dotenv
|
|
|
|
load_dotenv()
|
|
|
|
from bot.telegram_bot import build_app
|
|
from daemon.worker import run_loop
|
|
|
|
|
|
def main() -> None:
|
|
"""Start the daemon in a background thread, then run the bot (blocking)."""
|
|
t = threading.Thread(target=run_loop, args=(30,), daemon=True)
|
|
t.start()
|
|
|
|
app = build_app()
|
|
app.run_polling()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|