Tạo buổi học liên kết (Create Dual Lesson)

Mục lục

Chức năng: Tạo mô hình lớp học liên kết trực tuyến. Thông qua việc truyền ID lớp học và ID của buổi học chính cùng ID của các lớp học cần liên kết để hệ thống thực hiện thao tác tạo ra những buổi học phụ trong các lớp học được liên kết

Mô tả:

  • Buổi học chính và buổi học phụ không thể nằm trong cùng một lớp học. Các buổi học phụ cũng không thể nằm trong cùng một lớp học với nhau.
  • Trả về thông tin về việc mỗi buổi học phụ có được tạo thành công hay không, bao gồm ID lớp học, ID buổi học phụ và tên buổi học phụ được liên kết.
  • Các buổi học phụ sẽ có cùng thông tin giáo viên đứng lớp & thời gian học của buổi học chính.
  • Các buổi học phụ sẽ chỉ có thể sử dụng bộ tài liệu được cấp quyền cho lớp học tương ứng mà buổi học đó thuộc về.
  • subClassJson tối đa là 100 và một buổi học chính có thể được liên kết với tối đa 100 buổi học phụ.
  • Nếu cần thiết lập phát trực tiếp hoặc phát lại ghi hình lớp học cho một buổi học phụ, cần truyền useCoMainRecord, recordState, recordType, liveState và openState cùng lúc; nếu không, hệ thống sẽ báo cáo lỗi tham số.

Interface function: Support users to pass the main class ID and sub-class information (in batches), complete the creation of sub-classes and bind the main and sub-classes

Interface description:

  • Returns information on whether each sub-class is created successfully or not, including the course ID, sub-class ID, and sub-class name of the sub-class
  • Sub-classes do not need to pass the main teacher and time, and inherit the main teacher and time of the main class
  • Sub-classes inherit the cloud disk resources of the course to which they belong
  • The maximum number of subCalssJson is 100, limiting a single main class to bind up to 100 sub-classes
  • If the sub-class needs to set up a live playback of the recorded class, useCoMainRecord, recordState, recordType, liveState, and openState must be passed at the same time, otherwise a parameter error will be reported

URL

https://api.eeo.cn/lms/onlineDoubleTeacher/addClass

HTTP Request Methods

  • POST

Encoding format

  • UTF-8

Request parameters

Header parameters

KeyBắt buộcĐịnh dạngMô tả
X-EEO-SIGNBắt buộcstringSignature; tham khảo cách tạo tại đây
X-EEO-UIDBắt buộcstringSID (Xem dữ liệu này tại Trang quản lý classin.com trong mục API)
X-EEO-TSBắt buộcstringTimestamp (Thời gian UNIX Epoch là số giây đã trôi qua kể từ 00:00:00 (giờ chuẩn quốc tế) vào ngày 1 tháng 1 năm 1970)

Body parameters

