Dữ liệu của các hoạt động ngoài giờ học (LMS Data)

Mục lục

Một khóa học của ClassIn có thể tạo được nhiều hoạt động học tập LMS. Hiện tại, có thể nhận dữ liệu trả về theo thời gian thực cho các hoạt động sau:

  • Điểm của hoạt động Bài tập
  • Điểm của hoạt động Bài kiểm tra
  • Điểm của hoạt động Phiếu đáp án

The course consists of various learning activities on the ClassIn LMS. Currently, the learning activities that are available with real-time webhooks are:

  • Score of Assignment
  • Assignment Submission
  • Score of Test
  • Score of Answer Sheet

Assignment score #

Gửi dữ liệu điểm số của học sinh theo thời gian thực ngay sau khi bài tập được cập nhật điểm

KeyĐịnh dạngMô tả
CmdStringcmd=’HomeworkScore’
SIDInt64ID của trường
CourseIDInt64ID khóa học
CourseNameStringTên khóa học
DataObjectChi tiết
└ UnitIdInt64ID chương
└ UnitNameStringTên chương
└ ActivityIdInt64ID của hoạt động
└ ActivityNameStringTên hoạt động
└ ScorefloatĐiểm số
└ StudentInfoObjectThông tin học sinh
  └ StudentUidInt64UID của học sinh
  └ StudentNameStringTên học sinh: Tên hiển thị trên app của HS khi tham gia hoạt động Bài tập
  └ StudentAccountStringTài khoản học sinh (SĐT/Email)
└ SubmissionTimeInt64Thời gian nộp bài tập
└ CorrectionTimeInt64Thời gian bài tập được chấm điểm
└ StudentScoringRatefloatMức độ hoàn thành của học sinh: Hiện điểm theo dạng thập phân (ví dụ: 0.8)
Logic tính điểm: Mức độ hoàn thành của học sinh = Số điểm thực tế của học sinh đã được chấm / Tổng điểm của bài tập
└ TeacherInfoObjectThông tin GV đã chấm điểm
  └ TeacherUidInt64UID giáo viên
  └ TeacherNameStringTên giáo viên: Tên hiển thị trên app của GV khi mở hoạt động Bài tập
  └ TeacherAccountStringTài khoản giáo viên (SĐT/Email)

Example #


{
    "Cmd" : "HomeworkScore",
    "SID" : 2803666,
    "CourseID" : 2279909,
    "CourseName" : "Test",
    "Data" : {
        "UnitId" : 256,
        "UnitName" : "Unit One",
        "ActivityId" : 185647,
        "ActivityName" : "Test Homework",
        "Score" : 100,
        "StudentInfo" : {
                "StudentUid" : 1000083,
                "StudentName" : "Amy",
                "StudentAccount" : "13451113311"
        },
        "SubmissionTime" : 1713053774,
        "CorrectionTime" : 1713083674,
        "StudentScoringRate" : 0.9,
        "TeacherInfo" : {
                "TeacherUid" : 1000082,
                "TeacherName" : "Mike",
                "TeacherAccount" : "13466668866"
        }
    }
}

Assignment submission #

Gửi dữ liệu nộp bài tập của học sinh theo thời gian thực ngay sau khi bài tập được nộp

KeyDataDescription
CmdStringcmd=’HomeworkSubmit’
SIDInt64ID của trường
CourseIDInt64ID khóa học
CourseNameStringTên khóa học
DataObjectChi tiết
└ UnitIdInt64ID chương
└ UnitNameStringTên chương
└ ActivityIdInt64ID của hoạt động
└ ActivityNameStringTên hoạt động
StudentTotalInt64Số lượng học sinh tham gia hoạt động
SubmitTotalInt64Số học sinh đã nộp bài
SubmissionTimeInt64Thời gian nộp bài
IsSubmitLateInt64Nộp trễ: 0=không, 1=có
IsRevisionInt64Trả về làm lại: 0=không, 1=có
ContentStringNội dung bài tập
FilesObjectTệp đính kèm bài tập
└ SrcStringURL tải tệp
└ FileNameStringTên tệp
└ FileExtensionStringĐịnh dạng tệp
StudentInfoObjectThông tin học sinh
└ StudentUidInt64UID học sinh
└ StudentNameStringTên học sinh: Tên hiển thị trên app của HS khi tham gia hoạt động Bài tập
└ StudentAccountStringTài khoản học sinh (SĐT/Email)
TeacherInfoObjectThông tin GV
└ TeacherUidInt64UID giáo viên
└ TeacherNameStringTên giáo viên: Tên hiển thị trên app của GV khi mở hoạt động Bài kiểm tra
└ TeacherAccountStringTài khoản giáo viên (SĐT/Email). Nếu bài kiểm tra được chấm điểm tự động thì trường này sẽ trống

