# 每日報導 APP - 需要確認事項 > 建立日期:2025-01-27 --- ## 🔴 重要:資料表設計不一致 ### 問題 1:訂閱功能資料表 **現況:** - Checklist 中**未選擇** `subscriptions(訂閱表)` - 但 SDD 中明確提到「讀者可自行訂閱感興趣的群組」 **需要確認:** - [ ] 訂閱功能是否需要獨立的 `subscriptions` 資料表? - [ ] 還是使用其他方式實現(如 users 表的 JSON 欄位)? - [ ] 如果不需要獨立表,如何記錄用戶訂閱關係? **建議:** 訂閱功能是核心功能,建議建立 `subscriptions` 表以支援多對多關係。 --- ### 問題 2:收藏與標註功能 **現況:** - Checklist 中**未選擇** `favorites(收藏表)` 和 `annotations(標註表)` - SDD 中標註為「未來擴充」 **需要確認:** - [ ] 收藏功能是否在第一階段實作? - [ ] 標註功能是否在第一階段實作? - [ ] 如果第一階段不實作,資料表設計是否預留? --- ## 🟡 環境變數配置需要補充 ### 需要確認的環境變數清單 #### 1. 資料庫連線(✅ 已確認) - [x] `DB_HOST` - mysql.theaken.com - [x] `DB_PORT` - 33306 - [x] `DB_NAME` - db_A101 - [x] `DB_USER` - A101 - [x] `DB_PASSWORD` - Aa123456 - **連線狀態:** ✅ 測試連線正常 #### 2. Redis 連線(需要確認) - [ ] `REDIS_HOST` - Redis 主機位址(預設:localhost) - [ ] `REDIS_PORT` - Redis 埠號(預設:6379) - [ ] `REDIS_PASSWORD` - Redis 密碼(如有) - [ ] `REDIS_DB` - Redis 資料庫編號(預設:0) #### 3. Celery 設定(需要確認) - [ ] `CELERY_BROKER_URL` - 訊息佇列 URL(Redis 或 RabbitMQ) - [ ] `CELERY_RESULT_BACKEND` - 結果儲存位置(通常與 broker 相同) #### 4. SMTP 設定(需要確認) - [ ] `SMTP_HOST` - SMTP 伺服器位址 - [ ] `SMTP_PORT` - SMTP 埠號(預設:587) - [ ] `SMTP_USERNAME` - SMTP 帳號 - [ ] `SMTP_PASSWORD` - SMTP 密碼 - [ ] `SMTP_FROM_EMAIL` - 寄件者 Email - [ ] `SMTP_FROM_NAME` - 寄件者名稱(預設:每日報導系統) - [ ] `SMTP_USE_TLS` - 是否使用 TLS(預設:True) #### 5. AD/LDAP 設定(需要確認) - [ ] `LDAP_SERVER` - LDAP 伺服器位址 - [ ] `LDAP_PORT` - LDAP 埠號(預設:389) - [ ] `LDAP_BASE_DN` - LDAP Base DN - [ ] `LDAP_BIND_DN` - LDAP 綁定 DN(如有) - [ ] `LDAP_BIND_PASSWORD` - LDAP 綁定密碼(如有) - [ ] `LDAP_USER_SEARCH_FILTER` - 用戶搜尋過濾器(預設:`(sAMAccountName={username})`) #### 6. LLM API Keys(需要確認) - [ ] `GEMINI_API_KEY` - Google Gemini API Key - [ ] `OPENAI_API_KEY` - OpenAI API Key - [ ] `OLLAMA_ENDPOINT` - Ollama 端點 URL(預設:http://localhost:11434) #### 7. Digitimes 帳號(需要確認) - [ ] `DIGITIMES_USERNAME` - Digitimes 登入帳號 - [ ] `DIGITIMES_PASSWORD` - Digitimes 登入密碼 #### 8. 應用程式設定(需要確認) - [ ] `SECRET_KEY` - 應用程式密鑰(用於加密) - [ ] `JWT_SECRET_KEY` - JWT 簽章密鑰 - [ ] `APP_ENV` - 環境(development/staging/production) - [ ] `DEBUG` - 除錯模式(預設:False) --- ## 🟡 功能實作細節需要確認 ### 問題 3:台灣行事曆 API **現況:** SDD 提到「使用台灣行事曆 API 判斷工作日」 **需要確認:** - [ ] 使用哪個台灣行事曆 API? - [ ] 政府資料開放平台 - [ ] 第三方 API(如 holiday.tw) - [ ] 自行維護假日清單 - [ ] API 連線失敗時的備援機制? - [ ] 是否需要快取假日資料? --- ### 問題 4:關鍵字過濾機制 **現況:** SDD 提到「關鍵字過濾後自動審核」 **需要確認:** - [ ] 關鍵字清單由誰維護?(系統管理員?) - [ ] 過濾規則: - [ ] 包含特定關鍵字 → 需要審核 - [ ] 不包含特定關鍵字 → 自動通過 - [ ] 其他規則? - [ ] 過濾後的留言狀態: - [ ] 標記為「待審核」 - [ ] 直接隱藏 - [ ] 其他處理方式? --- ### 問題 5:Email 批次發送細節 **現況:** SDD 提到「批次發送(每批 10 封)」 **需要確認:** - [ ] 批次間隔時間?(如每批間隔 1 秒) - [ ] 發送失敗的重試機制? - [ ] 是否使用 Celery 背景任務處理? --- ### 問題 6:初步摘要機制 **現況:** SDD 提到「當新聞內容超過模型 token 限制時,先進行初步摘要再送 LLM」 **需要確認:** - [ ] 初步摘要使用哪種方法? - [ ] 簡單的文字截斷(保留前 N 字) - [ ] 使用較小的 LLM 模型先摘要 - [ ] 使用規則式摘要(提取關鍵句) - [ ] 初步摘要的目標長度?(如縮減至 50%) --- ### 問題 7:PDF 中的新聞連結 **現況:** SDD 提到「相關新聞列表(標題 + 連結)」 **需要確認:** - [ ] PDF 中的連結格式? - [ ] 完整 URL(https://...) - [ ] 短連結(需要短連結服務) - [ ] QR Code(需要 QR Code 生成) - [ ] 如果新聞來源需要登入(如 Digitimes),連結如何處理? --- ## 🟢 建議補充的規格 ### 1. 環境變數管理章節 建議在 SDD 中新增「環境變數配置」章節,列出所有需要的環境變數。 ### 2. 資料庫 Schema 詳細設計 建議補充: - 各資料表的完整欄位定義 - 外鍵關係 - 索引設計 - 預設值與約束條件 ### 3. API 端點規格 建議補充: - RESTful API 端點清單 - 請求/回應格式 - 認證方式 - 錯誤碼定義 ### 4. 部署架構圖 建議補充: - 系統架構圖 - 資料流圖 - 部署架構圖 --- ## 📝 待您提供的資訊 1. **資料庫連線資訊**(✅ 已提供) - DB_HOST: mysql.theaken.com - DB_PORT: 33306 - DB_NAME: db_A101 - DB_USER: A101 - DB_PASSWORD: Aa123456 - **狀態:** ✅ 測試連線正常 2. **Redis 連線資訊**(需要確認) - REDIS_HOST - REDIS_PORT - REDIS_PASSWORD(如有) 3. **SMTP 設定**(需要確認) - SMTP_HOST - SMTP_USERNAME - SMTP_PASSWORD - SMTP_FROM_EMAIL 4. **LDAP 設定**(需要確認) - LDAP_SERVER - LDAP_BASE_DN - 其他 LDAP 參數 5. **其他 API Keys**(需要確認) - GEMINI_API_KEY 或 OPENAI_API_KEY - DIGITIMES_USERNAME 和 PASSWORD --- ## ✅ 下一步行動 1. 請確認上述問題的答案 2. 提供資料庫連線資訊 3. 確認其他環境變數設定 4. 決定訂閱功能的資料表設計方式 --- **最後更新:** 2025-01-27