KeyBắt buộcĐịnh dạngMô tảHướng dẫn
mainCourseIdBắt buộcintegerID của lớp học chính 
mainClassIdBắt buộcintegerID của buổi học chính 
subCalssJsonBắt buộcarrayDanh sách các lớp học phụ cần liên kếtTối đa 100 subCalssJson
└ courseIdBắt buộcintegerID lớp học của những lớp học phụ cần liên kết 
└ classNameBắt buộcstringTên buổi họcTối đa 50 ký tự
└ assistantUidsKhông bắt buộcarrayID của trợ giảng trong buổi học phụNếu không truyền mặc định buổi học đó không có trợ giảng
└ cameraHideKhông bắt buộcintegerThiết lập ẩn/hiện bục giảng0 = Không (hiển thị bục giảng), 1 = Có (Ẩn bục giảng). Mặc định 0; nếu không truyền thì tham số sẽ theo mặc định; nếu tham số truyền sai thì sẽ hiện báo lỗiparameter error; khicameraHide = 1, isAutoOnstage sẽ luôn là 0
└ isAutoOnstageKhông bắt buộcintegerThiết lập cho thành viên lớp tự động hiển thị trên bục khi vừa vào lớp1 = Không, 2 = Có. Mặc định là 1; nếu không truyền
└ seatNumKhông bắt buộcintegerSố lượng camera hiển thị trên bục giảngBao gồm cả camera của GV; Ví dụ: truyền 1 nghĩa là chọn chế độ 1v0 (chỉ hiển thị 1 camera của GV); nếu tham số này bỏ trống thì hệ thống sẽ mặc định để là 7 (tương đương chế độ 1v6). Nếu gói dịch vụ của trường có thiết lập số lượng camera trên bục thấp hơn thì hệ thống sẽ lấy dữ liệu dựa theo gói dịch vụ của trường
└ isHdKhông bắt buộcintegerChất lượng hiển thị của camera0 = SD, 1 = HD, 2 = Full HD. Mặc định là 0 khi tham số này không được truyền; Nếu tham số được truyền khác với các giá trị trên, hệ thống sẽ trả lỗi parameter error. Hiện tại, chỉ hỗ trợ chất lượng HD và FullHD cho chế độ 1v1 hoặc 1v6.
└ isDcKhông bắt buộcintegerBuổi học có sử dụng chế độ dual-camera hay không0 = Không cho phép, 3 = Cho phép. Mặc định là 0 khi tham số này không được truyền; Nếu tham số được truyền khác với các giá trị trên, hệ thống sẽ trả lỗi parameter error; Nếu isDc là 3 và số camera trên bục được thiết lập không phải chế độ 1v1 thì hệ thống sẽ trả lỗi this setting does not support dual-camera; Khi isDC = 3 và  vàseatNum = 2, thì isHd sẽ mặc định là 2 (hệ thống sẽ bỏ qua giá trị được truyền ở trường isHd)
└ useCoMainRecordKhông bắt buộcintegerThiết lập sử dụng dữ liệu ghi hình buổi học chính cho các buổi phụ.
1= Sử dụng, 0=Không sử dụng
Khi useCoMainRecord là 1, dữ liệu ghi hình của các buổi học phụ sẽ được bỏ qua. Các buổi học này sẽ lấy cùng dữ liệu ghi hình với buổi học chính
└ recordStateKhông bắt buộcintegerThiết lập ghi hình buổi học 0=Tắt, 1=BậtMặc định là 0, nếu tham số này không được truyền hoặc bỏ trống
└ recordTypeKhông bắt buộcintegerThiết lập chế độ ghi hình buổi học0 = Ghi hình lớp học, 1 = Ghi hình camera giáo viên, 2 = Ghi hình lớp học và camera giáo viên. Mặc định là 0 khi tham số này không được truyền; Nếu tham số được truyền khác với các giá trị trên, hệ thống sẽ trả lỗi parameter error
└ liveStateKhông bắt buộcintegerThiết lập chế độ livestream0 = Tắt, 1 = Bật livestream. Mặc định là 0 khi tham số này được truyền trống; Nếu tham số được truyền có giá trị khác với các giá trị trên, hệ thống sẽ trả lỗi parameter error. Nếu trường này truyền tham số là 1 thì recordState bắt buộc truyền 1
└ openStateKhông bắt buộcintegerThiết lập chế độ phát lại ghi hình0 = Tắt, 1 = Bật phát lại ghi hình. Mặc định là 0 khi tham số này được truyền trống; Nếu tham số được truyền có giá trị khác với các giá trị trên, hệ thống sẽ trả lỗi parameter error. Nếu trường này truyền tham số là 1 thì recordState bắt buộc truyền 1
└ uniqueIdentityKhông bắt buộcstring Tối đa 32 ký tự

Response data

KeyĐịnh dạngPhản hồiÝ nghĩa
codeinteger1Mã lỗi
msgstring“Program executes normally” 
dataobject  
└ mainClassIdinteger4157055ID buổi học chính
└ mainCourseIdinteger2337435ID lớp học chính
└ subClassDataarray[{Sub-class data}]Thông tin các buổi học phụ

Sub-class data

KeyĐịnh dạngPhản hồiÝ nghĩa
classIdinteger4157912ID buổi học
courseIdinteger2337436ID lớp học
classNamestring“2337436-subClassName”Tên buổi học
liveUrlstringhttps://www.eeo.cn/live.php?lessonKey=7a32f568ed7b725cURL link phát lại ghi hình
liveInfoobject{}Thông tin livestream
└ FLVstringhttps://liveplay.eeo.cn/eeolive/576f5a8ccf87-18329106c1ec9c2d2.flv?txSecret=57bd3671122a2e22a2fe306e8af2a0dd&txTime=7d8d37cdĐịa chỉ FLV livestream
└ HLSstringhttps://liveplay.eeo.cn/eeolive/576f5a8ccf87-18329106c1ec9c2d2.m3u8?txSecret=57bd3671122a2e22a2fe306e8af2a0dd&txTime=7d8d37cdĐịa chỉ HLS livestream 
└ RTMPstring“rtmp://liveplay.eeo.cn/eeolive/576f5a8ccf87-18329106c1ec9c2d2?txSecret=57bd3671122a2e22a2fe306e8af2a0dd&txTime=7d8d37cd”Địa chỉ RTMP livestream
uniqueIdentitystring“” 
codeinteger1Mã lỗi
msgstring“Program is running normally” 

