Data Subscription Related Errors
Note!!!
To subscribe to data such as attendance, you need to provide an email to receive an error message. Before handling errors related to data subscription, please check whether your mailbox has received error messages.
- If an error is reported in the last hour, you need to adjust the code according to the information sent to your mailbox.
- If there is no error emails received in the last hour, it means that the data pushed has been received properly by your endpoint.
- When error message is sent to your mailbox, the data queue will be stuck in the data that is not well received. And this data will be pushed repeately every 10s. The subsequent data will not be pushed until you have solved the error and well receive the current stuck data.
Please provide the following info to the ClassIn tech team to activate the data subscription service
- URL: Your endpoint to receive the data
- Data to subscribe: Data you'd like to receive(Please refer to the API doc and provide the cmd.)
- SID: Your School ID.
- An email address: When data reception reports errors, you will receive an email with the stuck data and the error info. The error should be handled as soon as possible, otherwise, it will affect the receiving of the subsequent data. You may provide multiple mailboxes.
- The data pushed are in a queue. After receiving the data, you need to return the following JSON message. Then we consider that you have well received the data. If the following JSON message is not returned, the queue will get stuck and the failed data will be pushed repeatedly every 10s and an email will be sent to your mailbox every hour to report the error.
{
"error_info": {
"errno": 1,
"error": "程序正常执行" # The request is processed successfully
}
}
Is it allowed to set multiple URLs to receive the data?
- One SID can only be configured with one URL to receive the data. You can provide multiple email addresses to receive error messages. You can change the URL and email addresses afterward.
If nobody enters the classroom, will the Summary data(cmd=End) be pushed?
- If nobody enters the classroom, the End data will not be pushed. Only when data is generated can it be pushed.
The teacher and students enter the classroom before the lesson starts and if the lesson was deleted before the lesson starts, will the summary data(cmd=end) be pushed?
- It will be pushed because there is data generated.
- Teachers can enter the classroom 20 mins in advance and students can enter the classroom 10 mins in advance.
If the user did not enter the classroom, would the summary data(cmd=end) contain the data of the user not entering the classroom?
- No. Since the student did not enter the classroom, there would be no data about the student entering the classroom. Thus no such data can be pushed.
The lessons already finished, but the attandence data is not shown on my system. What's the reason?
- First, contact your IT and check whether the email address you provided has received any error reporting emails. If no error email has been received in the last hour, it means the data has been well pushed and received. Then you can then consider other possible factors causing the problem.
- Check the log of your system. Check whether you have received the data pushed from the ClassIn. If no data is received, please contact the ClassIn's tech support. If the data is received, then your IT team can further investigate the issue.
How to determine that the received message is pushed by the ClassIn?
- The following is the only two headers sent by ClassIn's server:
- "Origin": "http://www.eeo.cn"
- "Content-Type": "application/json"
- You can also use safeKey to verify. The data pushed from the ClassIn contains the parameters of safeKey and timeStamp. If the safeKey encrypted by timeStamp and secret is correct, it means that the data is sent by the ClassIn. For the actual push data, please refer to the Data Subscription
How to determine whether a student has logged in to the ClassIn app after registration?
- You can subscribe to the message of Test Report of Equipment Outside the Classroom
- The ClassIn app will automatically test the equipment after the user logs in to the app. Note: It takes 10s to complete the equipment test. If the stay-logged-in time is less than 10s and the equipment test is not completed, then the data will not be pushed.
What is ClassIn's logic for calculating the watching duration on the web-replay page?
- The time duration that the users stay on the page, that is, the time from opening the page to closing the page.
- The data will also be pushed when the viewer opens the web-live page before the web-live class starts and then closes the page.
Already set that the users must log in to view the web-live class and replay, but data received shows that there are viewers in the role of Tourists, that is viewers who have not logged in to the ClassIn.
- The log-in button on the web-live page only appears 20 mins before the lesson starts. When the audience views the page too early and then closes the the web-live page, the role of the audience would be Tourist in the data pushed.
Receive error code 10003 in the mailbox
- The data returned to ClassIn is incorrect. Need to return the following data(JSON) to the ClassIn after receiving the data.
{ "error_info": { "errno": 1, "error": "程序正常执行" # The request is processed successfully } }
Summary data: Which field can be used to determine the lesson start and end time?
- StartTime: Lesson start time
- CloseTime: This field includes the lesson delay time, that is the lesson end time you set + 20 mins.
How to determine whether the teacher clicks the button to end the class in advance?
You can refer to the field of RealCloseTime in the lesson's summary data(cmd=End)
- Determine whether there is RealCloseTime in the summary data. Offline and abnormal exit may lead to the situation that data pushed does not contain RealCloseTime.
- When there is no RealCloseTime, use CloseTime as the lesson's end time.
- There is RealCloseTime. When RealCloseTime=0, the time of CloseTime shall prevail; when RealCloseTime!=0, compare the values of RealCloseTime and CloseTime, and the smaller value shall prevail.
Rules of pushing the image of the blackboard writing
- A jpg image will be pushed whenever the teacher empty the blackboard during the class
- At the end of the class, two images will be pushed. One is jpg and the other is png.