from google.oauth2.credentials import Credentials from googleapiclient.discovery import build import json cal_id = "fd0c7cf8ec9fc8fc1d8a9811c439717f6246e2e53ee9fe2046c720b29242fc4e@group.calendar.google.com" token_file = "/root/.hermes/google_token.json" with open(token_file) as f: token_data = json.load(f) service = build("calendar", "v3", credentials=Credentials.from_authorized_user_info(token_data)) # 1. Create 4 Reminder events for Macro Assignments distribution macro_reminders = [ { "summary": "[REMINDER] Macro: Nhận Bài tập 1 (Hạn nộp 15/11 08:20)", "colorId": "2", "start": {"dateTime": "2026-11-05T19:30:00+07:00"}, "end": {"dateTime": "2026-11-05T20:00:00+07:00"}, "description": "Nhắc nhở học tập: Giảng viên phát Bài tập 1 môn Kinh tế học vĩ mô.\nChủ đề: Hạch toán kinh tế vĩ mô và các chỉ báo căn bản.\nThời hạn nộp: Trước 08:20 sáng ngày 15/11/2026.\nTrọng số: 5% tổng điểm môn học (1 trong 4 bài tập cá nhân, tổng 20%)." }, { "summary": "[REMINDER] Macro: Nhận Bài tập 2 (Hạn nộp 17/11 08:20)", "colorId": "2", "start": {"dateTime": "2026-11-15T16:45:00+07:00"}, "end": {"dateTime": "2026-11-15T17:15:00+07:00"}, "description": "Nhắc nhở học tập: Giảng viên phát Bài tập 2 môn Kinh tế học vĩ mô.\nChủ đề: Thị trường hàng hóa, chính sách tài khóa và hệ thống tiền tệ.\nThời hạn nộp: Trước 08:20 sáng ngày 17/11/2026.\nTrọng số: 5% tổng điểm môn học (1 trong 4 bài tập cá nhân, tổng 20%)." }, { "summary": "[REMINDER] Macro: Nhận Bài tập 3 (Hạn nộp 22/11 08:20)", "colorId": "2", "start": {"dateTime": "2026-11-17T16:45:00+07:00"}, "end": {"dateTime": "2026-11-17T17:15:00+07:00"}, "description": "Nhắc nhở học tập: Giảng viên phát Bài tập 3 môn Kinh tế học vĩ mô.\nChủ đề: Mô hình IS LM, Mô hình AS AD và phối hợp chính sách.\nThời hạn nộp: Trước 08:20 sáng ngày 22/11/2026.\nTrọng số: 5% tổng điểm môn học (1 trong 4 bài tập cá nhân, tổng 20%)." }, { "summary": "[REMINDER] Macro: Nhận Bài tập 4 (Hạn nộp 29/11 08:20)", "colorId": "2", "start": {"dateTime": "2026-11-22T11:45:00+07:00"}, "end": {"dateTime": "2026-11-22T12:15:00+07:00"}, "description": "Nhắc nhở học tập: Giảng viên phát Bài tập 4 môn Kinh tế học vĩ mô.\nChủ đề: Cán cân thanh toán (BOP), tỷ giá và Mô hình Mundell Fleming.\nThời hạn nộp: Trước 08:20 sáng ngày 29/11/2026.\nTrọng số: 5% tổng điểm môn học (1 trong 4 bài tập cá nhân, tổng 20%)." } ] for rem in macro_reminders: print(f"Creating reminder: {rem['summary']}...") res = service.events().insert(calendarId=cal_id, body=rem).execute() print(f" ✓ Created: {res.get('summary')} (ID: {res.get('id')})") # 2. Update Micro 1 Case Study events and sessions # 19/11: 92iul4ctnv8gr617f55svhv088 -> DDL Tình huống 1 # 19/11: drk38hl5p6dospi8fkvq3a28qs -> Buổi 8 Tình huống 1 # 28/11: q42ffir5i5v5osops2gc613320 -> DDL Tình huống 2 # 28/11: lgj1ctbco87tma853v9ll2s1l0 -> Buổi 11 Tình huống 2 micro_updates = { "92iul4ctnv8gr617f55svhv088": { "summary": "[DDL] Micro 1: Nộp Tình huống 1: Cuộc khủng hoảng cà phê (08:20)", "description": "Hạn chót nộp bài viết Nghiên cứu Tình huống 1: Cuộc khủng hoảng cà phê.\nTài liệu đính kèm: [1911][CS] Case 1. Cuoc khung hoang cafe (V).pdf.\nThời hạn quy định: Nộp trước 08:20 sáng ngày 19/11/2026.\nTrọng số: 7.5% tổng điểm môn học (1 trong 2 bài tình huống, tổng 15%)." }, "drk38hl5p6dospi8fkvq3a28qs": { "summary": "[PA] Micro 1: Phúc lợi xã hội & Tình huống 1: Cuộc khủng hoảng cà phê", "description": "Buổi 8: Phân tích phúc lợi và Nghiên cứu Tình huống 1\nCa 1: Hiệu quả và công bằng (PR, Chương 16; SAB, Chương 6)\nCa 2: Thảo luận Tình huống 1: Cuộc khủng hoảng cà phê ([1911][CS] Case 1. Cuoc khung hoang cafe (V).pdf)\nHình thức: Tập trung tại trường (Fulbright)\nThời gian: 08:30 đến 11:45\nGiảng viên: Doãn Thị Thanh Thủy và Đặng Văn Thanh\nLưu ý quan trọng: Hạn nộp bài viết tình huống 1 trước 08:20 sáng nay.\n\nCơ cấu đánh giá môn Kinh tế học vi mô 1:\n• Tham gia trên lớp: 10%\n• Nghiên cứu tình huống: 15% (2 bài, mỗi bài 7.5%)\n• Bài tập về nhà: 25% (2 bài, mỗi bài 12.5%)\n• Kiểm tra tại lớp (Quiz): 25%\n• Bài thi cuối kỳ: 25%" }, "q42ffir5i5v5osops2gc613320": { "summary": "[DDL] Micro 1: Nộp Tình huống 2: TT ĐTDĐ Việt Nam (08:20)", "description": "Hạn chót nộp bài viết Nghiên cứu Tình huống 2: Thị trường dịch vụ điện thoại di động ở Việt Nam (Vũ Thành Tự Anh & Đỗ Hoàng Phương).\nTài liệu đính kèm: [2811][CS] Case 2. Thi truong DTDD o Viet Nam (V).pdf.\nThời hạn quy định: Nộp trước 08:20 sáng ngày 28/11/2026.\nTrọng số: 7.5% tổng điểm môn học (1 trong 2 bài tình huống, tổng 15%)." }, "lgj1ctbco87tma853v9ll2s1l0": { "summary": "[PA] Micro 1: Tình huống 2: TT ĐTDĐ VN & Thông tin bất cân xứng (Hybrid)", "description": "Buổi 11: Tình huống 2 và Thất bại thị trường\nCa 1: Thảo luận Tình huống 2: Thị trường dịch vụ điện thoại di động ở Việt Nam ([2811][CS] Case 2. Thi truong DTDD o Viet Nam (V).pdf)\nCa 2: Thất bại thị trường: Thông tin bất cân xứng (PR, Chương 17)\nHình thức: Kết hợp Trực tiếp và Trực tuyến (Hybrid)\nThời gian: 08:30 đến 11:45\nGiảng viên: Doãn Thị Thanh Thủy và Đặng Văn Thanh\nLưu ý quan trọng: Hạn nộp bài viết tình huống 2 trước 08:20 sáng nay.\n\nCơ cấu đánh giá môn Kinh tế học vi mô 1:\n• Tham gia trên lớp: 10%\n• Nghiên cứu tình huống: 15% (2 bài, mỗi bài 7.5%)\n• Bài tập về nhà: 25% (2 bài, mỗi bài 12.5%)\n• Kiểm tra tại lớp (Quiz): 25%\n• Bài thi cuối kỳ: 25%" } } for eid, patch_data in micro_updates.items(): print(f"Updating Micro event {eid}...") res = service.events().patch(calendarId=cal_id, eventId=eid, body=patch_data).execute() print(f" ✓ Updated: {res.get('summary')}") print("\nSuccessfully updated reminders and case studies!")