Online interaction control method and system, computer equipment and storage medium

By transferring the running status data to external memory during online interactive activities and recovering the data after the application restarts, the problem of interruption of interactive activities caused by network disconnection or abnormal application exit is solved, and the continuity and stability of interactive activities are improved.

CN119806894APending Publication Date: 2025-04-11GUANGZHOU SHIYUAN ELECTRONICS CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311302757.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-10-10
Publication Date
2025-04-11

AI Technical Summary

Technical Problem

When conducting online interactive activities, disconnection of the network or abnormal application exit will cause direct interruption of the interactive activities, affecting the interaction effect.

Method used

When the running state data changes, the data in memory is transferred to external memory, and after the application restarts, the running state data is obtained from external memory, restore the application to the state before exit, and restore the interactive activity to the progress state before the application exit.

Benefits of technology

It realizes the automatic recovery of the progress state of interactive activities before the application exits after abnormal exits, improving the continuity and stability of interactive activities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119806894A_ABST
    Figure CN119806894A_ABST
Patent Text Reader

Abstract

The invention relates to an online interaction control method and system, computer equipment and a storage medium, and relates to the technical field of information interaction. The method comprises the following steps: under the condition that running state data is changed, transferring the running state data stored in a memory to an external memory; under the condition that an application which runs on a home terminal and is used for carrying out interactive activity exits abnormally, after the home terminal restarts the application, running state data are obtained from an external memory; and restoring the running state data into the memory, and restoring the application to the running state before the application exits, so as to restore the interactive activity to the progress state before the application exits. Under the condition that the application abnormally exits, the progress state of the interactive activity before the application abnormally exits can be automatically recovered after the application is restarted, so that the continuity and the stability of the interactive activity can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of information interaction technology, and in particular to an online interactive control method, system, computer device and storage medium. Background Art

[0002] With the development of intelligent technology, the types of electronic products that people come into contact with in daily life are becoming increasingly diverse, among which terminals or devices with interactive functions are becoming more and more widely used. Based on terminals or devices with interactive functions, a variety of interactive activities can be realized, such as online meetings, online teaching or commercial exhibitions. At present, in the process of the above-mentioned online interactive activities, network disconnection or other situations may sometimes occur, which will directly interrupt the interactive activities and affect the interactive effect. Summary of the invention

[0003] Based on this, it is necessary to provide an online interactive control method, device, system, computer equipment, storage medium and computer program product for improving the interactive effect in response to the above technical problems.

[0004] In a first aspect, the present application provides an online interactive control method, which is applied to a local terminal, wherein the local terminal and a client terminal perform interactive activities through a communication connection, and the progress status of the interactive activities is characterized by running status data; the method comprises:

[0005] When the running status data changes, the running status data in the memory is transferred to the external memory;

[0006] When an application running on the local end and used for interactive activities exits abnormally, after the application is restarted on the local end, the running status data is obtained from the external memory;

[0007] The running state data is restored to the memory, and the application is restored to the running state before the application is exited, so as to restore the interactive activity to the progress state before the application is exited.

[0008] In one embodiment, the running state data includes the member state of the client in the interactive activity; and the changing process of the running state data includes:

[0009] Get the communication connection status between this end and the client;

[0010] Based on the communication connection status and the activity dependencies between different clients in the interactive activities, the corresponding member status of the client is changed.

[0011] In one embodiment, based on the communication connection state and the activity dependency between different clients in the interactive activity, the member state of the client is changed, including:

[0012] When the target client disconnects from the communication connection and is participating in the interactive activity before the disconnection, the member status of the target client is changed to leave;

[0013] When the target client is the information sharing party in the interactive activity, the member status of the client corresponding to the information shared party in the interactive activity is changed to waiting.

[0014] In one embodiment, the method further comprises:

[0015] After the target client restores the communication connection, when the target client enters an interactive activity, the member status of the target client is changed to in progress; when the target client is the information sharing party in the interactive activity and the client as the information shared party enters the interactive activity, the member status of the client as the information shared party is changed to in progress;

[0016] When the target client is the information-shared party in the interactive activity, the target client has entered the interactive activity, and the client as the information-sharer has not yet entered the interactive activity, the member status corresponding to the target client is changed to waiting.

[0017] In one embodiment, based on the communication connection state and the activity dependency between different clients in the interactive activity, the member state of the client is changed, including:

[0018] When the communication connection is disconnected at the local end, the application is still running at the local end and the application is performing an interactive activity, the member status of the corresponding client participating in the interactive activity is changed to leave.

[0019] In one embodiment, the method further comprises:

[0020] After the local end restores the communication connection and has entered the interactive activity, if the client as the information sharing party has not entered the interactive activity and the client as the information shared party has entered the interactive activity, the corresponding member status of the client as the information shared party is changed to waiting;

[0021] After the client as the information sharing party enters the interactive activity, the member status corresponding to the client as the information sharing party and the member status corresponding to the client as the information shared party and having entered the interactive activity are changed to in progress.

[0022] In one of the embodiments, the running status data is entity data corresponding to the data model, and the data model includes a teaching activity model and an activity member model; the teaching activity model includes an activity type and an activity member list including activity members; the activity member model includes a member identifier, a member type and a member status; wherein the member type is used to characterize the activity dependency relationship between different activity members.

[0023] In a second aspect, the present application further provides an online interactive control device, the device comprising:

[0024] The transfer module is used to transfer the running status data in the memory to the external memory when the running status data changes;

[0025] An acquisition module is used to acquire running status data from an external memory after restarting the application on the local end when an application running on the local end for performing interactive activities exits abnormally;

[0026] The recovery module is used to restore the running status data to the memory, restore the application to the running state before exiting, and restore the interactive activity to the progress state before the application exits.