Example

  • HTTP request
POST /lms/onlineDoubleTeacher/addClass HTTP/1.1
Host: root_url
X-EEO-SIGN: 43a81ec4d7b213d20912826d95ba381a
X-EEO-UID: 2669800 X-EEO-TS: 1732270810 Content-Type: application/json Content-Length: 539 { "mainCourseId": 2337435, "mainClassId": 4157055, "subClassJson": [ { "courseId": 2337436, "className": "2337436-subClassName", "seatNum": 7, "isHd": 2, "isDc": 0, "cameraHide": 0, "isAutoOnstage": 1, "liveState": 1, "openState": 1, "recordState": 1, "recordType": 0, "useCoMainRecord": 0 }, { "courseId": 2337437,
"className": "2337437-subClassName",
"assistantUids": [
1445886
],
"seatNum": 7,
"isHd": 1,
"isDc": 0,
"cameraHide": 0,
"isAutoOnstage": 1,
"liveState": 1,
"openState": 1,
"recordState": 1,
"recordType": 1,
"useCoMainRecord": 1
}
]
}
  • Shell cURL simulation request instruction
curl -X POST \
     -H 'Host: root_url' \
     -H 'X-EEO-SIGN: 43a81ec4d7b213d20912826d95ba381a' \
     -H 'X-EEO-UID: 2669800' \
     -H 'X-EEO-TS: 1732270810' \
     -H 'Content-Type: application/json' \
     -d '{"mainCourseId": 2337435, "mainClassId": 4157055, "subClassJson": [{"courseId": 2337436, "className": "2337436-subClassName", "seatNum": 7, "isHd": 2, "isDc": 0, "cameraHide": 0, "isAutoOnstage": 1, "liveState": 1, "openState": 1, "recordState": 1, "recordType": 0, "useCoMainRecord": 0}, {"courseId": 2337437, "className": "2337437-subClassName", "assistantUids": [1445886], "seatNum": 7, "isHd": 1, "isDc": 0, "cameraHide": 0, "isAutoOnstage": 1, "liveState": 1, "openState": 1, "recordState": 1, "recordType": 1, "useCoMainRecord": 1}]}' \
     'https://root_url/lms/onlineDoubleTeacher/addClass'

Response example (example of json data packet returned)

{
    "code": 1,
    "msg": "程序正常执行",
    "data": {
        "mainClassId": 4157055,
        "mainCourseId": 2337435,
        "subClassData": [
            {
                "classId": 4157912,
                "courseId": 2337436,
                "className": "2337436-subClassName",
                "liveUrl": "https://www.eeo.cn/live.php?lessonKey=7a32f568ed7b725c",
                "liveInfo": {
                    "FLV": "https://liveplay.eeo.cn/eeolive/576f5a8ccf87-18329106c1ec9c2d2.flv?txSecret=57bd3671122a2e22a2fe306e8af2a0dd&txTime=7d8d37cd",
                    "HLS": "https://liveplay.eeo.cn/eeolive/576f5a8ccf87-18329106c1ec9c2d2.m3u8?txSecret=57bd3671122a2e22a2fe306e8af2a0dd&txTime=7d8d37cd",
                    "RTMP": "rtmp://liveplay.eeo.cn/eeolive/576f5a8ccf87-18329106c1ec9c2d2?txSecret=57bd3671122a2e22a2fe306e8af2a0dd&txTime=7d8d37cd"
                },
                "uniqueIdentity": "",
                "code": 1,
                "msg": "程序正常执行"
            },
            {
                "classId": 4157913,
                "courseId": 2337437,
                "className": "2337437-subClassName",
                "liveUrl": "",
                "liveInfo": {},
                "uniqueIdentity": "",
                "code": 1,
                "msg": "程序正常执行"
            }
        ]
    }
}

Error code description