Example #


{
    "ActionTime": 1741334951,
    "CourseID": 26901289,
    "TimeStamp": 1741335551,
    "SafeKey": "d9a20c9bf3ac660766ddbfac4988ca31",
    "Cmd": "HomeworkSubmit",
    "CourseName": "test course",
    "SID": 1068502,
    "_id": "67caa9a7976eb388db162139",
    "Data": {
        "Files": [
            {
                "FileExtension": "png",
                "src": "https://static.eeo.cn/upload/files/file01/20250307/03_03_71cfd3e-a71f-58e7-0cc8-577183e60485_1741334949147.png",
                "fileName": "eeo.png"
            }
        ],
        "TeacherInfo": {
            "TeacherName": "Lucy",
            "TeacherAccount": "001-38102248",
            "TeacherUid": 10602
        },
        "ActivityName": "Magic Key",
        "UnitName": "test unit",
        "IsSubmitLate": 1,
        "StudentTotal": 2,
        "Content": "<section class=\"eeo-editor-wrapper\" style=\"font-size:15px;color:#38404A;\"><p>start\u00a0</p></section>",
        "ActivityId": 54911996,
        "IsRevision": 0,
        "StudentInfo": {
            "StudentName": "GoodGuy",
            "StudentAccount": "23672340105",
            "StudentUid": 102494
        },
        "UnitId": 255618,
        "SubmissionTime": 1741334950,
        "SubmitTotal": 1
    }
}

Test score #

Gửi điểm số của học sinh theo thời gian thực ngay sau khi bài kiểm tra được chấm điểm thủ công hoặc tự động. Nếu như bài kiểm tra chỉ được chấm điểm một phần thì dữ liệu sẽ không được gửi

 

KeyĐịnh dạngMô tả
CmdStringcmd=’ExamScore’
SIDInt64ID của trường
CourseIDInt64ID của khóa học
CourseNameStringTên khóa học
DataObjectChi tiết
└ UnitIdInt64ID chương
└ UnitNameStringTên chương
└ ActivityIdInt64ID của hoạt động
└ ActivityNameStringTên hoạt động
└ClassIdInt64ID lớp học — sẽ hiển thị nếu như bài kiểm tra được giao trong lớp
└ ScorefloatĐiểm số
└ StudentInfoObjectThông tin học sinh
 └ StudentUidInt64UID học sinh
 └ StudentNameStringTên học sinh: Tên hiển thị trên app của HS khi tham gia hoạt động Bài kiểm tra
 └ StudentAccountStringTài khoản học sinh (SĐT/Email)
└ SubmissionTimeInt64Thời gian nộp bài kiểm tra
└ AnswerDurationInt64Thời gian học sinh làm bài kiểm tra (tính theo giây)
└ CorrectionTimeInt64Thời gian bài kiểm tra được chấm điểm
└ StudentScoringRatefloatMức độ hoàn thành của học sinh: Hiện điểm theo dạng thập phân (ví dụ: 0.8)
Logic tính điểm: Mức độ hoàn thành của học sinh = Số điểm thực tế của học sinh đã được chấm / Tổng điểm của bài kiểm tra
└ TeacherInfoObjectThông tin giáo viên đã chấm điểm
 └ TeacherUidInt64UID của giáo viên. Nếu bài kiểm tra được chấm điểm tự động thì trường này sẽ là 0
 └ TeacherNameStringTên giáo viên: Tên hiển thị trên app của GV khi mở hoạt động Bài kiểm tra
 └ TeacherAccountStringTài khoản giáo viên (SĐT/Email). Nếu bài kiểm tra được chấm điểm tự động thì trường này sẽ trống