[0027] In a third aspect, the present application also provides an online interactive control system, comprising:

[0028] Local and client side;

[0029] The local end and the client end interact with each other through a communication connection, and the progress of the interaction is represented by the operation status data;

[0030] The local end is used to transfer the running status data in the memory to the external memory when the running status data changes; when the application running on the local end and used for interactive activities is exited, after the application is restarted on the local end, the running status data is obtained from the external memory; the running status data is restored to the memory, the application is restored to the running state before the exit, so as to restore the interactive activity to the progress state before the application is exited;

[0031] The client is used to enter the interactive activity after resuming the interactive activity on the local side.

[0032] In a fourth aspect, the present application further provides a computer device, the computer device comprising a memory and a processor, the memory storing a computer program, and the processor implementing the following steps when executing the computer program:

[0033] When the running status data changes, the running status data in the memory is transferred to the external memory;

[0034] When an application running on the local end and used for interactive activities exits abnormally, after the application is restarted on the local end, the running status data is obtained from the external memory;

[0035] The running state data is restored to the memory, and the application is restored to the running state before the application is exited, so as to restore the interactive activity to the progress state before the application is exited.

[0036] In a fifth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the following steps are implemented:

[0037] When the running status data changes, the running status data in the memory is transferred to the external memory;

[0038] When an application running on the local end and used for interactive activities exits abnormally, after the application is restarted on the local end, the running status data is obtained from the external memory;

[0039] The running state data is restored to the memory, and the application is restored to the running state before the application is exited, so as to restore the interactive activity to the progress state before the application is exited.

[0040] In a sixth aspect, the present application further provides a computer program product. The computer program product includes a computer program, and when the computer program is executed by a processor, the following steps are implemented:

[0041] When the running status data changes, the running status data in the memory is transferred to the external memory;

[0042] When an application running on the local end and used for interactive activities exits abnormally, after the application is restarted on the local end, the running status data is obtained from the external memory;

[0043] The running state data is restored to the memory, and the application is restored to the running state before the application is exited, so as to restore the interactive activity to the progress state before the application is exited.

[0044] The above-mentioned online interactive control method, device, system, computer equipment, storage medium and computer program product characterize the progress status of the interactive activity through the running status data, and when the running status data changes, the running status data in the memory is transferred to the external memory. When the application exits abnormally and after the application is restarted, the running status data is restored to the memory, so that the application is restored to the running state before the exit, and the interactive activity is restored to the progress state before the application exits. Since the progress state of the interactive activity before the abnormal exit can be automatically restored after the application is restarted in the case of abnormal exit of the application, the continuity and stability of the interactive activity can be improved. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] Figure 1 A schematic diagram of an implementation scenario of an online interactive control method in an embodiment;

[0046] Figure 2 A schematic diagram of a flow chart of an online interactive control method in one embodiment;

[0047] Figure 3 A schematic diagram of serialization and deserialization in one embodiment;

[0048] Figure 4 is a schematic diagram of a teaching activity model in an embodiment;

[0049] Figure 5 is a schematic diagram of an activity member model in one embodiment;

[0050] Figure 6 A schematic diagram of the classification of member states in one embodiment;

[0051] Figure 7 is a flow chart of an online interactive control method in another embodiment;

[0052] Figure 8 A schematic diagram of a process of changing a member status when a student terminal is disconnected in one embodiment;

[0053] Fig. 9 A schematic diagram of a process of changing a member's status when a teacher's terminal is disconnected in one embodiment;

[0054] Fig.10 A schematic diagram of a flow chart of member status changes when the teacher end is disconnected in another embodiment;

[0055] Fig.11 A schematic diagram of a process of resuming an online teaching activity in one embodiment;

[0056] Fig.12 A schematic diagram of a process of member status management in one embodiment;

[0057] Fig.13 is a structural block diagram of an online interactive control device in an embodiment;

[0058] Fig.14 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0059] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0060] It is understood that the terms "first", "second", etc. used in this application can be used in this article to describe various professional terms, but unless otherwise specified, these professional terms are not limited by these terms. These terms are only used to distinguish one professional term from another professional term. For example, without departing from the scope of this application, the third preset threshold and the fourth preset threshold can be the same or different.

[0061] At present, when multiple terminals are conducting online interactive activities, sometimes one terminal may be disconnected from the Internet or the application for interactive activities may exit. In this case, even if the terminal reconnects to the Internet or reopens the application for interactive activities, the progress status before the disconnection or application exit will not be restored. Usually, it is necessary to organize each terminal to re-initiate new interactive activities, which results in low continuity and stability of interactive activities and poor overall interactive effects.

[0062] In view of the above problems, the present application provides an online interactive control method. The method can be applied between the local terminal and the client, and can be applied to Figure 1 In the application environment shown. Among them, the client 102 and the local end 104 are both participating ends of the interactive activity, the local end 104 can be used as the main control end of the interactive activity, and the client 102 can be used as a controlled end when participating in the interactive activity, and the embodiment of the present application does not make specific limitations on this. The local end 104 and the client 102 can be connected to each other through a network for communication, and interactive activities can be performed based on the communication connection. Of course, different clients 102 can be connected to each other through a network for communication. The network can be a local area network or a wide area network, and the embodiment of the present application does not make specific limitations on this. Among them, the operating status data generated by the interactive activity can be stored separately in the data storage system, or can be stored in the local end 104, and the embodiment of the present application does not make specific limitations on this.