Mã lỗiMô tả
104Lỗi server
124Thời gian buổi học không cho phép chỉnh sửa 1 phút trước thời điểm bắt đầu buổi học
136Không có thông tin giáo viên này trong danh sách GV của trường
140Buổi học đang diễn ra không hỗ trợ sửa/xóa
142Không có thông tin về buổi học này trong lớp học
143Không có thông tin của buổi học này
144Không có thông tin của lớp học này trong trường
145Buổi học này đã kết thúc
147Không có thông tin của lớp học này
149Lớp học đã bị xóa
153Lớp học đã kết thúc
165Thời gian diễn ra của lớp học tối thiểu là 15 phút và tối đa là 24 giờ
172Học sinh của khóa học không thể được thêm làm giáo viên của lớp
173Người dự thính của khóa học không thể được thêm làm giáo viên của lớp
212Lớp học đã bị xóa
219Giáo viên không tồn tại
221Chỉnh sửa thông tin ghi hình buổi học thất bại
222Chỉnh sửa thông tin buổi học thất lại
226Không thể chỉnh sửa trạng thái phát lại ghi hình của buổi học không cho phép ghi hình
269Thông tin lớp học không chính xác
318Trợ giảng không thuộc danh sách giáo viên của trường
319Học sinh của khóa học không thể được thêm làm trợ giảng
320Người dự thính của khóa học không thể được thêm làm trợ giảng
322Giáo viên của khóa học không thể được thêm làm trợ giảng
324Không thể thêm giáo viên vào danh sách giáo viên trường
325Học sinh học thử không thể được thêm làm giáo viên của lớp
326Không thể thêm trợ giảng vào danh sách giáo viên trường
328Trợ giảng không thể được thêm làm giáo viên chính của lớp
350Tên buổi học, thời gian diễn ra buổi học, tài liệu buổi học, số lượng camera trên bục giảng,… không thể chỉnh sửa trong vòng 20 phút trước khi buổi học bắt đầu
368Thiết lập số camera trên bục giảng hiện tại không hỗ trợ chất lượng HD
385Buổi học đã kết thúc, không thể chỉnh sửa thông tin giáo viên hay trợ giảng
387Giáo viên đã bị vô hiệu hóa
388Trợ giảng đã bị vô hiệu hóa
450Số lượng vượt mức cho phép
451Thêm ảnh bìa và đoạn giới thiệu cho buổi học livestream thất bại
454Thời gian bắt đầu/thời gian kết thúc buổi học trùng với thời gian bảo trì hệ thống
767Thời gian kết thúc buổi học không được vượt quá thời gian kết thúc dịch vụ của trường
769Giáo viên đứng lớp phải là GVCN (yêu cầu đối với trường đang sử dụng phiên bản thử nghiệm)
800Giáo viên đã bị cấm
804Trợ giảng đã bị cấm
808Không hỗ trợ thiết lập dual camera cho lớp học này
863Thời lượng của buổi học không phù hợp với quy định
875Không thể chỉnh sửa tên buổi học, thời gian bắt đầu, tài nguyên học liệu, số camera trên bục,… trong vòng 5 phút trước khi buổi học bắt đầu
884GV đã bị vô hiệu hóa
885Trợ giảng đã bị vô hiệu hóa
21304Phiên bản hiện tại không hỗ trợ thiết lập cấp học
21305Cấp học không tồn tại
21317Số lượng trợ giảng của buổi học đã vượt mức quy địn
21319Tài khoản GV đã bị xóa
101002005Lỗi signature
101002006Timestamp hết hạn
101002008Lỗi timestamp
121601005Không hỗ trợ bật phát trực tiếp (livestream)
121601006Không hỗ trợ ghi hình camera GV
121601008Không hỗ trợ thêm trợ giảng
121601009Không hỗ trợ phát lại ghi hình buổi học
121601010Không hỗ trợ tự động ghi hình buổi học trực tuyến
121601011Không hỗ trợ chế độ Dual-camera
121601012Chất lượng camera không được hỗ trợ
121601020Lỗi tham số
121601022Lớp học này không phải lớp học tiêu chuẩn
121601030Thiếu tham số bắt buộc
121601031Lớp học này không thuộc quản lý của trường
121601032Không có quyền thao tác
121601033Tạo buổi học thất bại
121601034Thao tác này không được hỗ trợ đối với lớp học liên kết
121601035Tên buổi học không thể vượt quá 50 ký tự