# 語言程度晉階系統 API ## 概述 語言程度晉階系統API負責管理用戶語言水平的評估和晉升,包括程度追蹤、滿星對話要求和晉階儀式。 ## API 端點 ### 獲取語言程度狀態 ```http GET /api/v1/language-level/status Authorization: Bearer Response 200 OK { "success": true, "data": { "current_level": { "level_id": "LEVEL_A2_2", "level_number": 3, "cefr_level": "A2", "level_name": "A2中級", "description": "能夠理解和使用日常用語和基本短語", "learning_focus": [ "基礎日常對話", "簡單描述個人背景", "表達基本需求" ] }, "advancement_progress": { "current_level_requirements": { "required_perfect_dialogues": 10, "completed_perfect_dialogues": 7, "completion_percentage": 70, "remaining_dialogues": 3 }, "total_progress": { "total_required": 25, "total_completed": 22, "overall_percentage": 88 } }, "next_level": { "level_id": "LEVEL_B1_1", "level_number": 4, "cefr_level": "B1", "level_name": "B1初級", "benefits": [ "解鎖更豐富的對話場景", "更複雜的語言結構練習", "進階語法訓練" ] } } } ``` ### 滿星對話完成檢查 ```http POST /api/v1/language-level/perfect-dialogue-completed Authorization: Bearer { "dialogue_result": { "dialogue_id": "DLG_20240905_001", "scenario_id": "SC_Restaurant_01", "final_score": 95, "stars_earned": 3, "is_perfect_score": true, "evaluation_scores": { "grammar_score": 95, "semantic_score": 96, "fluency_score": 94, "vocabulary_score": 97 } } } Response 200 OK { "success": true, "data": { "level_progress_updated": true, "new_progress": { "current_level_dialogues": 8, "total_completed": 23 }, "advancement_check": { "ready_for_advancement": false, "remaining_requirements": { "perfect_dialogues_needed": 2 } }, "level_up_triggered": false } } ``` ### 執行語言程度晉階 ```http POST /api/v1/language-level/advance Authorization: Bearer Response 200 OK { "success": true, "data": { "advancement_completed": true, "previous_level": { "level_id": "LEVEL_A2_2", "cefr_level": "A2" }, "new_level": { "level_id": "LEVEL_B1_1", "cefr_level": "B1", "level_name": "B1初級", "description": "能夠處理日常生活中大部分語言需求" }, "rewards_granted": { "experience_gained": 500, "achievements_unlocked": ["language_advancement_b1"], "content_unlocked": { "scenarios": [ { "scenario_id": "SC_Business_Meeting_01", "title": "商務會議", "difficulty": "B1" } ] } }, "advancement_date": "2024-09-05T17:00:00Z" } } ``` ### 獲取語言程度歷史 ```http GET /api/v1/language-level/history Authorization: Bearer Response 200 OK { "success": true, "data": { "advancement_history": [ { "level_id": "LEVEL_A1_1", "level_name": "A1初級", "cefr_level": "A1", "started_at": "2024-01-15T10:00:00Z", "completed_at": "2024-02-28T16:30:00Z", "duration_days": 44, "perfect_dialogues_completed": 10, "total_scenarios_completed": 25 }, { "level_id": "LEVEL_A2_1", "level_name": "A2初級", "cefr_level": "A2", "started_at": "2024-02-28T16:30:00Z", "completed_at": "2024-06-15T14:20:00Z", "duration_days": 107, "perfect_dialogues_completed": 25, "total_scenarios_completed": 45 } ], "performance_analysis": { "average_advancement_days": 75.5, "total_perfect_dialogues": 67, "strongest_areas": ["vocabulary_usage", "fluency"], "improvement_areas": ["grammar_complexity", "cultural_awareness"], "learning_velocity": "steady" } } } ``` ### 獲取各程度評估標準 ```http GET /api/v1/language-level/criteria Authorization: Bearer Response 200 OK { "success": true, "data": { "evaluation_criteria": { "semantic_appropriateness": { "description": "語意合適度", "weight": 25, "factors": [ "上下文理解準確性", "回應內容相關性", "情境適當性" ] }, "grammar_accuracy": { "description": "語法錯誤率", "weight": 25, "factors": [ "句法結構正確性", "動詞時態使用", "語序和搭配" ] }, "fluency": { "description": "表達流暢度", "weight": 25, "factors": [ "語言自然度", "停頓和節奏", "表達連貫性" ] }, "vocabulary_score": { "description": "詞彙分數", "weight": 25, "factors": [ "詞彙多樣性", "詞彙準確性", "適當詞彙選擇" ] } }, "level_standards": { "A1": { "minimum_score": 60, "focus_areas": ["基礎詞彙", "簡單句型", "基本溝通"] }, "A2": { "minimum_score": 70, "focus_areas": ["日常對話", "基本語法", "情境理解"] }, "B1": { "minimum_score": 75, "focus_areas": ["工作學習", "意見表達", "經驗描述"] }, "B2": { "minimum_score": 80, "focus_areas": ["複雜主題", "抽象概念", "論述技巧"] }, "C1": { "minimum_score": 85, "focus_areas": ["專業溝通", "文化理解", "精確表達"] }, "C2": { "minimum_score": 90, "focus_areas": ["母語水準", "微妙差異", "專精表達"] } } } } ``` ## 錯誤處理 ### 語言程度晉階相關錯誤 - `LANGUAGE_LEVEL_NOT_FOUND`: 語言程度不存在 - `ADVANCEMENT_REQUIREMENTS_NOT_MET`: 不滿足晉階條件 - `ADVANCEMENT_ALREADY_COMPLETED`: 晉階已經完成 - `INVALID_PERFECT_DIALOGUE_DATA`: 無效的滿星對話數據 - `LEVEL_CALCULATION_ERROR`: 程度計算錯誤 - `ADVANCEMENT_CEREMONY_FAILED`: 晉階儀式顯示失敗 - `LEVEL_PROGRESS_SYNC_FAILED`: 程度進度同步失敗 --- **建立日期**: 2025-09-08 **API版本**: v1 **負責模組**: 語言程度晉階系統