[0063] Therefore, when the running status data changes, the local end 104 transfers the running status data in the memory to the external memory. When the application running on the local end and used for interactive activities exits, the running status data is obtained from the external memory after the application is restarted on the local end. The running status data is restored to the memory, and the application is restored to the running state before exiting, so as to restore the interactive activity to the progress state before the application exits. After the client 102 resumes the interactive activity on the local end 104, it can also enter the interactive activity. Among them, the client 102 and the local end 104 can both be terminals or devices that can run applications for interactive activities, such as personal computers, tablet computers or mobile phones, etc., and the embodiments of the present application do not specifically limit this.

[0064] In some embodiments, see Figure 2 , provides an online interactive control method. This method is applied to Figure 1The local end 104 in the example is used for explanation.

[0065] Among them, the local terminal 104 and the client 102 can perform interactive activities through a communication connection, and the progress status of the interactive activities can be characterized by the operation status data. Interactive activities can refer to online activities achieved through network connections between different devices, such as online meetings, online teaching, or online business exhibitions, etc., which are not specifically limited in the embodiments of the present application.

[0066] The running status data that characterizes the progress status of the interactive activity may be related to the specific type of the interactive activity, and the embodiments of the present application do not specifically limit the content of the running status data. For example, if the interactive activity is online teaching, the running status data may include a list of students participating in the online teaching, and the student number, avatar, and member status of each student member in the student list may also be included in the running status data. For ease of understanding, in the process of explaining the method process provided in the embodiments of the present application, when it is necessary to visualize the interactive activity for example, the embodiments of the present application will be explained using online teaching as an example. Therefore, the method provided in the embodiments of the present application includes the following steps:

[0067] 202. When the running status data changes, the running status data in the memory is transferred to the external memory.

[0068] Specifically, this end can perform interactive activities with the client by running an application for interactive activities. When the application is running, the running status data may change. For example, if a student member quits the online teaching, the member list of the online teaching will change. When the application is running, it is usually run in the memory through an instantiated process or thread. Therefore, the change in the running status data is actually the change in the running status data in the memory, and the running status data in the memory can be transferred to the external memory. Among them, the external memory can be an external disk or a USB flash drive, etc., and the embodiments of the present application do not specifically limit this.

[0069] It is understandable that object-oriented programming is usually used as a development method when writing programs, and object-oriented programming is actually a method of understanding and abstracting the real world. Classes can be obtained by abstracting objects with the same characteristics (usually data elements) and behaviors (usually functions), and the concretization of classes is objects. Classes usually define some data elements, and these data elements will have different values ​​in different objects. Even for the same object, these data elements will have different values ​​when the application runs to different states. Therefore, interactive activities can be abstracted into multiple classes. These classes will create various objects when the application runs, and objects can include instantiation values ​​of interactive activity states, that is, running state data.

[0070] In the case where the application for interactive activities is developed using an object-oriented approach, the interactive activities are abstracted into multiple classes, and the classes are concretized into objects during application operation, in some embodiments, the embodiments of the present application do not specifically limit the manner in which the operating status data present in the memory is transferred to the external memory when the operating status data changes, including but not limited to: when the operating status data in the instantiated object corresponding to the interactive activity changes, the instantiated object is serialized, and the transmittable bytes obtained after the serialization are transferred to the external memory. Among them, serialization refers to the process of converting the state information of an object into a form that can be stored or transmitted. During serialization, the object can write its current state to a temporary or persistent storage area.

[0071] It should be noted that in actual implementation, when the running status data is transferred, for a certain instantiated object, when the running status data in the instantiated object changes, the running status data in the instantiated object can be stored in the external memory. When the running status data in the instantiated object changes again, the running status data in the instantiated object can overwrite the last storage result in the external memory, so that the latest running status data of the instantiated object is stored in the external memory. Of course, in actual implementation, it is also possible not to overwrite, but to store separately according to the change timestamp to facilitate subsequent recovery on demand, and the embodiments of the present application do not specifically limit this.

[0072] 204. When an application running on the local end and used for interactive activities exits abnormally, after the application is restarted on the local end, the running status data is obtained from the external memory.

[0073] Specifically, there may be many reasons for the abnormal exit of the application on the local end, such as exit due to erroneous operation, program crash, etc., which are not specifically limited in the embodiments of the present application. It is foreseeable that usually after the application exits, the interactive activities between the local end and other clients will also exit directly. Subsequently, the local end needs to restart the application and rebuild the interactive activities based on the functions attached to the application, which will consume a lot of time. In this step, after the local end restarts the application, the application can automatically obtain the running status data stored before the last abnormal exit from the external memory, which can be used for recovery later.

[0074] It should be noted that, corresponding to the previous serialization process, the embodiment of the present application does not specifically limit the method of obtaining the running status data from the external memory, including but not limited to: deserializing the byte sequence stored in the external memory to obtain an instantiated object containing the running status data. The above serialization and deserialization process can be referred to Figure 3 , Figure 3The bidirectional process of serialization and deserialization is represented in the figure. The running status data contained in the instantiated object will be stored in the external memory through the serialization process, and conversely, the running status data can be restored to the instantiated object through deserialization.

[0075] 206. Restore the running state data to the memory, restore the application to the running state before exiting, and restore the interactive activity to the progress state before exiting the application.

[0076] Specifically, the instantiated object containing the running state data can be obtained through the above steps, and the application can be restored to the running state before exiting by restoring the instantiated object to the memory. Correspondingly, the interactive activity can also be restored to the progress state before the application is launched.

[0077] The above-mentioned online interactive control method characterizes the progress state of the interactive activity through the running state data, and when the running state data changes, the running state data in the memory is transferred to the external memory. When the application exits abnormally and after the application is restarted, the running state data is restored to the memory, so that the application is restored to the running state before the exit, and the interactive activity is restored to the progress state before the application exits. Since the progress state of the interactive activity before the abnormal exit can be automatically restored after the application is restarted in the case of abnormal exit of the application, the continuity and stability of the interactive activity can be improved.