└TopicDetailsarray[object]Điểm chi tiết
 └TopicIdintID của câu hỏi
 └TopicTypeStringLoại câu hỏi. 1: Một đáp án đúng; 2: Nhiều đáp án đúng; 3: Đúng/Sai; 4: Điền vào chỗ trống; 5: Tự luận Q&A; 6: Tổng hợp
 └ TopicResultint0 = đang chờ chấm điểm,1=đúng,3=đúng một phần,2=sai,4=không trả lời
 └TopicScorefloatĐiểm của học sinh ở câu này
 └TopicMaxScorefloatĐiểm tối đa của câu
 └SubTopicDetailsarray[object]Nếu không có câu hỏi phụ thì trường này sẽ hiển thị bảng trống[]
   └SubTopicIdintID của câu hỏi phụ
   └SubTopicTypeStringLoại câu hỏi. 1: Một đáp án đúng; 2: Nhiều đáp án đúng; 3: Đúng/Sai; 4: Điền vào chỗ trống; 5: Tự luận Q&A; 6: Tổng hợp 
   └SubTopicResultint[]0 = đang chờ chấm điểm,1=đúng,3=đúng một phần,2=sai,4=không trả lời
   └SubTopicScorefloatĐiểm của học sinh ở câu này
   └SubTopicMaxScoreintĐiểm tối đa của câu

Example #


{
    "CourseID": 429724,
    "Cmd": "ExamScore",
    "CourseName": "Test Class",
    "SID": 187286,
    "Data": {
        "ClassId": 34928113,
        "TeacherInfo": {
            "TeacherName": "Lucy",
            "TeacherAccount": "12114444011",
            "TeacherUid": 187286
        },
        "ActivityName": "test Monday",
        "UnitName": "Unit 1",
        "AnswerDuration": 57,
        "ActivityId": 32044258,
        "Score": 24,
        "StudentInfo": {
            "StudentName": "Tom",
            "StudentAccount": "12133333301",
            "StudentUid": 187268
        },
        "UnitId": 32014550,
        "SubmissionTime": 1729576858,
        "TopicDetails": [{
            "TopicId": 1,
            "TopicType": "1",
            "SubTopicDetails": [],
            "TopicResult": [2],
            "TopicMaxScore": 5,
            "TopicScore": 0
        }, 
        {
            "TopicId": 2,
            "TopicType": "5",
            "SubTopicDetails": [],
            "TopicResult": [3],
            "TopicMaxScore": 4,
            "TopicScore": 2
        }, 
        {
            "TopicId": 3,
            "TopicType": "4",
            "SubTopicDetails": [],
            "TopicResult": [2, 2, 2],
            "TopicMaxScore": 6,
            "TopicScore": 0
        }, 
        {
            "TopicId": 4,
            "TopicType": "6",
            "SubTopicDetails": [{
                "SubTopicId": 1,
                "SubTopicType": "1",
                "SubTopicResult": [2],
                "SubTopicScore": 0,
                "SubTopicMaxScore": 5
            }, 
            {
                "SubTopicId": 2,
                "SubTopicType": "2",
                "SubTopicResult": [2],
                "SubTopicScore": 0,
                "SubTopicMaxScore": 4
            }],
            "TopicResult": [2],
            "TopicMaxScore": 9,
            "TopicScore": 0
        }],
        "StudentScoringRate": 0.083333,
        "CorrectionTime": 1729576949
    }
}

AnswerSheet Score #

Gửi theo thời gian thực ngay sau khi phiếu đáp án được chấm điểm thủ công hoặc tự động. Nếu như phiếu đáp án chỉ

được chấm điểm một phần thì dữ liệu sẽ không được gửi. Khi điểm số của Phiếu đáp án được chỉnh sửa hoặc cập nhật thì dữ liệu này cũng sẽ được gửi.

KeyDataDescription
CmdStringcmd=’AnswerSheetScore’
SIDInt64ID của trường
CourseIDInt64ID của khóa học
CourseNameStringTên khóa học
DataObjectChi tiết
└ UnitIdInt64ID Chương
└ UnitNameStringTên Chương
└ ActivityIdInt64ID hoạt động
└ ActivityNameStringTên hoạt động
└ClassIdInt64ID lớp học (lesson) — Nếu hoạt động được mở trong lớp học ảo thì sẽ có dữ liệu này
└ ScorefloatĐiểm tổng
└ StudentInfoObjectThông tin học sinh
 └ StudentUidInt64UID học sinh
 └ StudentNameStringTên học sinh: Tên hiển thị trên app của HS khi tham gia hoạt động Bài kiểm tra
 └ StudentAccountStringTài khoản học sinh (SĐT/Email)
