WO2023155725A1 - 一种对象的操作方法、装置、电子设备及存储介质 - Google Patents

一种对象的操作方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
WO2023155725A1
WO2023155725A1 PCT/CN2023/075109 CN2023075109W WO2023155725A1 WO 2023155725 A1 WO2023155725 A1 WO 2023155725A1 CN 2023075109 W CN2023075109 W CN 2023075109W WO 2023155725 A1 WO2023155725 A1 WO 2023155725A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
request
message
server
notification message
Prior art date
Application number
PCT/CN2023/075109
Other languages
English (en)
French (fr)
Inventor
陈杰生
陈海云
Original Assignee
北京字跳网络技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京字跳网络技术有限公司 filed Critical 北京字跳网络技术有限公司
Publication of WO2023155725A1 publication Critical patent/WO2023155725A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/06Message adaptation to terminal or network requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/07User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
    • H04L51/18Commands or executable codes

Definitions

  • Embodiments of the present disclosure relate to the field of computer technology, for example, to an object operation method, device, electronic equipment, and storage medium.
  • Embodiments of the present disclosure provide an object operation method, device, electronic device, and storage medium, which can ensure the orderliness of operation behaviors on multiple terminals, make the states of objects presented by multiple terminals consistent, and improve interactive experience.
  • the embodiment of the present disclosure provides an object operation method applied to the first client, including:
  • reporting an effective message to the server when the first operation takes effect so as to trigger the server to generate a notification message, and send the notification message to the first client and at least one A second client performing real-time communication with the first client, enabling the first client to maintain the first operation in effect, and enabling at least one second client to perform the first operation on the first object.
  • the embodiment of the present disclosure also provides an object operation device, integrated in the first client, including:
  • An operation module configured to perform a first operation on the first object of the first client in response to a preset event
  • the effective message reporting module is configured to report an effective message to the server when the first operation takes effect, so as to trigger the server to generate a notification message, and send the notification message to the first client and at least a second client in real-time communication with said first client to enable said first operation of said first client to remain in effect, and to enable at least one of said second clients to The first operation is performed.
  • an embodiment of the present disclosure further provides an electronic device, and the electronic device includes:
  • processors one or more processors
  • storage means configured to store one or more programs
  • the one or more processors are made to implement the object operation method described in any one of the embodiments of the present disclosure.
  • the embodiments of the present disclosure further provide a storage medium containing computer-executable instructions, the computer-executable instructions are used to execute the object described in any one of the embodiments of the present disclosure when executed by a computer processor. How to do it.
  • FIG. 1 is a schematic flowchart of an object operation method provided by an embodiment of the present disclosure
  • FIG. 2 is a schematic diagram of an interface of a client in an object operation method provided by an embodiment of the present disclosure
  • FIG. 3 is a schematic signaling diagram of an object operation method provided by an embodiment of the present disclosure.
  • FIG. 4 is a schematic diagram of the signaling of the active switching of props at the local end in an object operation method provided by an embodiment of the present disclosure
  • FIG. 5 is a schematic diagram of signaling in which the peer end requests the local end to switch props in an object operation method provided by an embodiment of the present disclosure
  • FIG. 6 is a schematic diagram of signaling for continuously reporting validation messages in an object operation method provided by an embodiment of the present disclosure
  • FIG. 7 is a schematic diagram of signaling for sending a second request in an object operation method provided by an embodiment of the present disclosure
  • FIG. 8 is a schematic diagram of signaling for continuously sending a second request in an object operation method provided by an embodiment of the present disclosure
  • FIG. 9 is a schematic diagram of signaling for continuously receiving notification messages in an object operation method provided by an embodiment of the present disclosure.
  • FIG. 10 is a schematic structural diagram of an object operating device provided by an embodiment of the present disclosure.
  • FIG. 11 is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure.
  • the term “comprise” and its variations are open-ended, ie “including but not limited to”.
  • the term “based on” is “based at least in part on”.
  • the term “one embodiment” means “at least one embodiment”; the term “another embodiment” means “at least one further embodiment”; the term “some embodiments” means “at least some embodiments.” Relevant definitions of other terms will be given in the description below.
  • FIG. 1 is a schematic flowchart of an object operation method provided by an embodiment of the present disclosure.
  • the embodiments of the present disclosure are applicable to a situation where multiple clients perform mutually exclusive operations on the same object, for example, a situation where multiple clients add special effects to multimedia data of a certain client during a multimedia communication process.
  • the method can be executed by an operating device of the object, which can be implemented in the form of software and/or hardware.
  • the device can be integrated into the client, and can be installed in electronic equipment along with the client, such as configured in mobile phones, computers, etc. in electronic equipment.
  • the object operation method provided by this embodiment is applied to the first client, and may include:
  • a communication connection can be established between clients, and the object of a certain client can include communication data originating from the client, and the communication data can include but not limited to text, expression, audio, image, and video.
  • the client that establishes communication can present the communication data of the local terminal, and can also present the communication data of other terminals that have established communication with the local terminal, so as to ensure the smooth communication of multiple terminals.
  • the local end can be called the first client; the client that communicates with the local end in real time is called the second client; the object at the local end is called the first object ; The operation on the object at the local end is called the first operation.
  • the first client may perform a first operation on the first object at the local end in response to a preset event.
  • the preset event may be an event that actively triggers an operation (such as inputting an instruction at the local end), or an event that passively triggers an operation (such as receiving an instruction from a second client). It can be considered that the first client may actively perform the first operation on the first object, or may passively perform the first operation on the first object.
  • the various first operations can be mutually exclusive, that is, the first object can take effect at most one time at the same time. Multiple first operations cannot take effect at the same time, so that multiple clients can perform mutually exclusive operations on the same object.
  • the first client and the second client may be multimedia communication clients, for example, may include an instant messaging client, a video conference client, and the like.
  • the first object may include multimedia data, such as audio, video, and the like.
  • the first operation includes adding special effects, such as changing the voice, using props on the face in the video image, and the like.
  • FIG. 2 is a schematic diagram of an interface of a client in an object operation method provided by an embodiment of the present disclosure.
  • the interface of the client is an interface for two-user video calls; the frame control 201 in the upper left corner of the interface can present the video of the local user (i.e. the first object), and the bottom full screen can present the video of the opposite user.
  • a “props” control 202 may be deployed in the interface, and a window 203 of “select props” may pop up in response to clicking the control 202 .
  • the window 203 it is possible to select from props 1 to props N to use props on the face of the local user (that is, "self” in the figure) in the video, that is, to perform the first operation.
  • the peer end can also choose to use props on the face of the local user in the video through its "select props" window, so as to request the local end to perform the first operation. Since both the local end and the opposite end can control the local end to perform the first operation, in the case that the first operation is mutually exclusive, it is possible to create a game experience in which both parties fight props and improve the flexibility of the gameplay.
  • the first operation that has taken effect on the local end is the operation of adding cat ear special effects to the face of the user’s video on the local end.
  • the multimedia communication client can perform an operation of adding special effects to multimedia data, so as to implement operations on the same multimedia resource in a multi-person interaction scenario and improve user experience.
  • other business scenarios where multiple clients operate on the same object can also be applied here to support business scalability.
  • the execution of the first operation takes effect may refer to that the execution of the first operation is completed on the first client, and the effect of the completion of the execution has been presented.
  • the first client and at least one second client may communicate through the server.
  • a validation message can be generated, and the generated message can be reported to the server;
  • the validation message can include, but not limited to, the identification of the first client and the identification of the communication range to which the first client belongs (such as the identification of the chat group, the identification of the meeting room of the video conference, etc.), the identification of the first object in the first client, the identification of the first operation and other data.
  • the server may generate a notification message upon receipt of the validation message.
  • the identifier of the first client in the generated message can be used as the identifier of the client to be operated in the notification message; the identifier of the communication range to which the first client belongs in the generated message can be used as the communication range to be notified in the notification message.
  • the identifier of the first object in the first client and the identifier of the first operation in the message will be generated as the identifier of the first object in the client to be operated and the identifier of the first operation in the notification message.
  • the server After the server generates the notification message, it can send the notification message to all clients within the corresponding communication range according to the identification of the communication range to be notified in the notification message, that is, to the first client and to communicate with the first client. At least one second client for real-time communication.
  • the second client can perceive that the first client has performed the first operation on the first object. Since the second client also presents the first object of the first client, the second client may perform the first operation on the presented first object according to the notification message. In this way, the same operation behavior can be implemented on multiple terminals within the communication range, which ensures the orderliness of the global operation behavior, makes the state of objects presented by multiple terminals consistent, and improves the interactive experience.
  • the notification message By sending the notification message to the first client, the first client can receive feedback that the first operation is also effective on the second client, thereby improving user experience.
  • FIG. 3 is a schematic signaling diagram of an object operation method provided by an embodiment of the present disclosure.
  • a first client (client 2 in the figure) can communicate with at least one second client (client 1 in the figure) through a server.
  • the client 2 may respond to a preset event by using the prop A on the face of the local user in the video (that is, performing the first operation on the first object).
  • it can be judged whether the props have been downloaded. If the props have been downloaded, they can be used directly. If the props have not been downloaded, they can be downloaded first and then used.
  • the client 2 can report the validation message to the server when the prop A takes effect.
  • the server can generate a notification message according to the validation message.
  • the server can also send the notification message to the client 1 and the client 2.
  • the client 1 can also use the prop A on the face of the user of the client 2 presented in the video, which ensures the orderliness of the global operation behavior and enables the multi-terminal client 2 users have the same facial state in the video, which improves the interactive experience.
  • the notification message to the client 2 feedback to the client 2 that the first operation also takes effect on the client 1 can be achieved, which can improve the user experience of the client 2.
  • the notification message corresponding to the validation message issued by the server is not received within the first time interval from the moment when the validation message is reported, an operation failure message will be prompted and the first valid operation will be cancelled. .
  • the notification message may not be delivered smoothly.
  • the first client can count the time from the moment when the validation message is sent. If the notification message is not received within the first time interval, it can be considered that the server notification has failed. take effect.
  • the first time interval may be preset according to empirical values or experimental values.
  • an operation failure message including "XX operation failed" may be prompted to indicate that the first operation has not taken effect on other terminals.
  • the first client can also cancel the first operation that has taken effect, so as to ensure multi-terminal consistency.
  • the first client can execute the first operation on the first object of the local end in response to the preset event; when the execution of the first operation takes effect, it will report the effective message to the server, so as to trigger the server to generate a notification message , and send the notification message to the first client and at least one second client that communicates with the first client in real time, so that the first operation of the first client remains in effect, and the second client performs the first operation on the first client.
  • An object performs a first operation.
  • Any client that communicates can be the first client.
  • the first client executes the first operation on the first object of the local end to take effect, it can report an effective message to the server, so that the server can report to the first client and the first operation.
  • the second client that communicates with the first client in real time sends a notification message. Therefore, the second client can also perform the first operation on the first object, which ensures the orderliness of operation behaviors on multiple terminals within the communication range, makes the states of objects presented by multiple terminals consistent, and improves the interactive experience.
  • the first client can also receive feedback that the first operation also takes effect on the second client, thereby improving user experience.
  • the embodiments of the present disclosure may be combined with multiple embodiments of the object operation methods provided in the above embodiments.
  • the pair provided by this example The operation method of the object, which describes the preset events in detail, can actively perform the first operation on the local end, and can also perform the first operation in response to the request of the second client, so that the object operation is more flexible and the interactive gameplay is more diverse. Can improve user experience.
  • the preset event includes at least one of the following: receiving an operation instruction input to the first client; for any first request sent by the second client, feeding back an approval message; A request for an object to perform a first operation.
  • FIG. 4 is a schematic diagram of signaling for actively switching props at the local end in an object operation method provided by an embodiment of the present disclosure.
  • a first client can communicate with at least one second client (client 1 in the figure) through a server.
  • the client 2 may receive an operation instruction input by the local end, where the operation instruction may represent an instruction to perform a first operation on the first object on the local end, for example, an instruction to use prop B on the face of the local user in the video.
  • the client 2 can use the prop B on the face of the local user in the video according to the operation instruction (that is, perform the first operation on the first object).
  • the client 2 can report the validation message to the server when the prop B takes effect.
  • the server can generate a notification message according to the validation message.
  • the server can also send a notification message to the client 1 and the client 2, so as to ensure that the facial state of the user of the client 2 in the video presented by multiple terminals is consistent. Therefore, through the operation instruction input by the local end, the first client can actively perform the first operation on the first object of the local end.
  • FIG. 5 is a schematic diagram of signaling in which the peer end requests the local end to switch props in an object operation method provided by an embodiment of the present disclosure.
  • the first client can communicate with at least one second client (client 1 in the figure) through the server.
  • Any client 1 can generate a first request, and can send the first request to the client 2 through the server; wherein the first request represents a request to perform a first operation on the first object, for example, to the user of the client 2 in Prop C is used for the face in the video.
  • the client 2 can generate a consent message according to the consent instruction input by the user, and feed back the consent message to the client 1 that sent the first request through the server.
  • the client 2 may use the prop C on the face of the local user in the video (ie perform the first operation on the first object) in response to the feedback consent message.
  • the client 2 can report the validation message to the server when the item C becomes valid.
  • the server can generate a notification message according to the validation message.
  • the server can also send a notification message to the client 1 and the client 2, so as to ensure that the facial state of the user of the client 2 in the video presented by multiple terminals is consistent. Therefore, by feeding back the consent message in response to the request of the second client, the first client can passively perform the first operation on the first object at the local end.
  • the client 2 may also generate a rejection message according to the rejection instruction input by the user, and feed the rejection message back to the client 1 that sent the first request through the server.
  • Client 1 may display the received rejection message to prompt the user that the request is rejected.
  • the client 2 does not need to perform the first operation on the first object, so that the requirement of the client 2 to reject the first request can be met, and the user experience of the client 2 can be further improved.
  • the technical solution of the embodiment of the present disclosure describes the preset events in detail, and can actively execute the first operation on the local end, and can also execute the first operation in response to the request of the second client, so that the object operation is more flexible and interactive gameplay More variety to improve user experience.
  • the operation method of the object provided by the embodiment of the present disclosure and the operation method of the object provided by the above-mentioned embodiment belong to the same disclosed concept, and the technical details not described in detail in this embodiment can be referred to the above-mentioned embodiment, and the same technical features are described in this embodiment Example has the same beneficial effect as in the above-mentioned embodiment.
  • the embodiments of the present disclosure may be combined with multiple embodiments of the object operation methods provided in the above embodiments.
  • the method for operating an object provided in this embodiment refines the situation that the local terminal frequently operates the first object and reports a validation message.
  • By maintaining the first operation sequence number inside the client it is possible to enable the server to send notification messages according to the last effective message sorted when frequent effective messages are reported, thereby ensuring the consistency of multi-terminal final operations and avoiding the timing caused by frequent operations wrong situation.
  • the validation message includes the first operation sequence number in the first client.
  • the first operation sequence number may refer to an arrangement sequence of operations performed by the local terminal from the perspective of any client within the communication range, and the operations performed by the local terminal may include performing the first operation on the first object.
  • the first operation sequence number can be guaranteed to increase by the local end or the server end. By maintaining the first operation sequence number in the first client, the absolute order of operations executed from the perspective of the local end can be guaranteed.
  • reporting time interval of each adjacent two of the at least two validation messages is less than the second time interval, then triggering the server to generate a notification message, including: sorting the last according to the first operation sequence number in the at least two validation messages A notification message is generated for the take effect message.
  • the first client frequently performs the first operation on the first object. If the reporting time interval between every adjacent two of the two or more validating messages reported by the first client is less than the second time interval, it may be considered that the first client frequently performs operations on the first object.
  • the second time interval may be preset according to empirical values or experimental values.
  • the server When the first client frequently performs the first operation on the first object, the server will frequently receive reported validation messages. Due to the influence of communication delay and other factors, the sequence of validation messages received by the server may be different from the sequence of validation messages sent by the first client.
  • the server may determine the order in which the first client performs the first operation according to the first operation sequence number contained in the validation message. order, that is, to determine the order in which the first client sends validation messages.
  • the server can also generate a notification message according to the last effective message sorted by the first operation sequence number, so as to ensure the consistency of multi-terminal final operations and avoid timing errors caused by frequent operations.
  • FIG. 6 is a schematic diagram of signaling for continuously reporting validation messages in an object operation method provided by an embodiment of the present disclosure.
  • FIG. 6 can be regarded as a combination of the object operation methods provided in FIG. 4 and FIG. 5 , and technical details not described here can refer to corresponding descriptions in FIG. 4 and FIG. 5 .
  • the first client client 2 in the figure
  • the client 2 can communicate with at least one second client (client 1 in the figure) through the server.
  • the client 2 can receive the first request from any client 1; respond to the feedback consent message to use the prop C on the face of the user in the video; report the validation message carrying the first operation number 201 to the server.
  • the client 2 can immediately receive the operation instruction input by the end; according to the operation instruction, use the prop B on the face of the user in the video in the end; report the effective message carrying the first operation number 202 to the server.
  • the server may discard the validation message carrying the first operation sequence number 201 in order, A notification message is generated according to the validation message carrying the first operation sequence number 202 .
  • the props used by the user of client 2 on the face in the video are C and B in turn; from the perspective of client 1, the props used by the user of client 2 on the face in the video are The prop is B, which can ensure the consistency of multi-terminal final operations to avoid timing errors caused by frequent operations.
  • the technical solution of the embodiment of the present disclosure refines the situation that the local terminal frequently operates the first object and reports a validation message.
  • the server By maintaining the first operation sequence number inside the client, it is possible to enable the server to send notification messages according to the last effective message sorted when frequent effective messages are reported, thereby ensuring the consistency of multi-terminal final operations and avoiding the timing caused by frequent operations wrong situation.
  • the operation method of the object provided by the embodiment of the present disclosure and the operation method of the object provided by the above-mentioned embodiment belong to the same disclosed concept, and the technical details not described in detail in this embodiment can be referred to the above-mentioned embodiment, and the same technical features are described in this embodiment Example has the same beneficial effect as in the above-mentioned embodiment.
  • the embodiments of the present disclosure may be combined with multiple embodiments of the object operation methods provided in the above embodiments.
  • the object operation method provided in this embodiment describes in detail the steps of requesting the second client to perform an operation.
  • the object operation method may further include: determining the target client from the second client; sending the second request to the target client, so that when the target client feeds back an agreement message for the second request, the target client A second object of the client performs a second operation; the second request represents a request to perform a second operation on the second object.
  • the object of the second client may be called a second object, and the operation of the client to which the second object belongs to the second object may be called a second operation.
  • the first client may select the target client from the second clients within the communication range according to the selection instruction input by the user; and send a second request to the target client to request the target client to execute the second object on its second object. Two operations.
  • the target client may feed back an approval message, or may feed back a rejection message.
  • the process for the target client to feed back the consent message or the rejection message may refer to the process for the first client to feed back the consent message or the rejection message for the first request.
  • the target client When the target client feeds back the consent message, the target client can perform a second operation on its second object; and can report an effective message to the server when the second operation takes effect, so as to trigger the server to generate a notification message, and send the notification message.
  • the first operation that is sent to the clients within the communication range to which the target client belongs, so that the target client can remain in effect, and other clients (including the first client) within the communication range except the target client can
  • the second object performs a second operation.
  • FIG. 7 is a schematic diagram of signaling for sending a second request in an object operation method provided by an embodiment of the present disclosure.
  • the first client can communicate with the target client (client 2 in the figure) through the server.
  • Client 1 may generate a second request, and may send the second request to Client 2 through the server; wherein the second request represents a request to perform a second operation on a second object, for example, to the user of Client 2 in a video Use prop D for the face of .
  • the client 2 can generate a consent message according to the consent instruction input by the user, and feed back the consent message to the sending client 1 through the server.
  • the client 2 may use the prop D on the face of the local user in the video in response to the feedback consent message (that is, perform the second operation on the second object).
  • the client 2 can report the validation message to the server when the item D becomes valid.
  • the server can generate a notification message according to the validation message.
  • the server can also send a notification message to the client 1 and the client 2, so as to ensure that the facial state of the user of the client 2 in the video presented by multiple terminals is consistent.
  • client 2 when the client 2 feeds back the rejection message, the client 2 may not need to perform the second operation on the second object.
  • client 1 cannot receive the notification message corresponding to the second operation sent by the server, and may not perform the second operation on the second object, so as to ensure that the facial state of the user of client 2 in the video presented by multiple terminals is consistent.
  • the target client by sending the second request to the target client, the target client can be requested to perform the second operation on its internal second object, so that the object operation is more flexible, the interactive gameplay is more diverse, and user experience can be improved.
  • after sending the second request to the target client it further includes: performing a second operation on the second object according to the second request operation; if the notification message corresponding to the second request sent by the server is received within the third time interval from the moment of sending the second request, prompt the request success message and keep the effective second operation; if from From the moment when the second request is sent, if the notification message corresponding to the second request sent by the server is not received within the third time interval, a request failure message is prompted and the effective second operation is cancelled.
  • the second operation may be performed on the second object at the local end immediately.
  • the client 1 sends the second request, it can immediately use the prop D on the face of the user of the client 2 in the video and take effect. Therefore, the user of the client 1 can perceive timely operation feedback and improve user experience.
  • the third time interval may be set according to empirical values or experimental values.
  • the notification message corresponding to the second request may refer to the notification message that the target client performs the second operation on the second object after feeding back an approval message for the second request, and sends the notification message to the server when the second operation takes effect.
  • the first client can start timing from the moment when the second request is sent, and if it receives a notification message corresponding to the second request sent by the server within the third time interval, it can be considered that the request is successful, and the target client has completed the request. Its second object performs a second operation. At this point, a request success message including "XX client has been successfully requested to perform the XX operation" may be prompted, and at the same time, the effective second operation may be maintained (as shown in FIG. 7 ).
  • the first client does not receive the notification message corresponding to the second request from the server within the third time interval, it may be considered that the request fails, and the target client does not perform the second operation on its second object.
  • a request failure message including "requesting the XX client to perform the XX operation failed" may be prompted, and the effective second operation may be canceled at the same time.
  • the target client may prompt an operation failure message including "XX operation failed" to prompt the target client for the second operation.
  • the operation did not take effect on the other end.
  • the target client can also cancel the second operation that has taken effect, so as to ensure multi-terminal consistency.
  • the second operation may be performed on the second object at the local end, so that the user may perceive timely operation feedback.
  • the target client can execute the second operation on the second object, and can send a second operation validation message to the server, so as to trigger the server to send a notification message to at least one client.
  • the first client may determine that the request is successful according to the notification message, and maintain the effective second operation.
  • the target client responds with rejection, or when the notification message from the server is not received within a certain period of time due to the interference of various factors in the communication process, the request can be considered as failed and the effective second operation will be cancelled.
  • multi-terminal consistency can be guaranteed.
  • the second request includes the first operation sequence number in the first client.
  • the first operation sequence number here is the same as the first operation sequence number above, and both may refer to the sequence of operations performed by the terminal from the perspective of any client within the communication range.
  • the operation performed by the local end may include an operation of sending the second request.
  • sending the second request to the target client includes: passing the first operation sequence number in the at least two second requests through the server The last second request is forwarded to the target client.
  • the fourth time interval may be preset according to empirical values or experimental values.
  • the server may determine the order in which the first client sends the second request according to the first operation sequence number included in the second request. In addition, the server can also forward the last second request according to the first operation sequence number to the target client, so as to ensure the consistency of multi-terminal final operations and avoid timing errors caused by frequent requests.
  • FIG. 8 is a schematic diagram of signaling for continuously sending the second request in an object operation method provided by an embodiment of the present disclosure.
  • the first client can communicate with the target client (client 2 in the figure) through the server.
  • Client 1 can continuously generate three second requests, which can be: the first second request, carrying the first operation sequence number 100, requesting to use prop E on the face of the user of client 2 in the video; the second second request The second request, carrying the first operation number 101, requests to use the prop F on the face of the user of client 2 in the video; the third second request, carrying the first operation number 102, requests the user of client 2 to use the prop F on the face in the video; Prop G is used for the face in the video.
  • each second request after each second request is generated, it can be sent to the server.
  • the server receives the first second request, it cannot know whether it will receive the second request consecutively, so it can forward the first second request to client 2;
  • the second second request carrying the first operation sequence number 101 can be discarded in order, and the second request carrying the first operation sequence number 102 can be forwarded to the client 2 .
  • case 1 if the prop E used by the user on the face in the video does not take effect, the ported If there is a second request with the first operation number 102, it can be canceled Use prop E on the face, and then use prop G on the face; in the second case, if the use of prop E on the face of the local user in the video has taken effect, and then the second request carrying the first operation number 102 is received, the face can be Props switched to Prop G.
  • each time the client 1 sends the second request it can immediately perform a corresponding operation at the local end.
  • props E, F, and G may be used sequentially on the face of the user of client 2 in the video. Afterwards, it may wait to receive a notification message sent by the server to determine the props finally used by the user of the client 2 in the video.
  • client 1 can receive the notification message sent by the server to use the prop G on the face of the user of client 2 in the video. At this time, client 1 keeps the client The user at terminal 2 can use the prop G on the face in the video. If it is situation 2 from the perspective of client 2, then client 1 can first receive the notification message issued by the server that the user of client 2 uses the prop E on the face in the video; and then receive the notification message issued by the server Notification message for client 2 using prop G on the face. At this point, the client 1 can switch from using the item G to using the item E, and then switch back to using the item G. In this way, the consistency of multi-terminal final operations is guaranteed to avoid timing errors caused by frequent requests.
  • the steps of requesting the second client to perform operations are described in detail.
  • the target client can be requested to perform the second operation on its internal second object, so that the object operation is more flexible, the interactive gameplay is more diverse, and user experience can be improved.
  • the second operation may be performed on the second object at the local end after the second request is sent, so that the user may perceive timely operation feedback.
  • the target client can execute the second operation on the second object, and can send a second operation validation message to the server, so as to trigger the server to send a notification message to at least one client.
  • the first client may determine that the request is successful according to the notification message, and maintain the effective second operation.
  • the request can be considered as failed and the effective second operation will be cancelled.
  • the second request may also contain the first operation sequence number, so that when the second request is frequently sent, the server can forward the last second request to the target client, so as to ensure the consistency of the multi-terminal final operation. Avoid timing errors caused by frequent requests.
  • the embodiments of the present disclosure may be combined with multiple embodiments of the object operation methods provided in the above embodiments.
  • the object operation method provided in this embodiment refines the object operation steps when notification messages for the same target object are frequently received.
  • the first client can perform operations on the target object, thereby ensuring the consistency of the final operations of multiple terminals To avoid timing errors caused by frequent receipt of notification messages.
  • the notification message includes the second operation sequence number in the server.
  • the second operation sequence number may refer to an arrangement sequence of global operations performed by the client on its internal first object from the perspective of the server.
  • the second operation sequence number may be maintained by the server in increasing order according to the effective message reported by the client.
  • the method further includes: sorting the last notification message according to the second operation sequence number in the at least two notification messages, Perform an action on the target object.
  • any client within the communication range may determine the target object corresponding to the notification message according to the identifier of the first object in the client to be operated in the notification message.
  • the client receives multiple notification messages for the same target object, if the sending time interval of every two adjacent notification messages is less than the fifth time interval, it can be considered that blocking messages are sent together.
  • the fifth time interval may be preset according to empirical values or experimental values.
  • the client may determine the identifier of the first operation in the client to be operated according to the last notification message of the second operation sequence number among the at least two notification messages. Moreover, a corresponding operation may be performed on the target object according to the identifier of the first operation in the client to be operated. In this way, the consistency of the final operations of the multi-terminals can be guaranteed, so as to avoid timing errors caused by frequent reception of notification messages.
  • FIG. 9 is a schematic diagram of signaling for continuously receiving notification messages in an object operation method provided by an embodiment of the present disclosure.
  • the first client can be any client within the communication range, and can communicate with the second client through the server.
  • Client 1 can receive the notification message sent by the server, and can according to the first object in the client to be operated in the notification message The identifier of determines the target object corresponding to the notification message.
  • client 1 has received three notification messages aimed at the same target object, and the delivery time interval of each adjacent two notification messages is less than the fifth time interval, and the second operation numbers carried respectively are 1001, 2001 and 3001, then The client 1 can discard the notification messages with the second operation sequence numbers 1001 and 2001 in order, and perform operations on the target object according to the notification message with the second operation sequence number 3001, so as to ensure the consistency of the multi-terminal final operations.
  • a multifunctional interface may be pre-defined based on a programming language such as C++.
  • the interface may include, for example, an interface of client operation behavior, an interface of operation effect message, an interface of notification message, and the like.
  • At least one of the following fields may be defined in the interface (operation) of the operation behavior of the client: the communication range of the string type (such as the chat room identifier room_id), the first operation sequence number (op_id) of the long integer type, the integer type type of preset event (op_type, for example, number 1 may indicate receiving an operation command input from the local end, and number 2 may indicate a feedback message for the first request, etc.), the integer type of business type of the first operation (business_type, for example, number 1 may be Indicates the use of props on the user’s face in the video), the specific business data (data) of the dictionary type, the target user (to_user_id) of the string type, and the first request feedback message (reply_result) of the integer type, for example, the numbers 0 and 1 respectively represent the to_user_id
  • the first request feeds back the approval message and the rejection message) and the first request of the long integer feedback message (reply_op_id
  • the interface of operating effect information can define at least one of the following fields: integer operation type (type, for example, the number 1 can indicate that the prop is actively used, and the number 2 can indicate that the target client is requested to use the prop ) and a string-type effect ID (effect_id, for example, it can be an item ID).
  • integer operation type type, for example, the number 1 can indicate that the prop is actively used, and the number 2 can indicate that the target client is requested to use the prop
  • effect_id for example, it can be an item ID
  • the interface (operation Notify) of the notification message may define at least one of the following fields: the first operation sequence number (op_id) of the long integer type, the second operation sequence number (version) of the long integer type, and the preset Event (op_type), integer first operation business type (business_type), dictionary specific business data (data), source user ID (from_user_id), integer first request feedback message (reply_result) and long integer
  • the fields not specifically described may refer to the fields of the above interface.
  • the technical solutions of the embodiments of the present disclosure refine the object operation steps when frequently receiving notification messages for the same target object.
  • the first client can perform operations on the target object, thereby ensuring the consistency of the final operations of multiple terminals To avoid timing errors caused by frequent receipt of notification messages.
  • the operation method of the object provided by the embodiment of the present disclosure and the operation method of the object provided by the above-mentioned embodiment belong to the same disclosed concept, and the technical details not described in detail in this embodiment can be referred to the above-mentioned embodiment, and the same technical features are described in this embodiment Example has the same beneficial effect as in the above-mentioned embodiment.
  • FIG. 10 is a schematic structural diagram of an object operating device provided by an embodiment of the present disclosure.
  • the device for operating an object provided by this embodiment is applicable to a situation where multiple clients perform mutually exclusive operations on the same object, for example, a situation where multiple clients add special effects to multimedia data of a certain client during a multimedia communication process.
  • the object operating device provided by this embodiment is integrated in the first client, and may include:
  • An operation module 1010 configured to perform a first operation on the first object of the first client in response to a preset event
  • the effective message reporting module 1020 is configured to report an effective message to the server when the first operation takes effect, so as to trigger the server to generate a notification message, and send the notification message to the first client and at least one communication with the first client.
  • the second client communicates in real time to enable the first client to maintain the first operation in effect, and to enable the second client to perform the first operation on the first object.
  • the operation module 1010 can also be set to:
  • notification message corresponding to the validation message sent by the server is not received within the first time interval from the moment when the validation message is reported, an operation failure message is prompted, and the first valid operation is canceled.
  • preset events may include at least one of the following:
  • a consent message is fed back; the first request represents a request to perform the first operation on the first object.
  • the validation message may include the first operation sequence number in the first client
  • the validation message reporting module 1020 can also be set to: if the reporting time interval between each adjacent two of the at least two validation messages is less than the second time interval, trigger the server to sort the last one according to the first operation sequence number in the at least two validation messages The validation message generates a notification message.
  • the operation module 1010 can also be set to:
  • the operation module 1010 can also be set to:
  • the second request includes the first operation sequence number in the first client
  • the operation module 1010 can also be set to: if the sending time interval of each adjacent two of the at least two second requests is less than the fourth time interval, the server will sort the first operation sequence number of the at least two second requests to the last The second request is forwarded to the target client.
  • the notification message includes the second operation sequence number in the server
  • the operation module 1010 can also be set to: if the sending time interval of each adjacent two of the at least two notification messages for the same target object is less than the fifth time interval, sort the last one according to the second operation sequence number in the at least two notification messages Notification message to perform operations on the target object.
  • the first client and the second client may be multimedia communication clients; the first object includes multimedia data, and the first operation includes adding special effects.
  • the device for operating an object provided by an embodiment of the present disclosure can execute the method for operating an object provided by any embodiment of the present disclosure, and has corresponding functional modules and beneficial effects for executing the method.
  • FIG. 11 it shows a schematic structural diagram of an electronic device (such as a terminal device or a server in FIG. 11 ) 1100 suitable for implementing an embodiment of the present disclosure.
  • the terminal equipment in the embodiment of the present disclosure may include but not limited to such as mobile phone, notebook computer, digital broadcast receiver, PDA (personal digital assistant), PAD (tablet computer), PMP (portable multimedia player), vehicle terminal (such as mobile terminals such as car navigation terminals) and fixed terminals such as digital TVs, desktop computers and the like.
  • the electronic device shown in FIG. 11 is only an example, and should not limit the functions and application scope of the embodiments of the present disclosure.
  • an electronic device 1100 may include a processing device (such as a central processing unit, a graphics processing unit, etc.) 1101, which may be stored in a read-only memory (Read-Only Memory, ROM) 1102 according to a program 1106 is loaded into a program in a random access memory (Random Access Memory, RAM) 1103 to execute various appropriate actions and processes.
  • ROM Read-Only Memory
  • RAM Random Access Memory
  • various programs and data necessary for the operation of the electronic device 1100 are also stored.
  • the processing device 1101, the ROM 1102, and the RAM 1103 are connected to each other through a bus 1104.
  • An input/output (I/O) interface 1105 is also connected to the bus 1104 .
  • the following devices can be connected to the I/O interface 1105: input devices 1106 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; including, for example, a liquid crystal display (LCD), speaker, vibration an output device 1107 such as a computer; a storage device 1108 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1109.
  • the communication means 1109 may allow the electronic device 1100 to perform wireless or wired communication with other devices to exchange data. While FIG. 11 shows electronic device 1100 having various means, it is to be understood that implementing or having all of the means shown is not a requirement. More or fewer means may alternatively be implemented or provided.
  • embodiments of the present disclosure include a computer program product, which includes a computer program carried on a non-transitory computer readable medium, where the computer program includes program code for executing the method shown in the flowchart.
  • the computer program may be downloaded and installed from a network via communication means 1109 , or from storage means 1106 , or from ROM 1102 .
  • the processing device 1101 When the computer program is executed by the processing device 1101, the above-mentioned functions defined in the operating method of the object of the embodiment of the present disclosure are executed.
  • the electronic device provided by the embodiment of the present disclosure belongs to the same disclosed concept as the operation method of the object provided by the above embodiment.
  • the technical details not described in this embodiment can be referred to the above embodiment, and this embodiment has the same features as the above embodiment. beneficial effect.
  • An embodiment of the present disclosure provides a computer storage medium on which a computer program is stored, and when the program is executed by a processor, the operation method of the object provided by the above-mentioned embodiments is implemented.
  • the computer-readable medium mentioned above in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the two.
  • a computer readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor device or device, or any combination thereof.
  • Computer-readable storage media may include, but are not limited to, electrical connections with one or more wires, portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable Programmable Read-Only Memory (Erasable Programmable Read-Only Memory, EPROM) or flash memory (FLASH), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution device or device.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave carrying computer-readable program code therein. Such propagated data signals may take many forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • a computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport a program for use by or in conjunction with an instruction execution device or device.
  • Program code embodied on a computer readable medium may be transmitted by any appropriate medium, including but not limited to wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
  • the client and the server can communicate using any currently known or future-developed network protocols such as HTTP (Hyper Text Transfer Protocol, Hypertext Transfer Protocol), and can communicate with any form or medium of digital Data communication (eg, communication network) interconnections.
  • HTTP Hyper Text Transfer Protocol
  • Examples of communication networks include local area networks ("LANs”), wide area networks ("WANs”), internetworks (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network of.
  • the above-mentioned computer-readable medium may be included in the above-mentioned electronic device, or may exist independently without being incorporated into the electronic device.
  • the above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the electronic device, the electronic device:
  • Computer program code for carrying out operations of the present disclosure may be written in one or more programming languages, or combinations thereof, including but not limited to object-oriented programming languages—such as Java, Smalltalk, C++, and Includes conventional procedural programming languages - such as the "C" language or similar programming languages.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer can be connected to the user computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer (such as through an Internet service provider). Internet connection).
  • LAN local area network
  • WAN wide area network
  • Internet service provider such as AT&T, MCI, Sprint, EarthLink, MSN, GTE, etc.
  • each block in a flowchart or block diagram may represent a module, program segment, or portion of code that contains one or more logical functions for implementing specified executable instructions.
  • the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or they may sometimes be executed in the reverse order, depending upon the functionality involved.
  • each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations can be implemented by a dedicated hardware-based system that performs the specified functions or operations , or may be implemented by a combination of dedicated hardware and computer instructions.
  • the units involved in the embodiments described in the present disclosure may be implemented by software or by hardware. Wherein, the names of units and modules do not constitute limitations on the units and modules themselves under certain circumstances.
  • exemplary types of hardware logic components include: Field Programmable Gate Arrays (Field Programmable Gate Arrays, FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (Application Specific Standard Parts, ASSP), System on Chip (System on Chip, SOC), Complex Programmable Logic Device (CPLD), etc.
  • a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction-executing apparatus or apparatus.
  • a machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium.
  • a machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor devices or devices, or any suitable combination of the foregoing.
  • a more specific example of a machine-readable storage medium would include an electrical connection based on one or more wires, a convenient Portable computer disk, hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, compact disk read-only memory (CD- ROM), optical storage, magnetic storage, or any suitable combination of the foregoing.
  • RAM random access memory
  • ROM read-only memory
  • EPROM or flash memory erasable programmable read-only memory
  • CD- ROM compact disk read-only memory
  • magnetic storage or any suitable combination of the foregoing.
  • Example 1 provides an object operation method, which is applied to the first client, and the method includes:
  • Example 2 provides an object operation method, which also includes:
  • Example 3 provides an object operation method, wherein the preset event includes at least one of the following:
  • a consent message is fed back for any first request sent by the second client; the first request represents a request to perform the first operation on the first object.
  • Example 4 provides an object operation method, wherein the validation message includes the first operation sequence number in the first client;
  • triggering the server to generate a notification message includes:
  • Example 5 provides an object operation method, which further includes:
  • the second request characterizes a request to perform the second operation on the second object.
  • Example 6 provides an object operation method, after sending the second request to the target client, further includes:
  • Example 7 provides an object operation method, wherein the second request includes the first operation sequence number in the first client;
  • sending the second request to the target client includes:
  • the server forwards the second request with the last sequence number of the first operation among the at least two second requests to the target client.
  • Example 8 provides an object operation method, wherein the notification message includes the second operation sequence number in the server;
  • the method further includes:
  • Example 9 provides an object operation method, wherein the first client and the second client are multimedia communication clients; the first object Including multimedia data, the first operation includes adding a special effect operation.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开实施例公开了一种对象的操作方法、装置、电子设备及存储介质,其中该方法应用于第一客户端,包括:响应于预设事件,对第一客户端的第一对象执行第一操作;于第一操作执行生效时向服务端上报生效消息,以触发服务端生成通知消息,并将通知消息下发至第一客户端以及至少一个与第一客户端进行实时通信的第二客户端,以使第一客户端保持生效的第一操作,以及使至少一个第二客户端对第一对象执行第一操作。

Description

一种对象的操作方法、装置、电子设备及存储介质
本申请要求在2022年2月16日提交中国专利局、申请号为202210140943.9的中国专利申请的优先权,该申请的全部内容通过引用结合在本申请中。
技术领域
本公开实施例涉及计算机技术领域,例如涉及一种对象的操作方法、装置、电子设备及存储介质。
背景技术
相关技术中的多客户端交互场景中,存在多客户端对同一对象进行互斥操作的需求。基于相关技术中的交互框架执行多端互斥操作时,无法保证多端上操作行为的有序性,容易导致多端呈现的对象状态不一致,严重影响交互体验。
发明内容
本公开实施例提供了一种对象的操作方法、装置、电子设备及存储介质,能够保证多端上操作行为的有序性,使多端呈现的对象状态一致,提高交互体验。
第一方面,本公开实施例提供了一种对象的操作方法,应用于第一客户端,包括:
响应于预设事件,对所述第一客户端的第一对象执行第一操作;
于所述第一操作执行生效时向服务端上报生效消息,以触发所述服务端生成通知消息,并将所述通知消息下发至所述第一客户端以及至少一个与所述第一客户端进行实时通信的第二客户端,以使所述第一客户端保持生效的所述第一操作,以及使至少一个所述第二客户端对所述第一对象执行所述第一操作。
第二方面,本公开实施例还提供了一种对象的操作装置,集成于第一客户端,包括:
操作模块,设置为响应于预设事件,对所述第一客户端的第一对象执行第一操作;
生效消息上报模块,设置为于所述第一操作执行生效时向服务端上报生效消息,以触发所述服务端生成通知消息,并将所述通知消息下发至所述第一客户端以及至少一个与所述第一客户端进行实时通信的第二客户端,以使所述第一客户端保持生效的所述第一操作,以及使至少一个所述第二客户端对所述第一对象执行所述第一操作。
第三方面,本公开实施例还提供了一种电子设备,所述电子设备包括:
一个或多个处理器;
存储装置,设置为存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本公开实施例任一所述的对象的操作方法。
第四方面,本公开实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本公开实施例任一所述的对象的操作方法。
附图说明
图1为本公开一实施例所提供的一种对象的操作方法的流程示意图;
图2为本公开一实施例所提供的一种对象的操作方法中客户端的界面示意图;
图3为本公开一实施例所提供的一种对象的操作方法的信令示意图;
图4为本公开一实施例所提供的一种对象的操作方法中本端主动切换道具的信令示意图;
图5为本公开一实施例所提供的一种对象的操作方法中对端请求本端切换道具的信令示意图;
图6为本公开一实施例所提供的一种对象的操作方法中连续上报生效消息的信令示意图;
图7为本公开一实施例所提供的一种对象的操作方法中发送第二请求的信令示意图;
图8为本公开一实施例所提供的一种对象的操作方法中连续发送第二请求的信令示意图;
图9为本公开一实施例所提供的一种对象的操作方法中连续接收通知消息的信令示意图;
图10为本公开一实施例所提供的一种对象的操作装置的结构示意图;
图11为本公开一实施例所提供的一种电子设备的结构示意图。
具体实施方式
应当理解,本公开的方法实施方式中记载的多个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
图1为本公开一实施例所提供的一种对象的操作方法的流程示意图。本公开实施例适用于多客户端对同一对象进行互斥操作的情形,例如多媒体通信过程中多客户端对某一客户端的多媒体数据添加特效的情形。该方法可以由对象的操作装置来执行,该装置可以通过软件和/或硬件的形式实现,该装置可集成于客户端,且可随客户端安装于电子设备中,例如配置于手机、电脑等电子设备中。
如图1所示,本实施例提供的对象的操作方法,应用于第一客户端,可以包括:
S110、响应于预设事件,对第一客户端的第一对象执行第一操作。
本公开实施例中,客户端之间可以建立通信连接,某客户端的对象可以包括源于该客户端的通信数据,且通信数据可以包括但不限于文字、表情、音频、图像和视频等。建立通信的客户端可以呈现本端的通信数据,也可以呈现与本端建立通信的其他端的通信数据,从而可保证多端顺利通信。
对于正在进行实时通信的任一客户端来讲,可以将本端称为第一客户端;将与本端进行实时通信的客户端称为第二客户端;将本端的对象称为第一对象;将对本端的对象的操作称为第一操作。第一客户端可以响应于预设事件对本端的第一对象执行第一操作。其中,预设事件可以为主动触发操作的事件(例如本端输入指令),也可以为被动触发操作的事件(例如接收第二客户端的指令)。可以认为,第一客户端可主动对第一对象执行第一操作,也可以被动对第一对象执行第一操作。由于多个客户端都可以实现触发预设事件,因此为了避免出现第一操作的冲突,本实施例中,多种第一操作之间可以互斥,即第一对象在同一时刻可至多生效一种第一操作,多种第一操作不能同时生效,从而可实现多客户端可以对同一对象进行互斥操作。
在一实施例中,第一客户端和第二客户端可以为多媒体通信客户端,例如可以包括即时通信客户端、视频会议客户端等。第一对象可以包括多媒体数据,例如可以包括音频、视频等。第一操作包括添加特效操作,例如变声、对视频图像中面部使用道具等。
示例性的,图2为本公开一实施例所提供的一种对象的操作方法中客户端的界面示意图。参见图2,客户端的界面为两用户视频通话的界面;界面中左上角的框控件201内可以呈现本端用户的视频(即第一对象),底层全屏可以呈现对端用户视频。界面中可以布署“道具”控件202,并且可响应于点击控件202弹出“选择道具”的窗口203。
通过窗口203可以从道具1-道具N中选择对本端用户(即图中的“自己”)在视频中面部使用道具,即执行第一操作。此外,还可以通过窗口203从道具1-道具N中选择对对端用户(即图中的“对方”)在视频中面部使用道具,并可向对端发起使用该道具的请求。同理,对端还可以通过其“选择道具”的窗口,选择对本端用户在视频中面部使用道具,以请求本端执行第一操作。由于本端和对端都可控制本端执行第一操作,在第一操作互斥的情况下,可以营造双方斗道具的游戏体验,提高玩法灵活性。
图2中本端已经生效的第一操作为,对本端用户视频中面部添加猫咪耳朵特效的操作,此外还可以执行包括调整妆容、添加氛围特效(例如飘心、飘雪)等其他操作,在此不做穷举。
在这些实施例中,多媒体通信客户端可以对多媒体数据执行添加特效的操作,从而可以实现在多人交互场景下对相同多媒体资源进行操作,提高用户体验。此外,其他多客户端对同一对象进行操作的业务场景也可应用于此,支持业务可扩展性。
S120、于第一操作执行生效时向服务端上报生效消息,以触发服务端生成通知消息,并将通知消息下 发至第一客户端以及至少一个与第一客户端进行实时通信的第二客户端,以使第一客户端保持生效的第一操作,以及使第二客户端对第一对象执行第一操作。
本公开实施例中,第一操作执行生效可以指,第一操作在第一客户端执行完毕,并已呈现其执行完毕的效果。其中,第一客户端与至少一个第二客户端可以通过服务端通信。在第一客户端执行第一操作生效时可以生成生效消息,并将生成消息上报至服务端;其中生效消息中可以包括但不限于,第一客户端的标识、第一客户端所属通信范围的标识(例如聊天群的标识、视频会议的会议室标识等)、第一客户端内第一对象的标识和第一操作的标识等数据。
其中,服务端可根据收到生效消息时生成通知消息。例如,可以将生成消息中的第一客户端的标识,作为通知消息中的待操作客户端的标识;可以将生成消息中的第一客户端所属通信范围的标识,作为通知消息中的待通知通信范围的标识;将生成消息中的第一客户端内第一对象的标识和第一操作的标识,作为通知消息中的待操作客户端中第一对象的标识和第一操作的标识。服务端在生成通知消息后,可以根据通知消息中的待通知通信范围的标识,将通知消息下发至对应通信范围内的全部客户端,即下发至第一客户端和与第一客户端进行实时通信的至少一个第二客户端。
通过将通知消息下发至第二客户端,可以使第二客户端感知到第一客户端对第一对象执行了第一操作。由于第二客户端同样呈现有第一客户端的第一对象,第二客户端可以根据通知消息对呈现的第一对象执行第一操作。从而可以实现通信范围内的多端上执行相同的操作行为,保证了全局操作行为的有序性,使多端呈现的对象状态一致,提高交互体验。通过将通知消息下发至第一客户端,可以使第一客户端接收到该第一操作在第二客户端同样生效的反馈,提高用户体验。
示例性的,图3为本公开一实施例所提供的一种对象的操作方法的信令示意图。参见图3,第一客户端(图中的客户端2)可以通过服务端与至少一个第二客户端(图中的客户端1)进行通信。客户端2可以响应于预设事件,对本端用户在视频中的面部使用道具A(即对第一对象执行第一操作)。其中,使用道具过程中可以判断道具是否已下载,若道具已经下载,则可直接使用,若道具还未下载,则可先下载再使用。客户端2可于道具A生效时可以向服务端上报生效消息。服务端可根据生效消息生成通知消息。服务端还可将通知消息下发至客户端1和客户端2。
通过将通知消息下发至客户端1,能够实现客户端1同样对呈现的客户端2的用户在视频中的面部使用道具A,保证了全局操作行为的有序性,使多端呈现的客户端2的用户在视频中的面部状态一致,提高交互体验。通过将通知消息下发至客户端2,能够实现向客户端2反馈该第一操作在客户端1同样生效,可提高客户端2的用户体验。
在一实施例中,若从上报生效消息的时刻起,在第一时间间隔内未接收到服务端下发的与生效消息对应的通知消息,则提示操作失败消息,并取消生效的第一操作。
在对象的操作方法应用过程中,由于通信干扰、服务端异常等多种因素影响,可能导致通知消息无法顺利下发的情况。在这些实施例中,第一客户端可以从发送生效消息时刻起进行计时,若第一时间间隔内未收到通知消息,则可以认为服务端通知失败,该第一操作在第二客户端没有生效。其中,第一时间间隔可以根据经验值或实验值进行预先设置。
在这些实施例中,若第一时间间隔内未收到通知消息,则可以提示包含有“××操作失败”等内容的操作失败消息,以提示第一操作未在其他端生效。同时,第一客户端还可取消已生效的第一操作,从而可保证多端一致性。
本公开实施例的技术方案,第一客户端可响应于预设事件,对本端的第一对象执行第一操作;于第一操作执行生效时向服务端上报生效消息,以触发服务端生成通知消息,并将通知消息下发至第一客户端以及至少一个与第一客户端进行实时通信的第二客户端,以使第一客户端保持生效的第一操作,以及使第二客户端对第一对象执行第一操作。
进行通信的任一客户端皆可以作为第一客户端,第一客户端在对本端的第一对象执行第一操作生效时,可向服务端上报生效消息,以使服务端向第一客户端和与第一客户端实时通信的第二客户端下发通知消息。从而能够使第二客户端同样对第一对象执行该第一操作,保证了通信范围内的多端上操作行为的有序性,使多端呈现的对象状态一致,提高交互体验。并且,还可以使第一客户端接收到该第一操作在第二客户端同样生效的反馈,提高用户体验。
本公开实施例与上述实施例中所提供的对象的操作方法中多个实施例可以结合。本实施例所提供的对 象的操作方法,对预设事件进行了详细描述,能够在本端主动执行第一操作,也能够响应于第二客户端的请求执行第一操作,从而使对象操作更加灵活,交互玩法更加多样,可提高用户体验。
在一实施例中,预设事件,包括下述至少一项:接收输入至第一客户端的操作指令;针对任一第二客户端发送的第一请求,反馈同意消息;第一请求表征对第一对象执行第一操作的请求。
示例性的,图4为本公开实施例所提供的一种对象的操作方法中本端主动切换道具的信令示意图。
参见图4,第一客户端(图中的客户端2)可以通过服务端与至少一个第二客户端(图中的客户端1)进行通信。客户端2可以接收本端输入的操作指令,其中操作指令可以表征对本端的第一对象执行第一操作的指令,例如对本端用户在视频中的面部使用道具B的指令。客户端2可以根据操作指令,对本端用户在视频中的面部使用道具B(即对第一对象执行第一操作)。客户端2可以于道具B生效时向服务端上报生效消息。服务端可以根据生效消息生成通知消息。服务端还可以将通知消息下发至客户端1和客户端2,以保证多端呈现的客户端2用户在视频中的面部状态一致。从而通过本端输入的操作指令,第一客户端可以实现主动对本端的第一对象执行第一操作。
示例性的,图5为本公开实施例所提供的一种对象的操作方法中对端请求本端切换道具的信令示意图。
参见图5,第一客户端(图中的客户端2)可以通过服务端与至少一个第二客户端(图中的客户端1)进行通信。任意一个客户端1可以生成第一请求,并可将第一请求通过服务端发送至客户端2;其中第一请求表征对第一对象执行第一操作的请求,例如对客户端2的用户在视频中的面部使用道具C。客户端2可根据用户输入的同意指令生成同意消息,并将同意消息通过服务端反馈至发送第一请求的客户端1。客户端2可响应于反馈同意消息,对本端用户在视频中的面部使用道具C(即对第一对象执行第一操作)。客户端2可以于道具C生效时向服务端上报生效消息。服务端可以根据生效消息生成通知消息。服务端还可以将通知消息下发至客户端1和客户端2,以保证多端呈现的客户端2用户在视频中的面部状态一致。从而通过响应于第二客户端的请求反馈同意消息,第一客户端可以实现被动对本端的第一对象执行第一操作。
在一些其他实现方式中,客户端2在收到第一请求后,还可以根据用户输入的拒绝指令生成拒绝消息,并将拒绝消息通过服务端反馈至发送第一请求的客户端1。客户端1可对接收的拒绝消息进行展示,以提示用户请求被拒绝。此时,客户端2可无需对第一对象执行第一操作,从而可以满足客户端2拒绝第一请求的需求,进一步提高客户端2用户的体验。
本公开实施例的技术方案,对预设事件进行了详细描述,能够在本端主动执行第一操作,也能够响应于第二客户端的请求执行第一操作,从而使对象操作更加灵活,交互玩法更加多样,可提高用户体验。本公开实施例提供的对象的操作方法与上述实施例提供的对象的操作方法属于同一公开构思,未在本实施例中详尽描述的技术细节可参见上述实施例,并且相同的技术特征在本实施例与上述实施例中具有相同的有益效果。
本公开实施例与上述实施例中所提供的对象的操作方法中多个实施例可以结合。本实施例所提供的对象的操作方法,对本端频繁操作第一对象并上报生效消息的情况进行了细化。通过在客户端内部维护第一操作序号,能够在频繁上报生效消息时,使服务端根据排序最后的生效消息下发通知消息,从而可以保证多端最终操作的一致性,以避免频繁操作导致的时序错误的情况。
在一实施例中,生效消息中包含第一客户端内的第一操作序号。
其中,第一操作序号可以指站在通信范围内任一客户端的角度上来讲,本端执行的操作的排列顺序,且本端执行的操作可以包括对第一对象执行第一操作。其中,第一操作序号可以由本端或服务端来保证增序。通过在第一客户端内维护第一操作序号,能够保证在本端视角下执行操作的绝对有序。
若至少两条生效消息中每相邻两条的上报时间间隔小于第二时间间隔,则以触发服务端生成通知消息,包括:以触发服务端根据至少两条生效消息中第一操作序号排序最后的生效消息生成通知消息。
在对象的操作方法应用过程中,可能存在第一客户端频繁对第一对象执行第一操作的情况。若第一客户端上报两条或多条生效消息中每相邻两条的上报时间间隔小于第二时间间隔,则可以认为第一客户端频繁对第一对象执行操作。其中,第二时间间隔可以根据经验值或实验值进行预先设置。
第一客户端频繁对第一对象执行第一操作时,服务端将频繁接收到上报的生效消息。由于通信延迟等因素的影响,服务端接收的生效消息的顺序可能与第一客户端发送生效消息的顺序产生差异。
在这些实施例中,服务端可根据生效消息中包含的第一操作序号,确定第一客户端执行第一操作的顺 序,即确定第一客户端发送生效消息的顺序。并且,服务端还可根据第一操作序号排序最后的生效消息生成通知消息,从而可以保证多端最终操作的一致性,以避免频繁操作导致的时序错误的情况。
示例性的,图6为本公开实施例所提供的一种对象的操作方法中连续上报生效消息的信令示意图。
其中,图6可以认为是图4和图5提供的对象的操作方法的结合,未在此处阐述的技术细节可以参考图4和图5对应的描述。参见图6,第一客户端(图中的客户端2)可以通过服务端与至少一个第二客户端(图中的客户端1)进行通信。首先,客户端2可接收任一客户端1的第一请求;响应于反馈同意消息对本端用户在视频中的面部使用道具C;向服务端上报携带有第一操作序号201的生效消息。之后,客户端2可立即接收本端输入的操作指令;根据操作指令,对本端用户在视频中的面部使用道具B;向服务端上报携带有第一操作序号202的生效消息。
若携带有第一操作序号201的生效消息和携带有第一操作序号202的生效消息的上报时间间隔小于第二时间间隔,则服务端可保序丢弃携带有第一操作序号201的生效消息,根据携带有第一操作序号202的生效消息生成通知消息。此时,在客户端2的视角下,客户端2的用户在视频中的面部,使用的道具依次为C和B;在客户端1的视角下,客户端2的用户在视频中的面部使用的道具为B,从而可以保证多端最终操作的一致性,以避免频繁操作导致的时序错误的情况。
本公开实施例的技术方案,对本端频繁操作第一对象并上报生效消息的情况进行了细化。通过在客户端内部维护第一操作序号,能够在频繁上报生效消息时,使服务端根据排序最后的生效消息下发通知消息,从而可以保证多端最终操作的一致性,以避免频繁操作导致的时序错误的情况。本公开实施例提供的对象的操作方法与上述实施例提供的对象的操作方法属于同一公开构思,未在本实施例中详尽描述的技术细节可参见上述实施例,并且相同的技术特征在本实施例与上述实施例中具有相同的有益效果。
本公开实施例与上述实施例中所提供的对象的操作方法中多个实施例可以结合。本实施例所提供的对象的操作方法,对请求第二客户端执行操作的步骤进行了详细描述。
在一实施例中,对象的操作方法还可以包括:从第二客户端中确定目标客户端;向目标客户端发送第二请求,以使目标客户端针对第二请求反馈同意消息时,对目标客户端的第二对象执行第二操作;第二请求表征对第二对象执行第二操作的请求。
站在第一客户端的角度来讲,可以将第二客户端的对象称为第二对象,将第二对象所属的客户端对第二对象的操作称为第二操作。第一客户端可以根据用户输入的选择指令,从通信范围内的第二客户端中选取出目标客户端;并向目标客户端发送第二请求,以请求目标客户端对其第二对象执行第二操作。
其中,目标客户端可以反馈同意消息,也可以反馈拒绝消息。其中,目标客户端反馈同意消息或拒绝消息的过程,可参考第一客户端针对第一请求反馈同意消息或拒绝消息的过程。
当目标客户端反馈同意消息时,目标客户端可以对其第二对象执行第二操作;并可以于第二操作生效时向服务端上报生效消息,以触发服务端生成通知消息,并将通知消息下发至目标客户端所属通信范围内的客户端,以使目标客户端可保持生效的第一操作,以及使通信范围内除目标客户端外的其他客户端(包括第一客户端)可对第二对象执行第二操作。
示例性的,图7为本公开实施例所提供的一种对象的操作方法中发送第二请求的信令示意图。
参见图7,第一客户端(图中的客户端1)可以通过服务端与目标客户端(图中的客户端2)进行通信。客户端1可以生成第二请求,并可将第二请求通过服务端发送至客户端2;其中第二请求表征对第二对象执行第二操作的请求,例如对客户端2的用户在视频中的面部使用道具D。客户端2可根据用户输入的同意指令生成同意消息,并将同意消息通过服务端反馈至发送客户端1。客户端2可响应于反馈同意消息,对本端用户在视频中的面部使用道具D(即对第二对象执行第二操作)。客户端2可以于道具D生效时向服务端上报生效消息。服务端可以根据生效消息生成通知消息。服务端还可以将通知消息下发至客户端1和客户端2,以保证多端呈现的客户端2用户在视频中的面部状态一致。
此外,当客户端2反馈拒绝消息时,客户端2可无需对第二对象执行第二操作。此时,客户端1无法接收到服务器下发的与第二操作对应的通知消息,可不对第二对象执行第二操作,以保证多端呈现的客户端2用户在视频中的面部状态一致。
在这些实施例中,通过向目标客户端发送第二请求,能够请求目标客户端对其内部的第二对象执行第二操作,从而使对象操作更加灵活,交互玩法更加多样,可提高用户体验。
在一实施例中,在向目标客户端发送第二请求之后,还包括:根据第二请求,对第二对象执行第二操 作;若从发送第二请求的时刻起,在第三时间间隔内接收到服务端下发的与第二请求对应的通知消息,则提示请求成功消息,并保持生效的第二操作;若从发送第二请求的时刻起,在第三时间间隔内未接收到服务端下发的与第二请求对应的通知消息,则提示请求失败消息,并取消生效的第二操作。
其中,在发送第二请求后,可以立即在本端对第二对象执行第二操作。例如再次参见图7,客户端1发送第二请求后,可立即对客户端2的用户在视频中的面部使用道具D并生效。从而可以使客户端1的用户感知到及时的操作反馈,提高用户体验。
其中,第三时间间隔可以根据经验值或实验值进行设置。其中,与第二请求对应的通知消息,可以指目标客户端针对第二请求反馈同意消息后,对第二对象执行第二操作,并于第二操作生效时向服务端发送的通知消息。
第一客户端可以从发送第二请求的时刻起进行计时,若在第三时间间隔内接收到服务端下发的与第二请求对应的通知消息,则可认为请求成功,目标客户端已对其第二对象执行第二操作。此时,可以提示包含有“已成功请求××客户端执行××操作”等内容的请求成功消息,同时可保持生效的第二操作(如图7所示)。
若第一客户端在第三时间间隔内未接收到服务端下发的与第二请求对应的通知消息,则可认为请求失败,目标客户端未对其第二对象执行第二操作。此时,可以提示包含有“请求××客户端执行××操作失败”等内容的请求失败消息,同时可取消生效的第二操作。
同理,若目标客户端在第一时间间隔内未收到与第二操作对应的通知消息,则可以提示包含有“××操作失败”等内容的操作失败消息,以提示目标客户端第二操作未在其他端生效。同时,目标客户端还可取消已生效的第二操作,从而可保证多端一致性。
在这些实施例中,可以在发送第二请求后,即在本端对第二对象执行第二操作,以使用户感知到及时的操作反馈。当目标客户端反馈同意时,目标客户端可以对第二对象执行第二操作,并可向服务端发送第二操作的生效消息,以触发服务端向至少一个客户端发送通知消息。进而,第一客户端可以根据通知消息确定请求成功,并维持生效的第二操作。当目标客户端反馈拒绝,或通信过程中多种因素干扰导致一定时间间隔内未接收到服务端的通知消息时,可以认为请求失败,并取消生效的第二操作。从而可以保证多端一致性。
在一实施例中,第二请求中包含第一客户端内的第一操作序号。
其中,此处的第一操作序号与上文中的第一操作序号相同,皆可以指站在通信范围内任一客户端的角度上来讲,本端执行的操作的排列顺序。此处本端执行的操作可以包括发送第二请求的操作。
若至少两条第二请求中每相邻两条的发送时间间隔小于第四时间间隔,则向目标客户端发送第二请求,包括:通过服务端将至少两条第二请求中第一操作序号排序最后的第二请求转发至目标客户端。
在对象的操作方法应用过程中,可能存在第一客户端因为误触等原因频繁发送第二请求的情况。若第一客户端发送两条或多条第二请求中每相邻两条的发送时间间隔小于第四时间间隔,则可以认为第一客户端频繁发送第二请求。其中,第四时间间隔可以根据经验值或实验值进行预先设置。
第一客户端频繁发送第二请求时,服务端可根据第二请求中包含的第一操作序号,确定第一客户端发送第二请求的顺序。并且,服务端还可根据第一操作序号排序最后的第二请求转发至目标客户端,从而可以保证多端最终操作的一致性,以避免频繁请求导致的时序错误的情况。
示例性的,图8为本公开实施例所提供的一种对象的操作方法中连续发送第二请求的信令示意图。
参见图8,第一客户端(图中的客户端1)可以通过服务端与目标客户端(图中的客户端2)进行通信。客户端1可以连续生成三条第二请求,分别可以为:第一条第二请求,携带有第一操作序号100,请求对客户端2的用户在视频中的面部使用道具E;第二条第二请求,携带有第一操作序号101,请求对客户端2的用户在视频中的面部使用道具F;第三条第二请求,携带有第一操作序号102,请求对客户端2的用户在视频中的面部使用道具G。
并且,可以在生成每条第二请求后,将其发送至服务端。由于服务端在接收到第一条第二请求时,无法知晓后续是否连续接收到第二请求,故可以将第一条第二请求转发至客户端2;当后续依次接收到第二条第二请求和第三条第二请求时,可以保序丢弃第二条携带有第一操作序号101的第二请求,将携带有第一操作序号102的第二请求转发至客户端2。
此时,在客户端2的视角下可以分为两种情况(图8中仅示出了情况一):情况一,若对本端用户在视频中面部使用道具E未生效时,就接收到携带有第一操作序号102的第二请求,则可以取消(cancel) 对面部使用道具E,转而对面部使用道具G;情况二,若对本端用户在视频中面部使用道具E已生效,才接收到携带有第一操作序号102的第二请求,则可以将面部道具切换为道具G。
在一些实现方式中,客户端1可以每发送一次第二请求,就立即在本端执行相应操作。当连续发送多条第二请求时,针对每相邻两条第二请求,可以取消(cancel)第一操作序号排序靠后的第二请求对应的操作,执行第一序号排序靠前的第二请求对应的操作。在这些实施例中,在客户端1的视角下,可依次对客户端2的用户在视频中的面部使用道具E、F和G。之后,可等待接收服务端下发的通知消息,以确定客户端2的用户在视频中的面部最终使用的道具。
若客户端2的视角下为情况一,则客户端1之后可接收服务端下发的对客户端2的用户在视频中的面部使用道具G的通知消息,此时客户端1中保持对客户端2的用户在视频中面部使用道具G即可。若在客户端2的视角下为情况二,则客户端1之后可先接收服务端下发的对客户端2的用户在视频中面部使用道具E的通知消息;再接收到服务端下发的对客户端2对面部使用道具G的通知消息。此时,客户端1可从使用道具G切换为使用道具E,再切换回使用道具G。从而保证多端最终操作的一致性,以避免频繁请求导致的时序错误的情况。
本公开实施例的技术方案,对请求第二客户端执行操作的步骤进行了详细描述。通过向目标客户端发送第二请求,能够请求目标客户端对其内部的第二对象执行第二操作,从而使对象操作更加灵活,交互玩法更加多样,可提高用户体验。此外,可以在发送第二请求后,即在本端对第二对象执行第二操作,以使用户感知到及时的操作反馈。当目标客户端反馈同意时,目标客户端可以对第二对象执行第二操作,并可向服务端发送第二操作的生效消息,以触发服务端向至少一个客户端发送通知消息。进而,第一客户端可以根据通知消息确定请求成功,并维持生效的第二操作。当目标客户端反馈拒绝,或通信过程中多种因素干扰导致一定时间间隔内未接收到服务端的通知消息时,可以认为请求失败,并取消生效的第二操作。并且,第二请求中也可以包含第一操作序号,能够在频繁发送第二请求时,使服务端将排序最后的第二请求转发至目标客户端,从而可以保证多端最终操作的一致性,以避免频繁请求导致的时序错误的情况。
此外,本公开实施例提供的对象的操作方法与上述实施例提供的对象的操作方法属于同一公开构思,未在本实施例中详尽描述的技术细节可参见上述实施例,并且相同的技术特征在本实施例与上述实施例中具有相同的有益效果。
本公开实施例与上述实施例中所提供的对象的操作方法中多个实施例可以结合。本实施例所提供的对象的操作方法,细化了频繁接收针对同一目标对象的通知消息时的对象操作步骤。通过在服务端内维护第二操作序号,并使通知消息携带该第二操作序号,能够在频繁接收通知消息时,第一客户端可以根据对目标对象执行操作,从而可以保证多端最终操作的一致性,以避免频繁接收通知消息导致的时序错误的情况。
在一实施例中,通知消息中包含服务端内的第二操作序号。
其中,第二操作序号可以指站在服务端角度上来讲,客户端对其内部的第一对象执行第一操作的全局操作的排列顺序。其中,第二操作序号可以由服务端根据客户端上报的生效消息进行增序维护。通过在服务端内维护第二操作序号,并使通知消息中携带第二序号,能够保证通信范围内多个客户端根据通知消息执行的操作可全局有序。
若针对同一目标对象的至少两条通知消息中每相邻两条的下发时间间隔小于第五时间间隔,则方法还包括:根据至少两条通知消息中第二操作序号排序最后的通知消息,对目标对象执行操作。
在对象的操作方法应用过程中,由于通信阻塞、服务端异常等多种因素影响,可能导致阻塞的通知消息一并下发的情况。在这些实施例中,通信范围内的任一客户端接收到服务器下发的通知消息后,可以根据通知消息中待操作客户端中第一对象的标识确定该通知消息对应的目标对象。当客户端接收到多条针对同一目标对象的通知消息时,若每相邻两条的下发时间间隔小于第五时间间隔,则可以认为出现阻塞消息一并下发的情况。其中,第五时间间隔可以根据经验值或实验值进行预先设置。
此时,客户端可根据至少两条通知消息中第二操作序号排序最后的通知消息,确定待操作客户端中第一操作的标识。并且,可根据该待操作客户端中第一操作的标识对目标对象执行对应操作。从而可以保证多端最终操作的一致性,以避免频繁接收通知消息导致的时序错误的情况。
示例性的,图9为本公开实施例所提供的一种对象的操作方法中连续接收通知消息的信令示意图。参见图9,第一客户端(图中的客户端1)可以为通信范围内的任一客户端,且可以通过服务端与第二客户端进行通信。客户端1可以接收服务端下发的通知消息,且可以根据通知消息中待操作客户端中第一对象 的标识确定该通知消息对应的目标对象。
图9中客户端1接收了三条皆针对同一目标对象的通知消息,每相邻两条的下发时间间隔小于第五时间间隔,且分别携带的第二操作序号为1001、2001和3001,则客户端1可以保序丢弃第二操作序号为1001和2001的通知消息,根据第二操作序号为3001的通知消息对目标对象执行操作,从而可保证多端最终操作的一致性。
此外,为实现本公开实施例提供的对象的操作方法,可以基于C++等编程语言预先定义多功能接口。其中,接口例如可以包括客户端操作行为的接口、操作效果消息的接口、通知消息的接口等。
示例性的,客户端操作行为的接口(operation)中可以定义有下述至少一个字段:字符串型的通信范围(例如聊天室标识room_id)、长整型的第一操作序号(op_id)、整型的预设事件(op_type,例如数字1可表示接收本端输入的操作指令,数字2可表示针对第一请求反馈消息等)、整型的第一操作的业务类型(business_type,例如数字1可表示对用户视频中面部使用道具等)、字典型的具体业务数据(data)、字符串型的目标用户(to_user_id)、整型的第一请求反馈消息(reply_result,例如数字0和1分别表示对第一请求反馈同意消息和拒绝消息)和长整型的反馈消息的第一请求(reply_op_id,可表示反馈的消息所对应的第一请求)。其中,通过定义business_type进行具体业务的判断和区分,且业务数据在具体的data中传递,由对应的业务来理解使用,能够使接口operation本身无需关心具体的业务,支持业务的可扩展性。
示例性的,操作效果信息的接口(apply Effect Message)可以定义有下述至少一个字段:整型的操作类型(type,例如数字1可表示主动使用道具,数字2可表示请求目标客户端使用道具)和字符串型的效果标识(effect_id,例如可为道具标识)。
示例性的,通知消息的接口(operation Notify)可以定义有下述至少一个字段:长整型的第一操作序号(op_id)、长整型的第二操作序号(version)、整型的预设事件(op_type)、整型的第一操作的业务类型(business_type)、字典型的具体业务数据(data)、来源用户标识(from_user_id)、整型的第一请求反馈消息(reply_result)和长整型的反馈消息的第一请求(reply_op_id)和字符串型的通信范围(例如room_id)等。其中,未具体描述的字段可参考上述接口的字段。
本公开实施例的技术方案,细化了频繁接收针对同一目标对象的通知消息时的对象操作步骤。通过在服务端内维护第二操作序号,并使通知消息携带该第二操作序号,能够在频繁接收通知消息时,第一客户端可以根据对目标对象执行操作,从而可以保证多端最终操作的一致性,以避免频繁接收通知消息导致的时序错误的情况。本公开实施例提供的对象的操作方法与上述实施例提供的对象的操作方法属于同一公开构思,未在本实施例中详尽描述的技术细节可参见上述实施例,并且相同的技术特征在本实施例与上述实施例中具有相同的有益效果。
图10为本公开实施例所提供的一种对象的操作装置的结构示意图。本实施例提供的对象的操作装置适用于多客户端对同一对象进行互斥操作的情形,例如多媒体通信过程中多客户端对某一客户端的多媒体数据添加特效的情形。
如图10所示,本实施例提供的对象的操作装置,集成于第一客户端,可以包括:
操作模块1010,设置为响应于预设事件,对第一客户端的第一对象执行第一操作;
生效消息上报模块1020,设置为于第一操作执行生效时向服务端上报生效消息,以触发服务端生成通知消息,并将通知消息下发至第一客户端以及至少一个与第一客户端进行实时通信的第二客户端,以使第一客户端保持生效的第一操作,以及使第二客户端对第一对象执行第一操作。
在一实施例中,操作模块1010,还可设置为:
若从上报生效消息的时刻起,在第一时间间隔内未接收到服务端下发的与生效消息对应的通知消息,则提示操作失败消息,并取消生效的第一操作。
在一实施例中,预设事件,可包括下述至少一项:
接收输入至第一客户端的操作指令;
针对任一第二客户端发送的第一请求,反馈同意消息;第一请求表征对第一对象执行第一操作的请求。
在一实施例中,生效消息中可包含第一客户端内的第一操作序号;
生效消息上报模块1020还可设置为:若至少两条生效消息中每相邻两条的上报时间间隔小于第二时间间隔,则触发服务端根据至少两条生效消息中第一操作序号排序最后的生效消息生成通知消息。
在一实施例中,操作模块1010,还可以设置为:
从第二客户端中确定目标客户端;
向目标客户端发送第二请求,以使目标客户端针对第二请求反馈同意消息时,对属于目标客户端的第二对象执行第二操作;其中,第二请求表征对第二对象执行第二操作的请求。
在一实施例中,操作模块1010,还可以设置为:
在向目标客户端发送第二请求之后,根据第二请求,对第二对象执行第二操作;
若从发送第二请求的时刻起,在第三时间间隔内接收到服务端下发的与第二请求对应的通知消息,则提示请求成功消息,并保持生效的第二操作;
若从发送第二请求的时刻起,在第三时间间隔内未接收到服务端下发的与第二请求对应的通知消息,则提示请求失败消息,并取消生效的第二操作。
在一实施例中,第二请求中包含第一客户端内的第一操作序号;
操作模块1010,还可以设置为:若至少两条第二请求中每相邻两条的发送时间间隔小于第四时间间隔,则通过服务端将至少两条第二请求中第一操作序号排序最后的第二请求转发至目标客户端。
在一实施例中,通知消息中包含服务端内的第二操作序号;
操作模块1010还可以设置为:若针对同一目标对象的至少两条通知消息中每相邻两条的下发时间间隔小于第五时间间隔,则根据至少两条通知消息中第二操作序号排序最后的通知消息,对目标对象执行操作。
在一实施例中,第一客户端和第二客户端可以为多媒体通信客户端;第一对象包括多媒体数据,第一操作包括添加特效操作。
本公开实施例所提供的对象的操作装置,可执行本公开任意实施例所提供的对象的操作方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述装置所包括的多个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,多个功能单元的具体名称也只是为了便于相互区分,并不用于限制本公开实施例的保护范围。
下面参考图11,其示出了适于用来实现本公开实施例的电子设备(例如图11中的终端设备或服务器)1100的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图11示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图11所示,电子设备1100可以包括处理装置(例如中央处理器、图形处理器等)1101,其可以根据存储在只读存储器(Read-Only Memory,ROM)1102中的程序或者从存储装置1106加载到随机访问存储器(Random Access Memory,RAM)1103中的程序而执行多种适当的动作和处理。在RAM 1103中,还存储有电子设备1100操作所需的多种程序和数据。处理装置1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
通常,以下装置可以连接至I/O接口1105:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1106;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置1107;包括例如磁带、硬盘等的存储装置1108;以及通信装置1109。通信装置1109可以允许电子设备1100与其他设备进行无线或有线通信以交换数据。虽然图11示出了具有多种装置的电子设备1100,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置1109从网络上被下载和安装,或者从存储装置1106被安装,或者从ROM1102被安装。在该计算机程序被处理装置1101执行时,执行本公开实施例的对象的操作方法中限定的上述功能。
本公开实施例提供的电子设备与上述实施例提供的对象的操作方法属于同一公开构思,未在本实施例中详尽描述的技术细节可参见上述实施例,并且本实施例与上述实施例具有相同的有益效果。
本公开实施例提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述实施例所提供的对象的操作方法。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read-Only Memory,EPROM)或闪存(FLASH)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(Hyper Text Transfer Protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
响应于预设事件,对第一客户端的第一对象执行第一操作;于第一操作执行生效时向服务端上报生效消息,以触发服务端生成通知消息,并将通知消息下发至第一客户端以及至少一个与第一客户端进行实时通信的第二客户端,以使第一客户端保持生效的第一操作,以及使第二客户端对第一对象执行第一操作。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开多种实施例的方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元、模块的名称在某种情况下并不构成对该单元、模块本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(Field Programmable Gate Array,FPGA)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用标准产品(Application Specific Standard Parts,ASSP)、片上系统(System on Chip,SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行装置或设备使用或与指令执行装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便 携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
根据本公开的一个或多个实施例,【示例一】提供了一种对象的操作方法,应用于第一客户端,该方法包括:
响应于预设事件,对属于当前所述第一客户端展示的第一对象执行第一操作,其中,所述第一对象与第一客户端或与所述第一客户端进行实时通信的一个第二客户端相关联;
于所述第一操作执行生效时向服务端上报生效消息,以触发所述服务端生成通知消息,并将所述通知消息下发至所述当前客户端所属通信范围内的所述第一客户端以及至少一个与所述第一客户端进行实时通信的第二客户端,以使所述当前第一客户端保持生效的所述第一操作,以及使所述通信范围内除所述当前客户端外的其他第二客户端对所述第一对象执行所述第一操作。
根据本公开的一个或多个实施例,【示例二】提供了一种对象的操作方法,还包括:
若从上报所述生效消息的时刻起,在第一时间间隔内未接收到所述服务端下发的与所述生效消息对应的通知消息,则提示操作失败消息,并取消生效的所述第一操作。
根据本公开的一个或多个实施例,【示例三】提供了一种对象的操作方法,其中,所述预设事件,包括下述至少一项:
接收输入至所述第一客户端的操作指令;
针对任一所述第二客户端发送的第一请求,反馈同意消息;所述第一请求表征对所述第一对象执行所述第一操作的请求。
根据本公开的一个或多个实施例,【示例四】提供了一种对象的操作方法,其中,所述生效消息中包含所述第一客户端内的第一操作序号;
若至少两条所述生效消息中每相邻两条的上报时间间隔小于第二时间间隔,则所述以触发所述服务端生成通知消息,包括:
以触发所述服务端根据至少两条所述生效消息中所述第一操作序号排序最后的生效消息生成通知消息。
根据本公开的一个或多个实施例,【示例五】提供了一种对象的操作方法,还包括:
从所述第二客户端中确定目标客户端;
向所述目标客户端发送第二请求,以使所述目标客户端针对所述第二请求反馈同意消息时,对所述目标客户端的第二对象执行第二操作;
所述第二请求表征对所述第二对象执行所述第二操作的请求。
根据本公开的一个或多个实施例,【示例六】提供了一种对象的操作方法,在所述向所述目标客户端发送第二请求之后,还包括:
根据所述第二请求,对所述第二对象执行第二操作;
若从发送第二请求的时刻起,在第三时间间隔内接收到所述服务端下发的与所述第二请求对应的通知消息,则提示请求成功消息,并保持生效的所述第二操作;
若从发送第二请求的时刻起,在第三时间间隔内未接收到所述服务端下发的与所述第二请求对应的通知消息,则提示请求失败消息,并取消生效的所述第二操作。
根据本公开的一个或多个实施例,【示例七】提供了一种对象的操作方法,其中,所述第二请求中包含所述第一客户端内的第一操作序号;
若至少两条所述第二请求中每相邻两条的发送时间间隔小于第四时间间隔,则所述向所述目标客户端发送第二请求,包括:
通过所述服务端将至少两条所述第二请求中所述第一操作序号排序最后的第二请求转发至所述目标客户端。
根据本公开的一个或多个实施例,【示例八】提供了一种对象的操作方法,其中,所述通知消息中包含所述服务端内的第二操作序号;
若针对同一目标对象的至少两条所述通知消息中每相邻两条的下发时间间隔小于第五时间间隔,则所述方法还包括:
根据至少两条所述通知消息中所述第二操作序号排序最后的通知消息,对所述目标对象执行操作。
根据本公开的一个或多个实施例,【示例九】提供了一种对象的操作方法,其中,所述第一客户端和所述第二客户端为多媒体通信客户端;所述第一对象包括多媒体数据,所述第一操作包括添加特效操作。
此外,虽然采用特定次序描绘了多种操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的多种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。

Claims (12)

  1. 一种对象的操作方法,应用于第一客户端,包括:
    响应于预设事件,对所述第一客户端的第一对象执行第一操作;
    于所述第一操作执行生效时向服务端上报生效消息,以触发所述服务端生成通知消息,并将所述通知消息下发至所述第一客户端以及至少一个与所述第一客户端进行实时通信的第二客户端,以使所述第一客户端保持生效的所述第一操作,以及使至少一个所述第二客户端对所述第一对象执行所述第一操作。
  2. 根据权利要求1所述的方法,还包括:
    响应于确定从上报所述生效消息的时刻起,在第一时间间隔内未接收到所述服务端下发的与所述生效消息对应的通知消息,提示操作失败消息,并取消生效的所述第一操作。
  3. 根据权利要求1所述的方法,其中,所述预设事件,包括下述至少一项:
    接收输入至所述第一客户端的操作指令;
    针对任一所述第二客户端发送的第一请求,反馈同意消息;其中,所述第一请求表征对所述第一对象执行所述第一操作的请求。
  4. 根据权利要求1所述的方法,其中,所述生效消息中包含所述第一客户端内的第一操作序号;
    响应于确定至少两条所述生效消息中每相邻两条的上报时间间隔小于第二时间间隔,所述以触发所述服务端生成通知消息,包括:
    以触发所述服务端根据至少两条所述生效消息中所述第一操作序号排序最后的生效消息生成通知消息。
  5. 根据权利要求1所述的方法,还包括:
    从至少一个所述第二客户端中确定目标客户端;
    向所述目标客户端发送第二请求,以使所述目标客户端针对所述第二请求反馈同意消息时,对所述目标客户端的第二对象执行第二操作;其中,所述第二请求表征对所述第二对象执行所述第二操作的请求。
  6. 根据权利要求5所述的方法,在所述向所述目标客户端发送第二请求之后,还包括:
    根据所述第二请求,对所述第二对象执行第二操作;
    响应于确定从发送所述第二请求的时刻起,在第三时间间隔内接收到所述服务端下发的与所述第二请求对应的通知消息,提示请求成功消息,并保持生效的所述第二操作;
    响应于确定从发送所述第二请求的时刻起,在所述第三时间间隔内未接收到所述服务端下发的与所述第二请求对应的通知消息,提示请求失败消息,并取消生效的所述第二操作。
  7. 根据权利要求5所述的方法,其中,所述第二请求中包含所述第一客户端内的第一操作序号;
    响应于确定至少两条所述第二请求中每相邻两条的发送时间间隔小于第四时间间隔,所述向所述目标客户端发送第二请求,包括:
    通过所述服务端将至少两条所述第二请求中所述第一操作序号排序最后的第二请求转发至所述目标客户端。
  8. 根据权利要求1所述的方法,其中,所述通知消息中包含所述服务端内的第二操作序号;
    响应于确定针对同一目标对象的至少两条所述通知消息中每相邻两条的下发时间间隔小于第五时间间隔,所述方法还包括:
    根据至少两条所述通知消息中所述第二操作序号排序最后的通知消息,对所述目标对象执行操作。
  9. 根据权利要求1-8中任一所述的方法,其中,所述第一客户端和所述第二客户端分别为多媒体通信客户端;所述第一对象包括多媒体数据,所述第一操作包括添加特效操作。
  10. 一种对象的操作装置,集成于第一客户端,包括:
    操作模块,设置为响应于预设事件,对所述第一客户端的第一对象执行第一操作;
    生效消息上报模块,设置为于所述第一操作执行生效时向服务端上报生效消息,以触发所述服务端生成通知消息,并将所述通知消息下发至所述第一客户端以及至少一个与所述第一客户端进行实时通信的第二客户端,以使所述第一客户端保持生效的所述第一操作,以及使至少一个所述第二客户端对所述第一对象执行所述第一操作。
  11. 一种电子设备,包括:
    一个或多个处理器;
    存储装置,设置为存储一个或多个程序,
    当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-9中任一所述的对象的操作方法。
  12. 一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-9中任一所述的对象的操作方法。
PCT/CN2023/075109 2022-02-16 2023-02-09 一种对象的操作方法、装置、电子设备及存储介质 WO2023155725A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210140943.9 2022-02-16
CN202210140943.9A CN116647528A (zh) 2022-02-16 2022-02-16 一种对象的操作方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
WO2023155725A1 true WO2023155725A1 (zh) 2023-08-24

Family

ID=87577569

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/075109 WO2023155725A1 (zh) 2022-02-16 2023-02-09 一种对象的操作方法、装置、电子设备及存储介质

Country Status (2)

Country Link
CN (1) CN116647528A (zh)
WO (1) WO2023155725A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163118A (zh) * 2007-11-30 2008-04-16 腾讯科技(深圳)有限公司 一种多个im用户实时共享对象的方法和装置
US20140201289A1 (en) * 2013-01-14 2014-07-17 Dropbox Inc. Notification feed across multiple client devices
CN110639206A (zh) * 2019-09-20 2020-01-03 北京代码乾坤科技有限公司 游戏数据同步方法、装置、存储介质及处理器
CN113163483A (zh) * 2021-04-19 2021-07-23 北京字节跳动网络技术有限公司 时间戳更新方法、装置和电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163118A (zh) * 2007-11-30 2008-04-16 腾讯科技(深圳)有限公司 一种多个im用户实时共享对象的方法和装置
US20140201289A1 (en) * 2013-01-14 2014-07-17 Dropbox Inc. Notification feed across multiple client devices
CN110639206A (zh) * 2019-09-20 2020-01-03 北京代码乾坤科技有限公司 游戏数据同步方法、装置、存储介质及处理器
CN113163483A (zh) * 2021-04-19 2021-07-23 北京字节跳动网络技术有限公司 时间戳更新方法、装置和电子设备

Also Published As

Publication number Publication date
CN116647528A (zh) 2023-08-25

Similar Documents

Publication Publication Date Title
US20220200940A1 (en) Information interaction method and apparatus, server, system and storage medium
US20200228579A1 (en) Parallel peer to peer connection establishment in webrtc conferencing
JP2022502807A (ja) 絵文字応答表示方法、装置、端末機器及びサーバ
US11960709B2 (en) Method and apparatus for displaying active friend information, electronic device, and storage medium
JP2018508051A (ja) メッセンジャーサービスにおいてのグループアイコン構成方法及びそのための装置
CN112312060B (zh) 屏幕共享方法、装置和电子设备
EP3836484B1 (en) Method for transmitting live message, apparatus, electronic device, medium and computer program product
US11474662B2 (en) Information processing method, information processing apparatus, and information processing program
CN109802961B (zh) 界面管理方法、装置、电子设备以及存储介质
WO2022007553A1 (zh) 建立多媒体通话的方法、装置和电子设备
WO2022083379A1 (zh) 连接处理方法、装置、电子设备及计算机可读存储介质
US20240119969A1 (en) Video processing method and apparatus, electronic device and storage medium
US10778736B2 (en) On demand in-band signaling for conferences
WO2023109665A1 (zh) 内容展示方法、装置、设备及存储介质
CN113420338B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN109446204B (zh) 一种即时通信的数据存储方法、装置、电子设备和介质
CN111580922A (zh) 应用程序的互动消息展示方法、装置及可读存储介质
CN110489244A (zh) 信息处理方法、系统、装置和计算机可读存储介质
WO2023155725A1 (zh) 一种对象的操作方法、装置、电子设备及存储介质
WO2022143857A1 (zh) 视频通话方法、装置、电子设备和存储介质
CN111818293B (zh) 通信方法、装置和电子设备
CN112291216B (zh) 通信方法、装置和电子设备
CN112637540A (zh) 多客户端的音视频通话连接方法、装置、设备及存储介质
WO2024000605A1 (zh) 一种ai模型推理的方法及其装置
JP7509998B2 (ja) 画面共有方法、装置及び電子機器

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23755728

Country of ref document: EP

Kind code of ref document: A1