[0078] In some embodiments, the running status data includes the corresponding member status of the client in the interactive activity; the process of changing the running status data includes: obtaining the communication connection status between the local end and the client; based on the communication connection status and the activity dependency between different clients in the interactive activity, changing the corresponding member status of the client.

[0079] Specifically, the member status may refer to the corresponding status of the user in the application when the user activates the application for interactive activities through the client. For example, taking the interactive activity as online teaching, the student user may activate the application for online teaching through the client. When the student user enters the online teaching through the application, the member status may be in progress. Among them, "in progress" means that the student user is participating in the online teaching.

[0080] It is understandable that the communication connection status between this end and the client may affect the corresponding member status of the client. For example, when a student user enters online teaching through an application, the member status may be in progress. When the client disconnects the communication connection with this end, the corresponding member status of the client may be changed from "in progress" to "left". The communication connection status may indicate which end is disconnected or reconnected, such as whether it is this end or the client that disconnected the communication connection status. Among them, obtaining the communication connection status may be real-time, so as to detect whether the communication connection is disconnected and which end causes the disconnection at the first time, and the embodiments of the present application do not specifically limit this.

[0081] Activity dependency refers to the business logic sequence relationship between different ends when interactive activities are in progress. Among them, the "different ends" here can refer to the local end and the client, or it can refer to the client and the client. It is understandable that there can be an activity dependency between the local end and the client. For example, if this end is used as a server, and each client realizes the interactive activities between clients by connecting to this end, then this end is equivalent to the main control end of the interactive activities, and the process of the client participating in the interactive activities depends on the implementation of this end. For example, client A needs to send a file to client B, then client A can send the file to this end first, and then this end forwards the file to client B.

[0082] In addition, there may be activity dependencies between clients. For example, information sharing may exist between different clients, and the information sharing process will make the content displayed by some terminals dependent on the content shared by other terminals, thereby there is an activity dependency. Among them, information sharing can be a screen demonstration, which is not specifically limited in the embodiments of the present application. If the corresponding member status of the client as the information sharing party is still in "leave", the client as the information shared party cannot enter the interactive activity of information sharing. Therefore, the client as the information shared party needs to wait first, and can change the member status accordingly after the client as the information sharing party enters the interactive activity. It can be seen from this that there may be activity dependencies between different clients.

[0083] The member status may refer to the state of a user when participating in an interactive activity through an application running on a client. The type of member status may be predefined based on actual conditions, and a change may refer to switching a member status, which is not specifically limited in the embodiments of the present application. For example, the member status may be divided into "leaving", "in progress" and "waiting".

[0084] In the above embodiment, by obtaining the communication connection status between the local end and the client, and based on the communication connection status and the activity dependency between the clients, the member status corresponding to the client is changed in real time. Since the member status corresponding to the client can be obtained in real time, and the latest member status can be stored by storing the running status data, when the interactive activity is subsequently resumed, the interactive activity can be restored to the latest real-time progress status, so as to improve the continuity and stability of the interactive activity.

[0085] In some embodiments, based on the communication connection state and the activity dependency between different clients in the interactive activity, the member state of the client is changed, including:

[0086] When the target client disconnects the communication connection and is participating in an interactive activity before the disconnection, the member status corresponding to the target client is changed to leaving; when the target client is an information sharing party in the interactive activity, the member status corresponding to the client as the information shared party in the interactive activity is changed to waiting.

[0087] Specifically, as can be seen from the previous content, the communication connection status can indicate which end is disconnected or reconnected. Therefore, when the client disconnects the communication connection, the corresponding client can be used as the target client. It should be noted that the number of target clients can be at least one, and the embodiments of the present application are mainly described with reference to one of the target clients. Also, referring to the previous content, it can be seen that the member status can refer to the state in which the user participates in an interactive activity through an application running on the client. Therefore, the client can have corresponding member statuses for whether to participate in interactive activities and the progress of participating in interactive activities.

[0088] It is understandable that when the target client is participating in an interactive activity, if the target client disconnects the communication connection, the target client will exit the interactive activity. At this time, after detecting this situation, this end can change the corresponding member status of the target client to leave. As can be seen from the previous content, there may also be activity dependencies between different clients. Under this premise, simply changing the corresponding member status of the target client may not be enough to accurately represent the impact caused by the target client disconnecting the communication connection. Therefore, it is also possible to further determine whether there are other clients that depend on the target client.

[0089] In the embodiments of the present application, the interactive activity is mainly described by taking information sharing as an example. If the target client is sharing information with other clients before the target client disconnects the communication connection. It is understandable that the target client disconnecting the communication connection will have an impact on other clients participating in the information sharing. Therefore, in the case where the target client is the information sharing party in the interactive activity, the corresponding member status of the client as the information sharing party can be changed to waiting. Among them, "waiting" mainly means that if other clients need to continue the interactive activity of information sharing again, they need to wait for the target client to enter the interactive activity first.

[0090] In the above embodiment, when the target client disconnects the communication connection and is participating in an interactive activity before the disconnection, the corresponding member status of the target client is changed to leaving. In addition, it is possible to further determine whether the departure of the target client will affect other clients, that is, when the target client is an information sharing party, the corresponding member status of the client that is the information shared party in the interactive activity is changed to waiting. Since the corresponding member status of the client can be obtained in real time when the communication connection is disconnected, and it can be determined whether the client with the disconnected communication connection will affect other clients participating in the interactive activity, if an impact is caused, the corresponding member status of the affected client is also changed, thereby ensuring the accuracy of the member status. Subsequently, the latest member status is stored by storing the running status data, and when the interactive activity is resumed, the interactive activity can be restored to the real-time latest progress status to improve the continuity and stability of the interactive activity.