└ SubmissionTimeInt64Thời gian nộp bài
└ AnswerDurationInt64Thời gian làm bài
└ CorrectionTimeInt64Thời gian chấm bài
└ StudentScoringRatefloatTỷ lệ điểm của học sinh: Số thập phân, ví dụ 0.8
Công thức tính: Tỷ lệ điểm của học sinh = Số điểm học sinh đạt được trong bài tập / Tổng điểm tối đa
└ TeacherInfoObjectHiện tại đang trống
 └ TeacherUidInt64Hiện tại đang mặc định là 0. Sẽ cập nhật trong tương lai
 └ TeacherNameStringHiện tại đang trống
 └ TeacherAccountStringTài khoản giáo viên: Nếu giáo viên đã đăng ký số điện thoại di động, số điện thoại sẽ được sử dụng để gửi dữ liệu. Nếu không có số điện thoại, địa chỉ email sẽ được sử dụng thay thế. Sẽ để trống nếu Phiếu đáp án được chấm điểm tự động
└TopicDetailsarray[object]array
 └TopicIdintID của câu hỏi
 └TopicTypeStringLoại câu hỏi: 1: Một đáp án đúng;
2: Nhiều đáp án đúng; 3: Đúng – Sai; 4: Điền vào chỗ trống; 5: Câu hỏi tự luận; 6: Câu hỏi tổng hợp
 └ TopicResultint0 = Chờ chấm điểm,1= Đúng,3= Đúng 1 phần,2= Sai,4= Không trả lời
 └TopicScorefloatĐiểm của học sinh
 └TopicMaxScorefloatĐiểm tối đa học sinh có thể nhận được
 └SubTopicDetailsarray[object]nếu không có câu hỏi phụ thì phần này sẽ trống []
   └SubTopicIdintid câu hỏi phụ
   └SubTopicTypeStringLoại câu hỏi: 1: Một đáp án đúng; 2: Nhiều đáp án đúng; 3: Đúng – Sai; 4: Điền vào chỗ trống; 5: Câu hỏi tự luận; 6: Câu hỏi tổng hợp 
   └SubTopicResultint[]0 = Chờ chấm điểm,1= Đúng,3= Đúng 1 phần,2= Sai,4= Không trả lời
   └SubTopicScorefloatĐiểm của học sinh
   └SubTopicMaxScoreintĐiểm tối đa học sinh có thể nhận được

Example #


{
    "CourseID": 429724,
    "Cmd": "ExamScore",
    "CourseName": "Test Class",
    "SID": 187286,
    "Data": {
        "ClassId": 34928113,
        "TeacherInfo": {
            "TeacherName": "",
            "TeacherAccount": "",
            "TeacherUid": 0
        },
        "ActivityName": "AnswerSheet on Monday",
        "UnitName": "Unit 1",
        "AnswerDuration": 57,
        "ActivityId": 32044258,
        "Score": 24,
        "StudentInfo": {
            "StudentName": "Tom",
            "StudentAccount": "12133333301",
            "StudentUid": 187268
        },
        "UnitId": 32014550,
        "SubmissionTime": 1729576858,
        "TopicDetails": [{
            "TopicId": 1,
            "TopicType": "1",
            "SubTopicDetails": [],
            "TopicResult": [2],
            "TopicMaxScore": 5,
            "TopicScore": 0
        }, 
        {
            "TopicId": 2,
            "TopicType": "5",
            "TopicResult": [3],
            "TopicMaxScore": 4,
            "TopicScore": 2
        }, 
        {
            "TopicId": 3,
            "TopicType": "4",
            "TopicResult": [2, 2, 2],
            "TopicMaxScore": 6,
            "TopicScore": 0
        }, 
        {
            "TopicId": 4,
            "TopicType": "3",
            "TopicResult": [2],
            "TopicMaxScore": 9,
            "TopicScore": 0
        }],
        "StudentScoringRate": 0.083333,
        "CorrectionTime": 1729576949
    }
}