[0091] In some embodiments, the method further comprises:

[0092] After the target client restores the communication connection, when the target client enters an interactive activity, the member status of the target client is changed to in progress; when the target client is the information sharing party in the interactive activity and the client as the information shared party enters the interactive activity, the member status of the client as the information shared party is changed to in progress;

[0093] When the target client is the information-shared party in the interactive activity, the target client has entered the interactive activity, and the client as the information-sharer has not yet entered the interactive activity, the member status corresponding to the target client is changed to waiting.

[0094] It is understandable that restoring the communication connection may also cause the communication connection state to change. Thus, when the target client does not enter the interactive activity, the member state corresponding to the target client can also remain as leaving. When the target client enters the interactive activity, the member state corresponding to the target client can be changed to in progress.

[0095] As can be seen from the above content, if the target client is the information sharing party, its corresponding member status changes, which may affect other clients. Therefore, in the case where the target client is the information sharing party, if the client that is the information shared party also enters the interactive activity, the corresponding member status of these clients can be changed from the previous "leaving" to "in progress". It can be understood that if the client that is the information shared party has entered the interactive activity, after the client that is the information shared party also enters the interactive activity, the corresponding member status of these clients can be changed from the previous "waiting" to "in progress".

[0096] The above process is mainly explained with the target client as the information sharing party. In the case where the target client is the information being shared party, if the target client as the information being shared party has not entered the interactive activity, the corresponding member status can be left. If the client as the information sharing party has not entered the interactive activity, but the target client has entered the interactive activity, the corresponding member status of the target client can be changed from the previous "left" to "waiting". If the information sharing party enters the interactive activity, referring to the previous content, the corresponding member status of the target client can be changed from the previous "waiting" to "in progress".

[0097] In the above embodiment, after the target client restores the communication connection, when the target client enters the interactive activity, the corresponding member status of the target client is changed to in progress. In addition, when the target client is an information sharing party or an information shared party, the corresponding member status of the client is changed according to the mutual influence between the client and the client with the activity dependency relationship. Since the corresponding member status of the client can be obtained in real time when the communication connection is restored, and it can be determined whether the client with the restored communication connection will have an impact on other clients participating in the interactive activity, in the case of an impact, the corresponding member status of the affected client is also changed, thereby ensuring the accuracy of the member status. Subsequently, the latest member status is stored by storing the running status data, and when the interactive activity is restored, the interactive activity can be restored to the real-time latest progress status to improve the continuity and stability of the interactive activity.

[0098] In the above content, the client disconnects the communication connection. In actual implementation, the local end may also disconnect the communication connection. Therefore, in some embodiments, based on the communication connection state and the activity dependency between different clients in the interactive activity, the member state of the client is changed, including:

[0099] When the communication connection is disconnected at the local end, the application is still running at the local end and the application is performing an interactive activity, the member status of the corresponding client participating in the interactive activity is changed to leave.

[0100] It is understandable that, when this end is used as the main control end for interactive activities, if the communication connection is disconnected during the interactive activities on this end, the client participating in the interactive activities will be disconnected from the interactive activities, and the corresponding member status will also be changed to leaving. It should be noted that whether the above situation will cause the corresponding member status of the client to change to leaving in actual implementation may be related to the type and control method of the interactive activities. For example, if this end is not used as the main control end, that is, the client does not need to participate in interactive activities (such as online meetings) under the control of this end, then when this end disconnects the communication connection, the corresponding member status of the client participating in the interactive activities can continue to remain in progress.

[0101] In the above embodiment, when the communication connection is disconnected on the local end, the application is still running on the local end and the application is performing an interactive activity, the member status of the client participating in the interactive activity is changed to leaving. Since the member status of the client can be obtained in real time when the communication connection is disconnected, the latest member status is stored by storing the running status data later. When the interactive activity is resumed, the interactive activity can be restored to the latest real-time progress status to improve the continuity and stability of the interactive activity.

[0102] In some embodiments, the method further comprises:

[0103] After the local end restores the communication connection and has entered the interactive activity, if the client as the information sharing party has not entered the interactive activity and the client as the information shared party has entered the interactive activity, the corresponding member status of the client as the information shared party is changed to waiting;

[0104] After the client as the information sharing party enters the interactive activity, the member status corresponding to the client as the information sharing party and the member status corresponding to the client as the information shared party and having entered the interactive activity are changed to in progress.

[0105] It is understandable that, when the local end is the master end of the interactive activity, if the local end restores the communication connection with the client and also enters the interactive activity, the member status of the client can be changed as the clients enter the interactive activity one by one. Specifically, if the client as the information sharing party has not entered the interactive activity, and the client as the information shared party has entered the interactive activity, the member status of the client as the information shared party can be changed from "leaving" to "waiting".

[0106] If the client that is the information sharing party also enters into the interactive activity, the member status of the client that is the information being shared with can be changed from "leaving" to "in progress". Thus, the member status of the client that was previously the information being shared with and has entered into the interactive activity can be changed from "waiting" to "in progress".

[0107] In the above embodiment, after the communication connection is restored on the local side, when the target client is the information sharing party or the information shared party, the corresponding member status of the client is changed according to the mutual influence between the clients with activity dependencies. Since after the communication connection is restored, the corresponding member status of the affected clients can also be changed according to the mutual influence between the clients based on the activity dependency, the accuracy of the member status can be guaranteed. Subsequently, the latest member status is stored by storing the running status data, and when the interactive activity is restored, the interactive activity can be restored to the real-time latest progress status to improve the continuity and stability of the interactive activity.

[0108] In some embodiments, the running status data is entity data corresponding to the data model, and the data model includes a teaching activity model and an activity member model; the teaching activity model includes an activity type and an activity member list containing activity members; the activity member model includes a member identifier, a member type and a member status; wherein the member type is used to characterize the activity dependency relationship between different activity members.

[0109] Specifically, the data model can correspond to the class mentioned above, and the running state data can correspond to the object mentioned above. Specifically, the object can include the instantiation value of the interactive activity state, that is, the running state data. The class can pre-abstract different interactive activity state types and internal methods for executing interactive activities. The embodiment of the present application takes online teaching as an example of interactive activity. The teaching activity model can include activity types and activity member lists. For details, please refer to Figure 4 .

[0110] The activity member model may include member ID, member status and member type. The member ID may be a member number. Figure 5 The member ID is mainly used to distinguish different active members. For the member status, please refer to the explanation in the previous content.

[0111] Member types can be used to represent the roles played by activity members in interactive activities. For example, if the interactive activity is a demonstration activity between clients, the activity member who shares information through demonstration is the presenter, and the activity member who watches the demonstration is the presentee. Among them, the presenter and the presentee are member types. It is understandable that the member type can characterize the activity dependency relationship between different activity members. For example, the presentee needs the presenter to share the demonstration content in order to participate in the demonstration activity.

[0112] Furthermore, the member status can be characterized by the member status model. Combined with the previous content, the member status can be divided into "in progress", "waiting" and "offline". For details, please refer to Figure 6 . Among them, offline can correspond to the "leaving" mentioned in the previous content.

[0113] In the above embodiment, since different data models can be pre-defined to split and abstractly represent different contents in the interactive activities, the progress status of the interactive activities can be subsequently represented by running status data to facilitate real-time transfer from memory to external memory, and before the application exits, the interactive activities can be restored to the progress status before the application exits.

[0114] For ease of understanding, the interactive activity involved in the embodiment of the present application is online teaching as an example to illustrate the method flow provided in the embodiment of the present application. Figure 7 , the specific implementation can be shown in the following process steps:

[0115] 702. Define the data model required to resume online teaching activities.

[0116] Specifically, the data model includes a teaching activity model and an activity member model. The teaching activity model includes an activity type and an activity member list including activity members. The activity member model includes a member identifier, a member type, and a member status. The data model may include the teaching activity model and the activity member model mentioned in the previous content. The teaching activity model may include an activity type and an activity member list. The activity type may be used to distinguish what type of online teaching belongs to, such as a teaching broadcast or a student demonstration. The activity member list is all members in the current interactive activity. The member model of each activity member may include a member number, a member type, and a member status. Among them, the activity member list, the member number, the member type, and the member status can all be used as running status data.

[0117] The member type can distinguish the role of the member in the online teaching. The recovery process of different roles will be different, and there is a recovery order, which corresponds to the activity dependency mentioned in the previous content. For example, in a student demonstration, the role of the member who needs to demonstrate is the presenter, and the role of the member who watches the demonstration is the demonstrated. The recovery process needs to restore the presenter first, and then restore the demonstrated. Similarly, if the member status of the presenter changes to "left", the member status of all demonstrated persons needs to be updated to "waiting". In black screen control, the member roles are all students who need to be controlled, so they can be restored directly.

[0118] Member status distinguishes the current status of the member. Member status can include in progress, leaving, and waiting. In progress means that the member is in the process of an activity, leaving means that the member has left the activity, such as the member is offline. Waiting means that the member is online and can carry out activities, but because the conditions for carrying out the activity have not been met, it is in a waiting state. The waiting state is generally determined by the member role. For example, in the student presentation mentioned above, when the presenter has not resumed, the presentee needs to wait until the presenter resumes the activity.

[0119] 704. Based on the communication connection status between the teacher terminal and the student terminal, and the activity dependency relationship between different student terminals in the interactive activity, the corresponding member status of the student terminal is changed.

[0120] The communication connection status is mainly divided into disconnection and recovery. There are three types of disconnection situations, which are described below:

[0121] (1) The student disconnects the communication connection

[0122] The member status change process in this case can be referred to Figure 8 , the teacher end is the server end, which corresponds to the local end of the previous content, and the student end is the client end of the previous content. Usually, only some members in the active member list disconnect from the communication connection, while other active members are still active. The teacher end can detect the disconnection of the student end. It only needs to determine whether the student end is the current active member after the student end disconnects. If so, the member status is updated to "left". If the student end is the presenter, the corresponding member status of the presented party can be updated to "waiting" status.

[0123] (2) The teacher disconnects the communication connection, but the application is still running

[0124] In this case, the teacher may be disconnected due to abnormal reasons, such as unplugging the network cable, turning off the wifi, etc. If the teacher is disconnected, it means that all students will be disconnected. In this case, you only need to determine whether there is an activity going on. If there is, update the member status of all active members to "leave". For details, please refer to Fig. 9 .

[0125] (3) Exit the application from the teacher end

[0126] This situation usually occurs when the application crashes due to an abnormal reason or the teacher accidentally exits the application. Since the application has been closed, the status update process cannot be performed, so the application needs to be reopened before the status update process can be performed. After the application is reopened, the running status data that needs to be restored can be obtained from the external memory (this can be achieved through the state management process), the running status data can be deserialized into an activity object, and the status of all activity members can be updated to "leave". The overall process is shown in Fig.10 .

[0127] When resuming online teaching activities in the above three situations, they can be restored based on the principle of previous content. Since students are usually online one after another, it is necessary to consider the impact of member types (corresponding to activity dependencies) on activity recovery. For example, if the interactive activity is "black screen control", the member status of the activity members can be directly changed to "in progress" after entering the activity. If the interactive activity is "student demonstration" and the demonstrator has not entered the interactive activity, the demonstrated party needs to be changed to "waiting" first. After the demonstrator enters the interactive activity, the member status of the demonstrated party can be changed to "in progress". The overall process can be referred to. Fig.11 .

[0128] 706. When the running status data changes, the running status data in the memory is transferred to the external memory through serialization.

[0129] Specifically, as can be seen from the previous content, an object can include instantiation values ​​of interactive activity states, that is, running state data. Therefore, objects are stored in memory. In order to be able to persist to disk, a serialization / deserialization mechanism can be defined to support object serialization into transferable bytes and deserialization of transferable bytes into objects. For details, please refer to Figure 3 .

[0130] It is understandable that various instructions will be processed in online teaching related objects, such as starting activities, joining members, exiting members, members leaving, etc., which will cause changes in the running status data. Therefore, as long as the running status data is updated, it will be synchronized to the state management process, and the state management process will maintain the latest status snapshot of the current activity. Among them, the state management process runs in memory, and the state is directly saved in memory. The memory will be released after the application is closed, and the running status data will be cleared accordingly, so it is also necessary to persist the state to disk space, so that the running status data can be persisted and saved even if the application is closed. The process of saving the results of running status data changes triggered by different instructions through the state management process can be referred to. Fig.12 . Fig.12 In the “Teacher” dialog box, “Teacher” corresponds to this terminal.

[0131] 708. When an application running on the teacher's end and used for online teaching activities exits abnormally, the running status data is restored to the memory, and the application is restored to the running state before exiting, so as to restore the online teaching activities to the progress state before the application exited.

[0132] The above-mentioned online interactive control method characterizes the progress state of the interactive activity through the running state data, and when the running state data changes, the running state data in the memory is transferred to the external memory. When the application exits abnormally and after the application is restarted, the running state data is restored to the memory, so that the application is restored to the running state before the exit, and the interactive activity is restored to the progress state before the application exits. Since the progress state of the interactive activity before the abnormal exit can be automatically restored after the application is restarted in the case of abnormal exit of the application, the continuity and stability of the interactive activity can be improved.

[0133] It should be understood that, although the steps in the flowcharts involved in the above embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps is not strictly limited in order, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above embodiments may include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0134] Based on the same inventive concept, the embodiment of the present application also provides an online interactive control system, including a local terminal and a client terminal;

[0135] The local end and the client end interact with each other through a communication connection, and the progress of the interaction is represented by the operation status data;

[0136] The local end is used to transfer the running status data in the memory to the external memory when the running status data changes; when the application running on the local end and used for interactive activities is exited, after the application is restarted on the local end, the running status data is obtained from the external memory; the running status data is restored to the memory, the application is restored to the running state before the exit, so as to restore the interactive activity to the progress state before the application is exited;

[0137] The client is used to enter the interactive activity after resuming the interactive activity on the local side.

[0138] Based on the same inventive concept, the embodiment of the present application also provides an online interactive control device for implementing the online interactive control method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more online interactive control device embodiments provided below can refer to the above limitations on the online interactive control method, and will not be repeated here.

[0139] In one embodiment, Fig.13 As shown, an online interactive control device is provided, which is applied to interactive activities, and the progress state of the interactive activities is characterized by running state data; the device includes: a transfer module 1302, an acquisition module 1304 and a recovery module 1306, wherein:

[0140] The transfer module 1302 is used to transfer the running status data in the memory to the external memory when the running status data changes;

[0141] An acquisition module 1304 is used to acquire running status data from an external memory after restarting the application on the local end when an application running on the local end and used for performing interactive activities exits abnormally;

[0142] The recovery module 1306 is used to restore the running state data to the memory, restore the application to the running state before exiting, and restore the interactive activity to the progress state before exiting the application.

[0143] In some embodiments, the running status data includes the corresponding member status of the client in the interactive activity; the transfer module 1302 is also used to obtain the communication connection status between the local end and the client; based on the communication connection status and the activity dependency between different clients in the interactive activity, the corresponding member status of the client is changed.

[0144] In some embodiments, the transfer module 1302 is also used to change the member status of the target client to leaving when the target client disconnects the communication connection and is participating in an interactive activity before the disconnection; and to change the member status of the client as the information sharing party in the interactive activity to waiting when the target client is acting as the information sharing party in the interactive activity.

[0145] In some embodiments, the transfer module 1302 is further used to change the member status of the target client to in progress after the target client restores the communication connection and enters an interactive activity, and to change the member status of the client as the information sharing party to in progress after the target client is an information sharing party in the interactive activity and the client as the information sharing party enters the interactive activity;

[0146] When the target client is the information-shared party in the interactive activity, the target client has entered the interactive activity, and the client as the information-sharer has not yet entered the interactive activity, the member status corresponding to the target client is changed to waiting.

[0147] In some embodiments, the transfer module 1302 is also used to change the member status of the client participating in the interactive activity to leave when the communication connection is disconnected on the local end, the application is still running on the local end and the application is performing interactive activities.

[0148] In some embodiments, the transfer module 1302 is further configured to, after the communication connection is restored at the local end and the interactive activity has been entered, change the member status of the client as the information sharing party to waiting if the client as the information sharing party has not entered the interactive activity and the client as the information sharing party has entered the interactive activity;

[0149] After the client as the information sharing party enters the interactive activity, the member status corresponding to the client as the information sharing party and the member status corresponding to the client as the information shared party and having entered the interactive activity are changed to in progress.

[0150] In some embodiments, the running status data is entity data corresponding to the data model, and the data model includes a teaching activity model and an activity member model; the teaching activity model includes an activity type and an activity member list containing activity members; the activity member model includes a member identifier, a member type and a member status; wherein the member type is used to characterize the activity dependency relationship between different activity members.

[0151] The above-mentioned online interactive control device characterizes the progress state of the interactive activity through the running state data, and transfers the running state data in the memory to the external memory when the running state data changes. When the application exits abnormally and after the application is restarted, the running state data is restored to the memory, so that the application is restored to the running state before the exit, and the interactive activity is restored to the progress state before the application exits. Since the progress state of the interactive activity before the abnormal exit can be automatically restored after the application is restarted in the case of abnormal exit of the application, the continuity and stability of the interactive activity can be improved.

[0152] For the specific definition of the online interactive control device, please refer to the definition of the online interactive control method above, which will not be repeated here. Each module in the above-mentioned online interactive control device can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

[0153] In one embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as follows: Fig.14 As shown. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit and an input device. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface, the display unit and the input device are connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the computer device is used to exchange information between the processor and the external device. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be realized through WIFI, a mobile cellular network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, an online interactive control method is realized. The display unit of the computer device is used to form a visually visible picture, which can be a display screen, a projection device or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a button, trackball or touchpad set on the computer device shell, or an external keyboard, touchpad or mouse.

[0154] Those skilled in the art will understand that Fig.14The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0155] In one embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the following steps are implemented:

[0156] When the running status data changes, the running status data in the memory is transferred to the external memory;

[0157] When an application running on the local end and used for interactive activities exits abnormally, after the application is restarted on the local end, the running status data is obtained from the external memory;

[0158] The running state data is restored to the memory, and the application is restored to the running state before the application is exited, so as to restore the interactive activity to the progress state before the application is exited.

[0159] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:

[0160] When the running status data changes, the running status data in the memory is transferred to the external memory;

[0161] When an application running on the local end and used for interactive activities exits abnormally, after the application is restarted on the local end, the running status data is obtained from the external memory;

[0162] The running state data is restored to the memory, and the application is restored to the running state before the application is exited, so as to restore the interactive activity to the progress state before the application is exited.

[0163] In one embodiment, a computer program product is provided, including a computer program, which implements the steps in the above method embodiments when executed by a processor.

[0164] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but are not limited to this.

[0165] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0166] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. An online interactive control method, characterized in that: Applied to the local end, the local end and the client perform interactive activities through a communication connection, and the progress status of the interactive activities is characterized by running status data; the method includes: When the running status data is changed, the running status data in the memory is transferred to the external memory; When an application running on the local end and used for performing the interactive activity exits abnormally, after the local end restarts the application, acquiring the running status data from the external memory; The running state data is restored to the memory, and the application is restored to the running state before exiting, so as to restore the interactive activity to the progress state before the application exits.

2. The method according to claim 1, characterized in that The operation status data includes the member status of the client corresponding to the interactive activity; The process of changing the running status data includes: Get the communication connection status between this end and the client; Based on the communication connection state and the activity dependency between different clients in the interactive activity, the member state corresponding to the client is changed.

3. The method according to claim 2, characterized in that The changing of the member status of the client corresponding to the communication connection status and the activity dependency relationship between different clients in the interactive activity includes: When the target client disconnects the communication connection and is participating in the interactive activity before the disconnection, changing the member status corresponding to the target client to leaving; In the case where the target client serves as the information sharing party in the interactive activity, the member status corresponding to the client serving as the information shared party in the interactive activity is changed to waiting.

4. The method according to claim 3, characterized in that The method further comprises: After the target client restores the communication connection, in the case where the target client enters the interactive activity, the member status corresponding to the target client is changed to in progress; after the target client is the information sharing party in the interactive activity and the client as the information shared party enters the interactive activity, the member status corresponding to the client as the information shared party is changed to in progress; When the target client is the information-shared party in the interactive activity, the target client has entered the interactive activity, and the client as the information-sharer has not yet entered the interactive activity, the member status corresponding to the target client is changed to waiting.

5. The method according to claim 2, characterized in that: The changing of the member status of the client corresponding to the communication connection status and the activity dependency relationship between different clients in the interactive activity includes: When the local end disconnects the communication connection, the application is still running on the local end, and the application is performing the interactive activity, the member status corresponding to the client participating in the interactive activity is changed to leaving.

6. The method according to claim 5, characterized in that The method further comprises: After the local end restores the communication connection and has entered the interactive activity, if the client as the information sharing party has not entered the interactive activity and the client as the information shared party has entered the interactive activity, changing the corresponding member status of the client as the information shared party to waiting; After the client as the information sharing party enters the interactive activity, the member status corresponding to the client as the information sharing party and the member status corresponding to the client as the information shared party and having entered the interactive activity are changed to in progress.

7. The method according to any one of claims 2 to 6, characterized in that The running status data is entity data corresponding to the data model, and the data model includes a teaching activity model and an activity member model; the teaching activity model includes an activity type and an activity member list including activity members; the activity member model includes a member identifier, a member type and a member status; wherein the member type is used to characterize the activity dependency relationship between different activity members.

8. An online interactive control system, characterized in that: include: Local and client side; The local end and the client perform interactive activities via a communication connection, and the progress status of the interactive activities is represented by operation status data; The local end is used to transfer the running status data in the memory to the external memory when the running status data changes; When the application running on the local end and used for performing the interactive activity is exited, after the local end restarts the application, acquiring the running status data from the external memory; Restoring the running state data to the memory, restoring the application to the running state before exiting, so as to restore the interactive activity to the progress state before exiting the application; The client is used to enter the interactive activity after the local end resumes the interactive activity.

9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

11. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.