WO2017121180A1 - Multi-screen interaction method, device, server and non-transitory machine-readable storage medium - Google Patents

Multi-screen interaction method, device, server and non-transitory machine-readable storage medium Download PDF

Info

Publication number
WO2017121180A1
WO2017121180A1 PCT/CN2016/105454 CN2016105454W WO2017121180A1 WO 2017121180 A1 WO2017121180 A1 WO 2017121180A1 CN 2016105454 W CN2016105454 W CN 2016105454W WO 2017121180 A1 WO2017121180 A1 WO 2017121180A1
Authority
WO
WIPO (PCT)
Prior art keywords
client
data
instruction
communication link
link
Prior art date
Application number
PCT/CN2016/105454
Other languages
French (fr)
Chinese (zh)
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 WO2017121180A1 publication Critical patent/WO2017121180A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay

Definitions

  • the present invention relates to the field of the Internet, and in particular to a method, apparatus, server, and non-transitory machine readable storage medium for multi-screen interaction.
  • the prior art can screen the content displayed on the display screen of the mobile phone to a television or a computer screen.
  • Screening is what is displayed on the display of the terminal that actively shares, and what is displayed on the screen of the terminal that accepts sharing, the essence of which is the operation of the terminal actively sharing, and the content displayed on the screen of the terminal that accepts the sharing. It is just a mapping of the screen of the terminal that actively shares.
  • the screen of the terminal accepting the sharing is only a display device of the actively shared terminal, and the terminal accepting the sharing cannot operate the displayed interface.
  • the video played by the browser on the mobile phone is projected onto the television, and the mobile phone operates to play or pause the video, and the video can only display the playback or pause state of the video, and cannot control the playback or pause of the video.
  • the embodiments of the present invention provide a method, an apparatus, a server, and a non-transitory machine-readable storage medium for multi-screen interaction, so as to at least solve the technical problem that the terminal that accepts sharing cannot operate on the content shared by the actively shared terminal.
  • a method for multi-screen interaction including: acquiring, by a first client, first data of a second client, where the first data is used to instruct the second client to perform the first operation
  • the first client performs the first operation indicated by the first data.
  • a method for multi-screen interaction includes: acquiring first data of a second client; the server forwarding the first data to a first client, so that The first client performs a first operation indicated by the first data.
  • an apparatus for multi-screen interaction including: an obtaining unit, configured to acquire first data sent by the second client to the first client, where the A data is used to instruct the second client to perform a first operation; and an execution unit is configured to execute the first operation indicated by the first data.
  • a server including: a data acquiring unit, configured to acquire first data of a second client, and a forwarding unit, configured to forward the first data to the first client Ending, so that the first client performs the first operation indicated by the first data.
  • a non-transitory machine readable storage medium having stored thereon executable code that, when executed by a processor, causes the processor to perform the above The multi-screen interactive approach.
  • the first client acquires the first data of the second client, where the first data is used to instruct the second client to perform the first operation; the first client performs the The first operation indicated by the first data, each client is subordinate to the terminal where the client is located, and while receiving the content shared by the other client, the terminal can be controlled by the terminal where the client is located, essentially It is a separate control of the two clients, which solves the technical problem that the terminal that accepts sharing cannot operate on the content shared by the actively shared terminal, and achieves the technology that the terminal that accepts sharing can operate on the content shared by the actively shared terminal. effect.
  • FIG. 1 is a structural diagram of a hardware environment according to an embodiment of the present invention.
  • FIG. 2 is a flow chart of a method of multi-screen interaction according to Embodiment 1 of the present invention.
  • FIG. 3 is a flow chart of a method for multi-screen interaction according to Embodiment 2 of the present invention.
  • FIG. 4 is a schematic diagram of a bidirectional link between a client and a server according to an embodiment of the present invention
  • FIG. 5 is a schematic diagram of the same link pool stored in a server by a link of the same account according to an embodiment of the present invention
  • FIG. 7 is a schematic diagram of an apparatus for multi-screen interaction in accordance with an embodiment of the present invention.
  • Figure 8 is a schematic illustration of a server in accordance with an embodiment of the present invention.
  • an embodiment of a method of multi-screen interaction is also provided, it being noted that the steps illustrated in the flowchart of the figures may be performed in a computer system such as a set of computer executable instructions. Also, although logical sequences are shown in the flowcharts, in some cases the steps shown or described may be performed in a different order than the ones described herein.
  • the method for multi-screen interaction described above may be applied to a hardware environment formed by the terminal (including the terminal 1022, the terminal 1024, and the terminal 1026) and the server 104 as shown in FIG. 1.
  • the terminal is connected to the server 104 through a network, and the terminal is provided with a client.
  • the network includes but is not limited to: a mobile communication network, a wide area network, a metropolitan area network, or a local area network.
  • the terminal may be a mobile terminal, or may be PC terminal, notebook terminal, tablet terminal or television terminal.
  • the server 104 described above includes a pool of links that store communication links for clients on multiple terminals.
  • the main working principle of the hardware environment system shown in FIG. 1 is: terminal 1022 (mobile phone),
  • the respective communication links of the terminal 1024 (computer) and the terminal 1026 (television) are stored in the same link pool of the server 104.
  • the server can receive the received data. Forward to the other two terminals.
  • the terminal 1022 performs the first operation and transmits the first data to the server 104
  • the server 104 forwards the first data to the terminal 1024 and the terminal 1026
  • the terminal 1024 and the terminal 1026 also perform the first operation after receiving the first data.
  • the terminal 1024 can also send the second data generated by the second operation performed by the terminal 1024 to the server 104.
  • the server 104 forwards the second data to the terminal 1022 and the terminal 1026, the second operation is performed, thereby causing the three terminals. It is also possible to control other terminals to perform the same action in the case of realizing their own actions.
  • the server 104 described above may be a device provided on the terminal, and can implement the functions of the server.
  • the present application provides a method for multi-screen interaction as shown in FIG. 2, which can be executed in a client on a certain terminal.
  • 2 is a flow chart of a method of multi-screen interaction in accordance with Embodiment 1 of the present invention.
  • step S202 the first client acquires the first data of the second client, where the first data is used to instruct the second client to perform the first operation.
  • step S204 the first client executes the first operation indicated by the first data.
  • the first client may be a client set on any one of the hardware environments shown in FIG. 1.
  • the first client and the second client are on different terminals and belong to the same client.
  • the first client and the second client can perform the same function.
  • the first client and the second client can be browsers respectively installed on a mobile phone, a computer, and a television.
  • the first data may be data corresponding to the action performed by the second client, for example, data corresponding to the action of opening the webpage, data corresponding to the action of inputting the search content in the search bar, and the like.
  • the first data is received by the first client, and the first client performs the first operation indicated by the first data, so that the first client and the second client perform the same action, and the display is performed on different clients.
  • the first data can be forwarded by the server to the first client.
  • the server can be a device set on a terminal that can store and forward data.
  • the client on the two terminals is divided. Do not perform the same action to achieve the same content displayed on the two terminals.
  • Each client is subordinate to the terminal it is in.
  • Control is essentially the separate control of the two clients, which solves the technical problem that the terminal that accepts the sharing cannot operate on the content shared by the actively shared terminal, and achieves the content that the terminal that accepts sharing can share with the actively shared terminal. The technical effect of the operation.
  • each client can be controlled according to the characteristics of the terminal in which it is located, thereby improving the convenience of controlling the client.
  • the mobile phone is equivalent to a touch screen of the computer.
  • searching use the computer to enter keywords.
  • the results of the search can be browsed by sliding the phone/pad. Since the sliding on the mobile phone/pad also acts on the computer, the search result on the computer also moves with the sliding on the mobile phone/pad, so the search result can also be browsed from the computer.
  • Multi-screen interaction can combine the convenience of the large screen and input of the computer with the ease of use of the mobile phone/pad operation, which improves the convenience of operation.
  • the first client is a video player on the TV
  • the second client is a video player on the mobile phone
  • the communication link between the video player on the TV and the video player on the mobile phone is stored in the same link pool of the server. in.
  • the video player on the mobile phone performs the action of “playing A video” (ie, the first operation)
  • the video is played.
  • the video player on the mobile phone generates an action of "playing A video" as the first data, and sends the first instruction to the server.
  • the server forwards the first data received by the communication link of the video player on the mobile phone to other communication links in the same link pool, wherein one communication link is a communication link of the video player on the television, thereby the television
  • the video player on the top can receive the first data.
  • the video player on the TV acquires the "Play A Video” action corresponding to the first data, and then plays the video of the video player on the TV.
  • the first operation indicated by the first client to execute the first data includes: the first guest The client parses the execution code and the execution object from the first data, wherein the operation performed on the execution object by the execution code is the first operation; the first client operates the execution object by using the execution code.
  • the execution code is a unified execution code that each client can recognize, and each execution code corresponds to an action, and the execution object may be an object that acts on the action corresponding to the execution code, and when the execution code operates on the execution object,
  • the first operation is obtained, that is, the first operation includes performing an action corresponding to the code and an object corresponding to the execution object. Then, the client invokes the execution code to perform an operation on the execution object, and the first operation is implemented.
  • the first client is a video player on the TV and the second client is a video player on the phone.
  • the video player on the mobile phone generates the first data according to "Play A Video”.
  • the execution code is "play” and the execution object is "A video”, and the video player on the television performs the operation of playing the A video.
  • the first client may perform a corresponding first operation according to the first data sent by the second client, and the first client may also perform a corresponding action according to the instruction received by the first client. For example, a video player on a television receives a "pause" signal from the remote control and pauses playback of the A video.
  • the first client can perform the same operation according to the first data sent by the second client, and can also perform its own control separately, without being controlled by the second client, in the first client and the second. While the client displays the same content, it can also be individually controlled, thereby improving the flexibility of control of the first client and the second client.
  • the method further includes: determining, by the first client, whether the first instruction and the second instruction are received, where the first instruction is used to indicate that the first instruction is allowed
  • the client sends the second data to the second client, where the second command is used to indicate that the first client is not allowed to send the second data to the second client, and the second data is used to indicate that the first client performs the second operation; And if the first client determines that the first instruction is received, monitoring the first data and the second operation performed by the first client, wherein, when the second operation is detected, generating the second data and reporting to the second client
  • the second data is sent to enable the second client to perform the second operation; if the first client determines that the second command is received, the first data sent by the second client is monitored.
  • the first instruction and the second instruction may be a function on the first client, for example, the first instruction is a screen sharing and the second instruction is a follow-up browsing.
  • the first client may not only receive the first data of the second client to perform the first operation, but also The second operation performed is sent to the second client, thereby controlling the second client to perform the second operation;
  • the second instruction of the first client is triggered, the first client can only send the second client
  • the first data is responsive to perform the first operation, and the second client does not send the second data to the second client even if the first client performs the second operation, and does not control the second client to perform the second operation.
  • the user can turn on the following browsing function of the first client and follow the browsing of the friend. That is, what content is displayed by the second client of the friend, what action is performed, the corresponding content is displayed on the first client, and the corresponding action is performed.
  • the friend is a friend in the first client, requests the second client to follow the browsing, and if the second client agrees, receives the first data of the second client.
  • the first client In the process of following the browsing, the first client only receives the first data of the second client, and performs the first operation corresponding to the first data. It should be noted that, whether it is following browsing or screen sharing, the first client only receives the first operation, and does not obtain the execution result after performing the first operation from the second client, which is equivalent to each client. They all execute their own logic independently, indicating that the received instruction is obtained from another client, not from the terminal it is on. For example, when the first operation is to open www.aaaa.com, the first client requests the content of www.aaaa.com from the server of www.aaa.com instead of obtaining www.aaaa.com from the second client. Content.
  • the first client can perform the first operation corresponding to the first data sent by the second client, and can also perform the second operation performed by the terminal where the first client is located, and then, when In the second operation, the second data is generated, and the second data is sent to the second client, so that the second client also performs the second operation. Since the action performed by the first client is performed on the second client, the action performed by the second client is also executed on the first client, and the synchronization between the first client and the second client is implemented. On this basis, The first client executes the action performed by the second client, the second client performs the action performed by the first client, and the actions performed by the first client and the second client are not caused by the two clients.
  • the confusion of the display content solves the technical problem that the receiving terminal cannot operate the content shared by the actively shared terminal, and at the same time ensures that the two clients display and run normally.
  • generating the second data and sending the second data to the second client includes: the first client acquiring the execution code of the second operation and the execution object; the first client The execution code and the execution object are encapsulated into second data, wherein the execution code can be The second client executes, and the execution object can be operated by the second client by executing the code.
  • the video player on the mobile phone converts the "play” action into an execution code (such as 0001). Convert “A video” to an execution object (such as the name of the A video), and package the “play” action together with "A video” as the second data, and send it to the second client.
  • an execution code such as 0001
  • the process of generating the second data by the second client is similar to the process of generating the first data by the first client, and the first client and the second client adopt the same execution code and corresponding actions.
  • the process of obtaining the second operation from the second data is similar to the process of obtaining the first operation from the first data by the first client.
  • the first operation indicated by the first client to execute the first data includes: at least one operation indicated by the first client executing the first data includes: opening a window, opening a page, scrolling a page, inputting text , change focus, play and pause.
  • the second operation performed by the first client may also be any one or more of the foregoing first operations. Open the window, open the web page, scroll the page, etc. can be used in the browser (the first client or the second client), the play and pause can be applied in the video player, and the actions corresponding to other applications can also be used as the first operation. Executed in the corresponding application, not listed here.
  • the first client splits the first operation into a combination of multiple actions, and sequentially performs multiple actions, thereby completing the completeness.
  • the first operation If the first operation is complicated, not only needs to change the focus, but also input text, and also performs selection, then the first client splits the first operation into a combination of multiple actions, and sequentially performs multiple actions, thereby completing the completeness. The first operation.
  • the above multi-screen interaction method can also be used to push advertisements.
  • the second client performs an action of opening the advertisement A (ie, the first operation)
  • the server sends an action of opening the advertisement A to the first client
  • the first client also performs an action of opening the advertisement A, thereby Realized the push of advertising.
  • the two clients on the two terminals can perform the actions performed by the other party, and can also receive the control of the terminal where the client is located. Therefore, the terminal that accepts the sharing cannot solve the terminal that is actively shared. The technical problem of the shared content being operated, and the technical effect that the terminal that accepts sharing can operate on the content shared by the actively shared terminal is obtained.
  • the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware, but in many cases, the former is A better implementation.
  • the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk,
  • the optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
  • FIG. 3 is a flowchart of a method of multi-screen interaction according to Embodiment 2 of the present invention.
  • step S302 the first data of the second client is acquired.
  • step S304 the first data is forwarded to the first client, so that the first client performs the first operation indicated by the first data, where the first data is used to instruct the second client to perform the first operation.
  • the first client may be a client set on any one of the hardware environments shown in FIG. 1.
  • the first client and the second client are on different terminals and belong to the same client.
  • the first client and the second client can perform the same functions, for example, browsers installed on mobile phones, computers, and televisions.
  • the first data is forwarded by the server from the second client to the first client.
  • each client computer, mobile, tablet, and TV
  • the data can also receive data sent by the server.
  • Each client in FIG. 4 can be used as the first client or the second client.
  • the server receives the first data in the link of any one client and forwards it to the client corresponding to the other link.
  • the first data may be data corresponding to an action performed by the second client, for example, data corresponding to an action of opening a web page, data corresponding to an action of inputting a search content in the search field, and the like.
  • the first data is received by the first client by the forwarding of the server, and the first client performs the first operation indicated by the first data, so that the first client and the second client perform the same action. It is implemented to display the same content on different clients and perform the same actions.
  • the clients on the two terminals respectively perform the same action to realize two
  • the content displayed on each terminal is the same.
  • Each client belongs to the terminal where it is located.
  • When receiving the content shared by another client it can also be controlled by the terminal where the client is located. In essence, it is two clients.
  • the separate control of the terminal solves the technical problem that the terminal that accepts the sharing cannot operate on the content shared by the actively shared terminal, and achieves the technical effect that the terminal that accepts the sharing can operate the content shared by the actively shared terminal.
  • the server forwarding the first data to the first client includes: the server storing the first communication link of the first client and the second communication link of the at least one second client in the same link pool; the server will pass one The data received by the second communication link is forwarded to the first communication link and the second communication link of the other second client of the at least one second client, wherein the data includes the first data.
  • the server stores the four links shown in FIG. 4 (ie, link A, link B, link C, and link D) in the same link pool, and the computer executes the browser (ie, the first client).
  • the first operation to be executed is translated into the execution code and the execution object (ie, the first data is generated) is sent to the server through the first communication link (ie, link A), and the server will receive the first
  • the data is sent to the browser on the phone, the browser on the tablet, and the browser on the TV (ie the second client and other second clients) via three second communication links (ie, link B, link C, and link D).
  • the browser that obtains the first data translates the first data into execution code and parameters to perform the first operation. Links placed in the same link pool can be subordinate to the same login account user1.
  • the server forwards the first data, it can also carry other data, for example, an advertisement that is pushed to a browser on the mobile phone, a browser on the tablet, and a browser on the television, a browser on the mobile phone, and a browser on the tablet. And the browser on the TV performs the first operation while loading the advertisement pushed by the server.
  • other data for example, an advertisement that is pushed to a browser on the mobile phone, a browser on the tablet, and a browser on the television, a browser on the mobile phone, and a browser on the tablet.
  • the browser on the TV performs the first operation while loading the advertisement pushed by the server.
  • the server storing the first communication link of the first client and the second communication link of the at least one second client in the same link pool includes: determining, by the server, whether the prompt information sent by the first client is received, the prompt information For prompting the first client to receive the first instruction or the second instruction, the first instruction is for indicating that the first client is allowed to send to the at least one second client Sending second data, the second instruction is for indicating that the first client is not allowed to send the second data to the at least one second client, and the second data is used to indicate that the first client performs the second operation; the server determines that the second operation is received After prompting the information, the first communication link of the first client and the second communication link of the at least one second client are stored in the same link pool.
  • the first instruction and the second instruction may be a function on the first client, for example, the first instruction is a screen sharing and the second instruction is a follow-up browsing.
  • the first client may not only receive the first data of the second client to perform the first operation, but also send the second operation performed by the first client to the second client, thereby controlling the first
  • the second client performs the second operation; when the second instruction of the first client is triggered, the first client can only perform the first operation in response to the first data sent by the second client, even if the first client Performing the second operation also does not send the second data to the second client, and does not control the second client to perform the second operation.
  • the user can turn on the following browsing function of the first client and follow the browsing of the friend. That is, what content is displayed by the second client of the friend, what action is performed, the corresponding content is displayed on the first client, and the corresponding action is performed.
  • the friend is a friend in the first client, requests the second client to follow the browsing, and if the second client agrees, receives the first data of the second client.
  • the first client In the process of following the browsing, the first client only receives the first data of the second client, and performs the first operation corresponding to the first data. It should be noted that, whether it is following browsing or screen sharing, the first client only receives the first operation, and does not obtain the execution result after performing the first operation from the second client, which is equivalent to each client. They all execute their own logic independently, indicating that the received instruction is obtained from another client, not from the terminal it is on. For example, when the first operation is to open www.aaaa.com, the first client requests the content of www.aaaa.com from the server of www.aaa.com instead of obtaining www.aaaa.com from the second client. Content.
  • the first client can perform the first operation corresponding to the first data sent by the second client, and can also perform the second operation performed by the terminal where the first client is located, and then, when In the second operation, the second data is generated, and the second data is sent to the second client, so that the second client also performs the second operation. Since the action performed by the first client is performed on the second client, the action performed by the second client is also executed on the first client, and the synchronization between the first client and the second client is implemented. On this basis, The first client executes the second client The actions that have been performed, the actions performed by the second client to execute the first client, and the actions performed by the first client and the second client respectively do not cause confusion of the display content on the two clients, and the acceptance is resolved.
  • the shared terminal cannot solve the technical problem of the content shared by the actively shared terminal, and can also ensure that the two clients display and run normally.
  • the first client and the second client corresponding to the communication link stored in the same link pool are subordinate to the same or different accounts.
  • the clients corresponding to the links in the same link pool belong to the same account, that is, the clients of one user on multiple terminals log in with the same account, then multiple The links established between the client and the server are stored in the same link pool.
  • the client requesting login account 1 (ie, user1) follows the content displayed on the client browsing another login account 2 (ie, user2), and logs in the browser user1 to the browser on the computer.
  • the operation (ie, the first operation) is performed, and the browser on the computer translates the first operation into the execution code and the execution object (ie, the first data), and then sends it to the server through the link A.
  • the server's link pool not only stores the link A, but also stores the link E, the link F, and the link G of the client belonging to the login account 2 (user2), wherein the link E corresponds to the user's computer browser, and the link F corresponds to the user2's mobile browser.
  • the link G corresponds to the TV browser of user2. That is, the clients corresponding to the links in the same link pool belong to different accounts, that is, the links established by the client and the server that are logged in with different accounts are stored in the same link pool by the server. Different accounts may be a friend relationship. Specifically, when the client of the login account 1 requests to follow the content displayed on the client browsing another login account 2, the account 2 may be one of the account 1 on the client.
  • the server stores the link established by the client of the account 1 with the server and the link established by the client of the login account 2 with the server in the same link pool. Based on this, the client of the login account 2 can also implement the action performed by the client of the login account 1 to execute the client of the login account 2.
  • the two clients on the two terminals can perform the actions performed by the other party, and can also receive the control of the terminal where the client is located. Therefore, the terminal that accepts the sharing cannot solve the terminal that is actively shared. The technical problem of the shared content to operate, and the technical effect that the terminal that accepts sharing can operate the content shared by the actively shared terminal fruit.
  • the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware, but in many cases, the former is A better implementation.
  • the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk,
  • the optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
  • the multi-screen interactive device which can perform the multi-screen interaction method of Embodiment 1.
  • the multi-screen interactive device is provided with a first client, and the device includes an acquisition unit 70 and an execution unit 72.
  • the obtaining unit is configured to obtain first data that is sent by the second client to the first client, where the first data is used to indicate that the second client performs the first operation.
  • An execution unit configured to acquire a first operation indicated by the first data, and perform a first operation of obtaining, where the first data is forwarded by the server from the second client to the first client, the first client, and the second The client is the same client set up on a different device terminal.
  • the first client may be a client set on any one of the hardware environments shown in FIG. 1.
  • the first client and the second client are on different terminals and belong to the same client.
  • the first client and the second client can perform the same functions, for example, browsers installed on mobile phones, computers, and televisions.
  • the first data may be data corresponding to an action performed by the second client, for example, data corresponding to an action of opening a web page, data corresponding to an action of inputting a search content in the search field, and the like.
  • Receiving, by the server, the first data is received by the first client, the first client acquires the first operation indicated by the first data, and performs the first operation, so that the first client and the second client The client performs the same action, which enables the same content to be displayed on different clients and performs the same action.
  • the clients on the two terminals respectively perform the same action to realize two
  • the content displayed on each terminal is the same.
  • Each client belongs to the terminal where it is located.
  • When receiving the content shared by another client it can also be controlled by the terminal where the client is located. In essence, it is two clients.
  • the separate control of the terminal solves the technical problem that the terminal that accepts the sharing cannot operate on the content shared by the actively shared terminal, and achieves the technical effect that the terminal that accepts the sharing can operate the content shared by the actively shared terminal.
  • each client can be controlled according to the characteristics of the terminal in which it is located, thereby improving the convenience of controlling the client.
  • the mobile phone is equivalent to a touch screen of the computer.
  • searching use the computer to enter keywords.
  • the results of the search can be viewed by swiping the phone. Since the sliding on the mobile phone also acts on the computer, the search result on the computer also moves with the sliding on the mobile phone, so the search result can also be browsed from the computer.
  • Multi-screen interaction can combine the convenience of the large screen and input of the computer with the ease of use of the mobile phone/pad operation, which improves the convenience of operation.
  • the first client is a video player on the TV
  • the second client is a video player on the mobile phone
  • the communication link between the video player on the TV and the video player on the mobile phone is stored in the same link pool of the server. in.
  • the video player on the mobile phone performs the action of “playing A video” (ie, the first operation)
  • the video is played.
  • the video player on the mobile phone generates an action of "playing A video" as the first data, and sends the first instruction to the server.
  • the server forwards the first data received by the communication link of the video player on the mobile phone to other communications in the same link pool A link, one of which is a communication link of a video player on a television such that a video player on the television can receive the first data.
  • the video player on the TV acquires the "Play A Video” action corresponding to the first data, and then plays the video of the video player on the TV.
  • the execution unit includes: a parsing module, configured to parse the execution code and the execution object from the first data, wherein the operation performed on the execution object by using the execution code is a first operation; and the operation module is configured to utilize the execution code Operate the execution object.
  • the execution code is a unified execution code that each client can recognize, and each execution code corresponds to an action, and the execution object may be an object that acts on the action corresponding to the execution code, and when the execution code operates on the execution object,
  • the first operation is obtained, that is, the first operation includes performing an action corresponding to the code and an object corresponding to the execution object. Then, the client invokes the execution code to perform an operation on the execution object, and the first operation is implemented.
  • the first client is a video player on the TV and the second client is a video player on the phone.
  • the video player on the mobile phone generates the first data according to "Play A Video”.
  • the execution code is "play” and the execution object is "A video”, and the video player on the television performs the operation of playing the A video.
  • the first client may perform a corresponding first operation according to the first data sent by the second client, and the first client may also perform a corresponding action according to the instruction received by the first client. For example, a video player on a television receives a "pause" signal from the remote control and pauses playback of the A video.
  • the first client can perform the same operation according to the first data sent by the second client, and can also perform its own control separately, without being controlled by the second client, in the first client and the second. While the client displays the same content, it can also be individually controlled, thereby improving the flexibility of control of the first client and the second client.
  • the multi-screen interactive device is provided with a first client, and the device includes: a data acquisition unit 80 and a forwarding unit 82.
  • the data obtaining unit 80 is configured to acquire first data of the second client.
  • the forwarding unit 82 is configured to forward the first data to the first client, so that the first client acquires the first operation indicated by the first data, and performs the first operation of the obtaining, where the first data is used to indicate the first
  • the second client performs the first operation, and the first data is forwarded by the server from the second client to
  • the first client, the first client and the second client are the same client set on different device terminals.
  • the first client may be a client set on any one of the hardware environments shown in FIG. 1.
  • the first client and the second client are on different terminals and belong to the same client.
  • the first client and the second client can perform the same functions, for example, browsers installed on mobile phones, computers, and televisions.
  • each client computer, mobile, tablet, and TV
  • the data can also receive data sent by the server.
  • Each client in FIG. 4 can be used as the first client or the second client.
  • the server receives the first data in the link of any one client and forwards it to the client corresponding to the other link.
  • the first data may be data corresponding to the action performed by the second client, for example, data corresponding to the action of opening the webpage, data corresponding to the action of inputting the search content in the search bar, and the like.
  • Receiving, by the server, the first data is received by the first client, the first client acquires the first operation indicated by the first data, and performs the first operation, so that the first client and the second client perform the same
  • the action is to display the same content on different clients and perform the same action.
  • the clients on the two terminals respectively perform the same action to realize two
  • the content displayed on each terminal is the same.
  • Each client belongs to the terminal where it is located.
  • When receiving the content shared by another client it can also be controlled by the terminal where the client is located. In essence, it is two clients.
  • the separate control of the terminal solves the technical problem that the terminal that accepts the sharing cannot operate on the content shared by the actively shared terminal, and achieves the technical effect that the terminal that accepts the sharing can operate the content shared by the actively shared terminal.
  • the forwarding unit includes: a storage module, configured to store the first communication link of the first client and the second communication link of the at least one second client in the same link pool; and the forwarding module is configured to pass the first The data received by the second communication link is forwarded to the first communication link and the second communication link of the other second client of the at least one second client, wherein the received data includes the first data.
  • the server will have four links as shown in Figure 4 (ie, link A, link B, chain). C and link D) are stored in the same link pool, and after the computer performs an operation (ie, the first operation) on the browser (ie, the first client), the first operation performed is translated into the execution code and the execution object (ie, Generating the first data) sent to the server through the first communication link (ie, link A), and the server sends the received first data to the mobile phone through three second communication links (ie, link B, link C, and link D) a browser, a browser on the tablet, and a browser on the television (ie, the second client and the other second client), the browser that obtains the first data translates the first data into execution code and parameters to perform the first An operation.
  • the server will have four links as shown in Figure 4 (ie, link A, link B, chain). C and link D) are stored in the same link pool, and after the computer performs an operation (ie, the first operation) on the browser (ie, the
  • the server forwards the first data, it can also carry other data, for example, an advertisement that is pushed to a browser on the mobile phone, a browser on the tablet, and a browser on the television, a browser on the mobile phone, and a browser on the tablet. And the browser on the TV performs the first operation while loading the advertisement pushed by the server.
  • other data for example, an advertisement that is pushed to a browser on the mobile phone, a browser on the tablet, and a browser on the television, a browser on the mobile phone, and a browser on the tablet.
  • the browser on the TV performs the first operation while loading the advertisement pushed by the server.
  • the storage module includes: a determining submodule, configured to determine whether the prompt information sent by the first client is received, and the prompt information is used to prompt the first client to receive the first instruction or the second instruction, where the first instruction is used Instructing to allow the first client to send the second data to the at least one second client, the second instruction is for indicating that the first client is not allowed to send the second data to the at least one second client, where the second data is used to indicate a client performs a second operation; and the storage submodule is configured to store the first communication link of the first client and the second communication link of the at least one second client in the same link pool after determining that the prompt information is received in.
  • a determining submodule configured to determine whether the prompt information sent by the first client is received, and the prompt information is used to prompt the first client to receive the first instruction or the second instruction, where the first instruction is used Instructing to allow the first client to send the second data to the at least one second client, the second instruction is for indicating that the first client is not allowed to
  • the first instruction and the second instruction may be a function on the first client, for example, the first instruction is a screen sharing and the second instruction is a follow-up browsing.
  • the first client may not only receive the first data of the second client to perform the first operation, but also send the second operation performed by the first client to the second client, thereby controlling the first
  • the second client performs the second operation; when the second instruction of the first client is triggered, the first client can only perform the first operation in response to the first data sent by the second client, even if the first client Performing the second operation also does not send the second data to the second client, and does not control the second client to perform the second operation.
  • the user can turn on the following browsing function of the first client and follow the browsing of the friend. That is, what content is displayed by the second client of the friend, what action is performed, the corresponding content is displayed on the first client, and the corresponding action is performed.
  • the friend is a friend in the first client, requests the second client to follow the browsing, and if the second client agrees, receives the first data of the second client.
  • the first client In the process of following the browsing, the first client only receives the first data of the second client, and performs the first operation corresponding to the first data. It should be noted that, whether it is following browsing or screen sharing, the first client only receives the first operation, and does not obtain the execution result after performing the first operation from the second client, which is equivalent to each client. They all execute their own logic independently, indicating that the received instruction is obtained from another client, not from the terminal it is on. For example, when the first operation is to open www.aaaa.com, the first client requests the content of www.aaaa.com from the server of www.aaa.com instead of obtaining www.aaaa.com from the second client. Content.
  • the first client can perform the first operation corresponding to the first data sent by the second client, and can also perform the second operation performed by the terminal where the first client is located, and then, when In the second operation, the second data is generated, and the second data is sent to the second client, so that the second client also performs the second operation. Since the action performed by the first client is performed on the second client, the action performed by the second client is also executed on the first client, and the synchronization between the first client and the second client is implemented. On this basis, The first client executes the action performed by the second client, the second client performs the action performed by the first client, and the actions performed by the first client and the second client are not caused by the two clients.
  • the confusion of the display content solves the technical problem that the receiving terminal cannot operate the content shared by the actively shared terminal, and at the same time ensures that the two clients display and run normally.
  • the first client and the second client corresponding to the communication link stored in the same link pool are subordinate to the same or different accounts.
  • the clients corresponding to the links in the same link pool belong to the same account, that is, the clients of one user on multiple terminals log in with the same account, then multiple The links established between the client and the server are stored in the same link pool.
  • the client requesting login account 1 (ie, user1) follows the content displayed on the client browsing another login account 2 (ie, user2), and logs in the browser user1 to the browser on the computer.
  • the operation (ie, the first operation) is performed, and the browser on the computer translates the first operation into the execution code and the execution object (ie, the first data), and then sends it to the server through the link A.
  • the server's link pool not only stores link A, but also stores link E, link F, and link G of the client belonging to login account 2 (user2), where link E corresponds to user2's computer browser.
  • the link F corresponds to the mobile browser of user2, and the link G corresponds to the TV browser of user2.
  • the clients corresponding to the links in the same link pool belong to different accounts, that is, the links established by the client and the server that are logged in with different accounts are stored in the same link pool by the server.
  • Different accounts may be a friend relationship. Specifically, when the client of the login account 1 requests to follow the content displayed on the client browsing another login account 2, the account 2 may be one of the account 1 on the client.
  • the server stores the link established by the client of the account 1 with the server and the link established by the client of the login account 2 with the server in the same link pool. Based on this, the client of the login account 2 can also implement the action performed by the client of the login account 1 to execute the client of the login account 2.
  • the two clients on the two terminals can perform the actions performed by the other party, and can also receive the control of the terminal where the client is located. Therefore, the terminal that accepts the sharing cannot solve the terminal that is actively shared. The technical problem of the shared content being operated, and the technical effect that the terminal that accepts sharing can operate on the content shared by the actively shared terminal is obtained.
  • the disclosed technical contents may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • multiple units or components may be combined or may be Integrate into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, unit or module, and may be electrical or otherwise.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated in In a unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
  • the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic disk, or an optical disk, and the like. .
  • the above technical concept of the present invention can also be embodied as a non-transitory machine readable storage medium having executable code stored thereon.
  • the processor When the executable code is executed by the processor, the processor is caused to perform the method described above.
  • the above technical concept of the present invention can also be embodied as a computing device including a processor and a non-transitory machine readable storage medium.
  • the non-transitory machine readable storage medium stores executable code thereon.
  • the processor is caused to perform the method described above.
  • the above technical idea of the present invention can also be embodied as a computer program product including executable code.
  • the processor When the executable code is executed by the processor, the processor is caused to perform the method described above.

Landscapes

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

Abstract

A multi-screen interaction method, device, server (104) and non-transitory machine-readable storage medium, wherein, the method comprises: a first client acquires first data of a second client (S202); wherein, the first data is used to instruct the second client to perform a first operation; the first client performs the first operation instructed by the first data (S204). The above method resolves a technical issue in which a terminal receiving shared content cannot operate on the shared content.

Description

多屏互动的方法、装置、服务器以及非暂时性机器可读存储介质Multi-screen interactive method, device, server and non-transitory machine readable storage medium 技术领域Technical field
本发明涉及互联网领域,具体而言,涉及一种多屏互动的方法、装置、服务器以及非暂时性机器可读存储介质。The present invention relates to the field of the Internet, and in particular to a method, apparatus, server, and non-transitory machine readable storage medium for multi-screen interaction.
背景技术Background technique
随着科技的不断发展,个人可能同时拥有手机、电脑、电视和pad等电子产品。基于分享的目的,现有技术可以将手机的显示屏所显示的内容投屏到电视或者电脑屏幕上。投屏,顾名思义,就是主动分享的终端的显示屏上显示什么,接受分享的终端的屏幕上就显示什么,其本质还是对主动分享的终端的操作,接受分享的终端的屏幕上所显示的内容仅仅是主动分享的终端的屏幕的一个映射。换句话说,接受分享的终端的屏幕仅作为主动分享的终端的一个显示装置,接受分享的终端并不能对显示的界面进行操作。例如,将手机上浏览器所播放的视频投屏到电视上,手机操作视频的播放或者暂停,而电视上只能显示视频的播放或者暂停状态,而无法控制视频的播放或者暂停。With the continuous development of technology, individuals may have electronic products such as mobile phones, computers, televisions and pads. Based on the purpose of sharing, the prior art can screen the content displayed on the display screen of the mobile phone to a television or a computer screen. Screening, as the name implies, is what is displayed on the display of the terminal that actively shares, and what is displayed on the screen of the terminal that accepts sharing, the essence of which is the operation of the terminal actively sharing, and the content displayed on the screen of the terminal that accepts the sharing. It is just a mapping of the screen of the terminal that actively shares. In other words, the screen of the terminal accepting the sharing is only a display device of the actively shared terminal, and the terminal accepting the sharing cannot operate the displayed interface. For example, the video played by the browser on the mobile phone is projected onto the television, and the mobile phone operates to play or pause the video, and the video can only display the playback or pause state of the video, and cannot control the playback or pause of the video.
针对上述的问题,目前尚未提出有效的解决方案。In response to the above problems, no effective solution has been proposed yet.
发明内容Summary of the invention
本发明实施例提供了一种多屏互动的方法、装置、服务器以及非暂时性机器可读存储介质,以至少解决接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题。The embodiments of the present invention provide a method, an apparatus, a server, and a non-transitory machine-readable storage medium for multi-screen interaction, so as to at least solve the technical problem that the terminal that accepts sharing cannot operate on the content shared by the actively shared terminal.
根据本发明实施例的一个方面,提供了一种多屏互动的方法,包括:第一客户端获取第二客户端的第一数据,其中,第一数据用于指示第二客户端执行第一操作;第一客户端执行第一数据所指示的第一操作。According to an aspect of the embodiments of the present invention, a method for multi-screen interaction is provided, including: acquiring, by a first client, first data of a second client, where the first data is used to instruct the second client to perform the first operation The first client performs the first operation indicated by the first data.
根据本发明实施例的另一方面,还提供了一种多屏互动的方法,包括:获取第二客户端的第一数据;所述服务器将所述第一数据转发给第一客户端,以使所述第一客户端执行所述第一数据所指示的第一操作。 According to another aspect of the embodiments of the present invention, a method for multi-screen interaction includes: acquiring first data of a second client; the server forwarding the first data to a first client, so that The first client performs a first operation indicated by the first data.
根据本发明实施例的另一方面,还提供了一种多屏互动的装置,包括:获取单元,用于获取第二客户端发送给所述第一客户端的第一数据,其中,所述第一数据用于指示所述第二客户端执行第一操作;执行单元,用于执行所述第一数据所指示的所述第一操作。According to another aspect of the present invention, an apparatus for multi-screen interaction is provided, including: an obtaining unit, configured to acquire first data sent by the second client to the first client, where the A data is used to instruct the second client to perform a first operation; and an execution unit is configured to execute the first operation indicated by the first data.
根据本发明实施例的另一方面,还提供了一种服务器,包括:数据获取单元,用于获取第二客户端的第一数据;转发单元,用于将所述第一数据转发给第一客户端,以使所述第一客户端执行所述第一数据所指示的第一操作。According to another aspect of the present invention, a server is provided, including: a data acquiring unit, configured to acquire first data of a second client, and a forwarding unit, configured to forward the first data to the first client Ending, so that the first client performs the first operation indicated by the first data.
根据本发明实施例的另一方面,还提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行上文述及的多屏互动的方法。According to another aspect of an embodiment of the present invention, there is also provided a non-transitory machine readable storage medium having stored thereon executable code that, when executed by a processor, causes the processor to perform the above The multi-screen interactive approach.
在本发明实施例中,第一客户端获取第二客户端的第一数据,其中,所述第一数据用于指示所述第二客户端执行第一操作;所述第一客户端执行所述第一数据所指示的所述第一操作,每个客户端都从属于其所在的终端,在接收另外一个客户端分享的内容的同时,还可以通过该客户端所在的终端进行控制,本质上是两个客户端的分别控制,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,达到了接受分享的终端可以对主动分享的终端所分享的内容进行操作的技术效果。In the embodiment of the present invention, the first client acquires the first data of the second client, where the first data is used to instruct the second client to perform the first operation; the first client performs the The first operation indicated by the first data, each client is subordinate to the terminal where the client is located, and while receiving the content shared by the other client, the terminal can be controlled by the terminal where the client is located, essentially It is a separate control of the two clients, which solves the technical problem that the terminal that accepts sharing cannot operate on the content shared by the actively shared terminal, and achieves the technology that the terminal that accepts sharing can operate on the content shared by the actively shared terminal. effect.
附图说明DRAWINGS
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the embodiments will be briefly described below. It should be understood that the following drawings show only certain embodiments of the present invention, and therefore It should be seen as a limitation on the scope, and those skilled in the art can obtain other related drawings according to these drawings without any creative work.
图1是根据本发明实施例的硬件环境的结构图;1 is a structural diagram of a hardware environment according to an embodiment of the present invention;
图2是根据本发明实施例1的多屏互动的方法的流程图;2 is a flow chart of a method of multi-screen interaction according to Embodiment 1 of the present invention;
图3是根据本发明实施例2的多屏互动的方法的流程图;3 is a flow chart of a method for multi-screen interaction according to Embodiment 2 of the present invention;
图4是根据本发明实施例的客户端与服务器的双向链接的示意图;4 is a schematic diagram of a bidirectional link between a client and a server according to an embodiment of the present invention;
图5是根据本发明实施例的同一账户的链接存储在服务器的同一链接池示意图;5 is a schematic diagram of the same link pool stored in a server by a link of the same account according to an embodiment of the present invention;
图6是根据本发明实施例的不同账户的链接存储在服务器的同一链接 池示意图;6 is a link of different accounts stored in the same link of the server according to an embodiment of the present invention Pool schematic
图7是根据本发明实施例的多屏互动的装置的示意图;7 is a schematic diagram of an apparatus for multi-screen interaction in accordance with an embodiment of the present invention;
图8是根据本发明实施例服务器的示意图。Figure 8 is a schematic illustration of a server in accordance with an embodiment of the present invention.
具体实施方式detailed description
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。The technical solutions in the embodiments of the present application are clearly and completely described in the following with reference to the drawings in the embodiments of the present application. It is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present application without departing from the inventive scope are the scope of the present application.
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。It is to be understood that the terms "first", "second" and the like in the specification and claims of the present invention are used to distinguish similar objects, and are not necessarily used to describe a particular order or order. It is to be understood that the data so used may be interchanged where appropriate, so that the embodiments of the invention described herein can be implemented in a sequence other than those illustrated or described herein. In addition, the terms "comprises" and "comprises" and "the" and "the" are intended to cover a non-exclusive inclusion, for example, a process, method, system, product, or device that comprises a series of steps or units is not necessarily limited to Those steps or units may include other steps or units not explicitly listed or inherent to such processes, methods, products or devices.
实施例1Example 1
根据本发明实施例,还提供了一种多屏互动的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。In accordance with an embodiment of the present invention, an embodiment of a method of multi-screen interaction is also provided, it being noted that the steps illustrated in the flowchart of the figures may be performed in a computer system such as a set of computer executable instructions. Also, although logical sequences are shown in the flowcharts, in some cases the steps shown or described may be performed in a different order than the ones described herein.
可选地,在本实施例中,上述多屏互动的方法可以应用于如图1所示的终端(包括终端1022、终端1024和终端1026)和服务器104所构成的硬件环境中。如图1所示,终端通过网络与服务器104进行连接,终端上设置有客户端,上述网络包括但不限于:移动通信网络、广域网、城域网或局域网,终端可以是手机终端,也可以是PC终端、笔记本终端、平板电脑终端或电视终端。上述的服务器104包括存储多个终端上的客户端的通信链接的链接池。Optionally, in the embodiment, the method for multi-screen interaction described above may be applied to a hardware environment formed by the terminal (including the terminal 1022, the terminal 1024, and the terminal 1026) and the server 104 as shown in FIG. 1. As shown in FIG. 1 , the terminal is connected to the server 104 through a network, and the terminal is provided with a client. The network includes but is not limited to: a mobile communication network, a wide area network, a metropolitan area network, or a local area network. The terminal may be a mobile terminal, or may be PC terminal, notebook terminal, tablet terminal or television terminal. The server 104 described above includes a pool of links that store communication links for clients on multiple terminals.
图1中示出的硬件环境系统的主要工作原理是:终端1022(手机)、 终端1024(电脑)和终端1026(电视)各自的通信链接存储在服务器104的同一个链接池中,当上述三个终端的任意一个终端向服务器104发送数据时,服务器都能将接收到的数据转发给其余两个终端。例如,终端1022执行了第一操作,并向服务器104发送了第一数据,服务器104将第一数据转发给终端1024和终端1026,终端1024和终端1026收到第一数据后也执行第一操作,同理,终端1024也可以将其执行的第二操作生成的第二数据发送给服务器104,服务器104将第二数据转发给终端1022和终端1026后,执行第二操作,从而使得三个终端在实现自身的动作的情况下还可以控制其他的终端执行相同的动作。The main working principle of the hardware environment system shown in FIG. 1 is: terminal 1022 (mobile phone), The respective communication links of the terminal 1024 (computer) and the terminal 1026 (television) are stored in the same link pool of the server 104. When any one of the above three terminals transmits data to the server 104, the server can receive the received data. Forward to the other two terminals. For example, the terminal 1022 performs the first operation and transmits the first data to the server 104, the server 104 forwards the first data to the terminal 1024 and the terminal 1026, and the terminal 1024 and the terminal 1026 also perform the first operation after receiving the first data. Similarly, the terminal 1024 can also send the second data generated by the second operation performed by the terminal 1024 to the server 104. After the server 104 forwards the second data to the terminal 1022 and the terminal 1026, the second operation is performed, thereby causing the three terminals. It is also possible to control other terminals to perform the same action in the case of realizing their own actions.
需要说明的是,此处说的终端执行的动作可以理解为终端上设置的客户端所执行的动作,多个终端上设置的客户端为相同的客户端。上述的服务器104也可以是设置在终端上的装置,能够实现服务器的功能。It should be noted that the actions performed by the terminal described herein can be understood as actions performed by the client set on the terminal, and the clients set on multiple terminals are the same client. The server 104 described above may be a device provided on the terminal, and can implement the functions of the server.
在上述硬件环境下,本申请提供了如图2所示的多屏互动的方法,该方法可以在某个终端上的客户端中执行。图2是根据本发明实施例1的多屏互动的方法的流程图。In the above hardware environment, the present application provides a method for multi-screen interaction as shown in FIG. 2, which can be executed in a client on a certain terminal. 2 is a flow chart of a method of multi-screen interaction in accordance with Embodiment 1 of the present invention.
如图2所示,在步骤S202,第一客户端获取第二客户端的第一数据,其中,第一数据用于指示第二客户端执行第一操作。As shown in FIG. 2, in step S202, the first client acquires the first data of the second client, where the first data is used to instruct the second client to perform the first operation.
在步骤S204,第一客户端执行第一数据所指示的第一操作。In step S204, the first client executes the first operation indicated by the first data.
第一客户端可以是图1所示的硬件环境中的任意一个终端上设置的客户端,第一客户端和第二客户端处于不同的终端上,属于相同的客户端。第一客户端和第二客户端可以执行相同的功能,例如,第一客户端和第二客户端可以是分别安装在手机、电脑和电视上的浏览器。The first client may be a client set on any one of the hardware environments shown in FIG. 1. The first client and the second client are on different terminals and belong to the same client. The first client and the second client can perform the same function. For example, the first client and the second client can be browsers respectively installed on a mobile phone, a computer, and a television.
第一数据可以是第二客户端执行的动作所对应的数据,例如,打开网页的动作所对应的数据,在搜索栏输入搜索内容的动作所对应的数据等。第一数据被第一客户端接收,第一客户端执行第一数据所指示的第一操作,从而使得第一客户端和第二客户端执行相同的动作,实现了在不同的客户端上显示相同的内容,执行相同的动作。The first data may be data corresponding to the action performed by the second client, for example, data corresponding to the action of opening the webpage, data corresponding to the action of inputting the search content in the search bar, and the like. The first data is received by the first client, and the first client performs the first operation indicated by the first data, so that the first client and the second client perform the same action, and the display is performed on different clients. The same content, perform the same action.
可选地,第一数据可以被服务器转发给第一客户端。该服务器可以是设置在某个终端上的装置,能够存储和转发数据。Alternatively, the first data can be forwarded by the server to the first client. The server can be a device set on a terminal that can store and forward data.
通过上述实施例可知,与现有技术的投屏(一个终端上显示另外一个终端的投影,无法对投影的内容进行控制)相比,两个终端上的客户端分 别执行相同的动作来实现两个终端上显示的内容相同,每个客户端都从属于其所在的终端,在接收另外一个客户端分享的内容的同时,还可以通过该客户端所在的终端进行控制,本质上是两个客户端的分别控制,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,达到了接受分享的终端可以对主动分享的终端所分享的内容进行操作的技术效果。According to the above embodiment, compared with the prior art projection screen (the projection of another terminal is displayed on one terminal, the content of the projection cannot be controlled), the client on the two terminals is divided. Do not perform the same action to achieve the same content displayed on the two terminals. Each client is subordinate to the terminal it is in. When receiving the content shared by another client, it can also be performed through the terminal where the client is located. Control is essentially the separate control of the two clients, which solves the technical problem that the terminal that accepts the sharing cannot operate on the content shared by the actively shared terminal, and achieves the content that the terminal that accepts sharing can share with the actively shared terminal. The technical effect of the operation.
同时,由于客户端可以不依赖其他客户端进行单独控制,那么,每个客户端可以根据其所处的终端的特性进行控制,提高了对客户端控制的便捷性。At the same time, since the client can perform independent control without relying on other clients, each client can be controlled according to the characteristics of the terminal in which it is located, thereby improving the convenience of controlling the client.
例如,用电视版的视频播放器播放视频时,身边有手机或pad,在手机/pad上播放视频、输入视频名字和选择一个视频播放是很容易操作的事情。通过电视遥控器来操作电视版的视频播放器却相当困难。然而,采用本实施例提供的方法,可以在手机或pad上搜索视频、控制视频的播放,在电视上播放视频,或者利用电视遥控器控制电视上播放视频的暂停或者继续播放。For example, when playing a video with a TV version of a video player, it is easy to operate with a mobile phone or pad, playing a video on the phone/pad, entering a video name, and selecting a video to play. It is quite difficult to operate the TV version of the video player through the TV remote control. However, with the method provided in this embodiment, it is possible to search for video on a mobile phone or a pad, control video playback, play video on a television, or use a television remote control to control pause or resume playback of a video played on a television.
例如,用电脑浏览页面,但是手机/pad滑动的操作更加方便,这时候,手机就相当于电脑的一个触摸屏。需要搜索时,利用电脑输入关键词。搜索的结果,可以通过滑动手机/pad来进行浏览。由于手机/pad上的滑动也作用在电脑上,电脑上搜索的结果也随着手机/pad上的滑动而动,因而从电脑上也可以浏览搜索结果。采用多屏互动可以把电脑的大屏幕和输入的方便性同手机/pad操作的易用性集合起来,提高了操作的便捷性。For example, browsing a page with a computer, but the operation of the mobile phone/pad slide is more convenient. At this time, the mobile phone is equivalent to a touch screen of the computer. When searching, use the computer to enter keywords. The results of the search can be browsed by sliding the phone/pad. Since the sliding on the mobile phone/pad also acts on the computer, the search result on the computer also moves with the sliding on the mobile phone/pad, so the search result can also be browsed from the computer. Multi-screen interaction can combine the convenience of the large screen and input of the computer with the ease of use of the mobile phone/pad operation, which improves the convenience of operation.
例如,第一客户端是电视上的视频播放器,第二客户端是手机上的视频播放器,电视上的视频播放器和手机上的视频播放器的通信链接存储在服务器的同一个链接池中。手机上的视频播放器执行“播放A视频”的动作(即第一操作)后,播放视频。手机上的视频播放器将“播放A视频”的动作生成为第一数据,并将第一指令被发送至服务器。服务器将手机上的视频播放器的通信链路接收到的第一数据转发给同一个链接池中其他的通信链路,其中一个通信链路是电视上的视频播放器的通信链路,从而电视上的视频播放器能够接收到第一数据。电视上的视频播放器获取第一数据对应的“播放A视频”动作,然后对电视上的视频播放器的视频进行播放。For example, the first client is a video player on the TV, the second client is a video player on the mobile phone, and the communication link between the video player on the TV and the video player on the mobile phone is stored in the same link pool of the server. in. After the video player on the mobile phone performs the action of “playing A video” (ie, the first operation), the video is played. The video player on the mobile phone generates an action of "playing A video" as the first data, and sends the first instruction to the server. The server forwards the first data received by the communication link of the video player on the mobile phone to other communication links in the same link pool, wherein one communication link is a communication link of the video player on the television, thereby the television The video player on the top can receive the first data. The video player on the TV acquires the "Play A Video" action corresponding to the first data, and then plays the video of the video player on the TV.
可选地,第一客户端执行所第一数据所指示的第一操作包括:第一客 户端从第一数据中解析出执行代码和执行对象,其中,利用执行代码对执行对象进行的操作为第一操作;第一客户端利用执行代码对执行对象进行操作。Optionally, the first operation indicated by the first client to execute the first data includes: the first guest The client parses the execution code and the execution object from the first data, wherein the operation performed on the execution object by the execution code is the first operation; the first client operates the execution object by using the execution code.
执行代码是每个客户端都可以识别的、统一的执行代码,每个执行代码对应一个动作,执行对象可以是执行代码所对应的动作所作用的对象,当执行代码对执行对象进行操作时就得到了第一操作,也就是说,第一操作包括执行代码对应的动作和执行对象所对应的对象。那么,客户端调用执行代码对执行对象执行操作,就实现了第一操作。The execution code is a unified execution code that each client can recognize, and each execution code corresponds to an action, and the execution object may be an object that acts on the action corresponding to the execution code, and when the execution code operates on the execution object, The first operation is obtained, that is, the first operation includes performing an action corresponding to the code and an object corresponding to the execution object. Then, the client invokes the execution code to perform an operation on the execution object, and the first operation is implemented.
例如,在上述例子中,第一客户端是电视上的视频播放器,第二客户端是手机上的视频播放器。手机上的视频播放器根据“播放A视频”生成第一数据。电视上的视频播放器获取第一数据后,从中解析出执行代码为“播放”,执行对象为“A视频”,则电视上的视频播放器对A视频执行播放的操作。For example, in the above example, the first client is a video player on the TV and the second client is a video player on the phone. The video player on the mobile phone generates the first data according to "Play A Video". After the video player on the TV obtains the first data, the execution code is "play" and the execution object is "A video", and the video player on the television performs the operation of playing the A video.
其中,第一客户端可以根据第二客户端发出的第一数据执行相应的第一操作,第一客户端也可以根据其从终端上接收到的指令执行相应的动作。例如,电视上的视频播放器接收遥控器的“暂停”信号而暂停播放A视频。The first client may perform a corresponding first operation according to the first data sent by the second client, and the first client may also perform a corresponding action according to the instruction received by the first client. For example, a video player on a television receives a "pause" signal from the remote control and pauses playback of the A video.
也就是说,第一客户端可以根据第二客户端发送的第一数据进行相同的操作,还可以单独执行其自身的控制,而不受第二客户端的控制,在第一客户端与第二客户端显示相同内容的同时,还能进行单独控制,从而提高了第一客户端和第二客户端的控制的灵活性。That is to say, the first client can perform the same operation according to the first data sent by the second client, and can also perform its own control separately, without being controlled by the second client, in the first client and the second. While the client displays the same content, it can also be individually controlled, thereby improving the flexibility of control of the first client and the second client.
可选地,在第一客户端获取第二客户端的第一数据之前,方法还包括:第一客户端判断是否接收到第一指令和第二指令,其中,第一指令用于指示允许第一客户端向第二客户端发送第二数据,第二指令用于指示不允许第一客户端向第二客户端发送第二数据,第二数据用于指示第一客户端执行了第二操作;若第一客户端判断出接收到第一指令,则监测第一数据和第一客户端执行的第二操作,其中,在监测到第二操作的情况下,生成第二数据并向第二客户端发送第二数据,以使第二客户端执行第二操作;若第一客户端判断出接收到第二指令,则监测第二客户端发送的第一数据。Optionally, before the first client acquires the first data of the second client, the method further includes: determining, by the first client, whether the first instruction and the second instruction are received, where the first instruction is used to indicate that the first instruction is allowed The client sends the second data to the second client, where the second command is used to indicate that the first client is not allowed to send the second data to the second client, and the second data is used to indicate that the first client performs the second operation; And if the first client determines that the first instruction is received, monitoring the first data and the second operation performed by the first client, wherein, when the second operation is detected, generating the second data and reporting to the second client The second data is sent to enable the second client to perform the second operation; if the first client determines that the second command is received, the first data sent by the second client is monitored.
第一指令和第二指令可以是第一客户端上的一个功能,例如,第一指令为屏幕共享,第二指令为跟随浏览。当第一客户端的第一指令被触发时,第一客户端不仅可以接收第二客户端的第一数据执行第一操作,还可以将 其执行的第二操作发送给第二客户端,从而控制第二客户端执行第二操作;当第一客户端的第二指令被触发时,第一客户端仅能够对第二客户端发来的第一数据进行响应来执行第一操作,即使第一客户端执行了第二操作也不会向第二客户端发送第二数据,不会控制第二客户端执行第二操作。The first instruction and the second instruction may be a function on the first client, for example, the first instruction is a screen sharing and the second instruction is a follow-up browsing. When the first instruction of the first client is triggered, the first client may not only receive the first data of the second client to perform the first operation, but also The second operation performed is sent to the second client, thereby controlling the second client to perform the second operation; when the second instruction of the first client is triggered, the first client can only send the second client The first data is responsive to perform the first operation, and the second client does not send the second data to the second client even if the first client performs the second operation, and does not control the second client to perform the second operation.
例如,在冬天等车的过程中,需要利用浏览器或者新闻应用(第一客户端)浏览新闻,但是,由于天气太冷不想用手控制第一客户端。此时,用户可以开启第一客户端的跟随浏览功能,跟随好友浏览。即,好友的第二客户端展示什么内容,执行什么动作,在第一客户端上就展示相应的内容,执行相应的动作。该好友是第一客户端中的好友,向第二客户端请求跟随浏览,在第二客户端同意的情况下,接收第二客户端的第一数据。For example, in the process of waiting for a car in winter, it is necessary to browse the news using a browser or a news application (first client), but the first client is not controlled by hand because the weather is too cold. At this point, the user can turn on the following browsing function of the first client and follow the browsing of the friend. That is, what content is displayed by the second client of the friend, what action is performed, the corresponding content is displayed on the first client, and the corresponding action is performed. The friend is a friend in the first client, requests the second client to follow the browsing, and if the second client agrees, receives the first data of the second client.
在跟随浏览的过程中,第一客户端仅仅是接收第二客户端的第一数据,执行第一数据对应的第一操作。需要说明的是,无论是跟随浏览还是屏幕共享,第一客户端仅仅从接收第一操作,并不会从第二客户端中获取执行第一操作后的执行结果,相当于,每个客户端都是独立执行自己的逻辑,指示接收的指令是从另外一个客户端获取的,而不是从其所在的终端获取的。例如,在第一操作为打开www.aaaa.com时,第一客户端向www.aaaa.com的服务器请求www.aaaa.com的内容,而不是从第二客户端中获取www.aaaa.com的内容。In the process of following the browsing, the first client only receives the first data of the second client, and performs the first operation corresponding to the first data. It should be noted that, whether it is following browsing or screen sharing, the first client only receives the first operation, and does not obtain the execution result after performing the first operation from the second client, which is equivalent to each client. They all execute their own logic independently, indicating that the received instruction is obtained from another client, not from the terminal it is on. For example, when the first operation is to open www.aaaa.com, the first client requests the content of www.aaaa.com from the server of www.aaaa.com instead of obtaining www.aaaa.com from the second client. Content.
由于第一客户端可以执行第二客户端发送的第一数据所对应的第一操作,还可以执行第一客户端所在的终端控制该第一客户端执行的第二操作,那么,当监测到第二操作时,生成第二数据,并向第二客户端发送第二数据,使第二客户端也执行第二操作。由于第一客户端执行的动作会在第二客户端执行,第二客户端执行的动作也会在第一客户端执行,实现了第一客户端和第二客户端的同步,在此基础上,第一客户端执行第二客户端执行过的动作、第二客户端执行第一客户端执行过的动作以及第一客户端和第二客户端各自执行的动作都不会造成两个客户端上的显示内容的混乱,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,同时还能保证两个客户端正常显示和运行。The first client can perform the first operation corresponding to the first data sent by the second client, and can also perform the second operation performed by the terminal where the first client is located, and then, when In the second operation, the second data is generated, and the second data is sent to the second client, so that the second client also performs the second operation. Since the action performed by the first client is performed on the second client, the action performed by the second client is also executed on the first client, and the synchronization between the first client and the second client is implemented. On this basis, The first client executes the action performed by the second client, the second client performs the action performed by the first client, and the actions performed by the first client and the second client are not caused by the two clients. The confusion of the display content solves the technical problem that the receiving terminal cannot operate the content shared by the actively shared terminal, and at the same time ensures that the two clients display and run normally.
可选地,在监测到第二操作的情况下,生成第二数据并向第二客户端发送第二数据包括:第一客户端获取第二操作的执行代码和执行对象;第一客户端将执行代码和执行对象封装为第二数据,其中,执行代码可被第 二客户端执行,执行对象可被第二客户端通过执行代码进行操作。Optionally, in the case that the second operation is detected, generating the second data and sending the second data to the second client includes: the first client acquiring the execution code of the second operation and the execution object; the first client The execution code and the execution object are encapsulated into second data, wherein the execution code can be The second client executes, and the execution object can be operated by the second client by executing the code.
例如,手机上的视频播放器(即第一客户端)执行“播放A视频”动作(即第二操作)后,手机上的视频播放器将“播放”的动作转换为执行代码(如0001),将“A视频”转换为执行对象(如A视频的名称),并将“播放”的动作和“A视频”一起封装为第二数据,并发送给第二客户端。For example, after the video player on the mobile phone (ie, the first client) performs the "play A video" action (ie, the second operation), the video player on the mobile phone converts the "play" action into an execution code (such as 0001). Convert "A video" to an execution object (such as the name of the A video), and package the "play" action together with "A video" as the second data, and send it to the second client.
第二客户端生成第二数据的过程与上述第一客户端生成第一数据的过程类似,并且第一客户端和第二客户端采用相同的执行代码与相应的动作。第二客户端接收到第二数据后,从第二数据中获取第二操作的过程也与上述第一客户端从第一数据中获取第一操作的过程类似。The process of generating the second data by the second client is similar to the process of generating the first data by the first client, and the first client and the second client adopt the same execution code and corresponding actions. After the second client receives the second data, the process of obtaining the second operation from the second data is similar to the process of obtaining the first operation from the first data by the first client.
可选地,第一客户端执行第一数据所指示的第一操作包括:第一客户端执行第一数据所指示的包括下述至少一种操作:打开窗口、打开页面、滚动页面、输入文字、改变焦点、播放和暂停。Optionally, the first operation indicated by the first client to execute the first data includes: at least one operation indicated by the first client executing the first data includes: opening a window, opening a page, scrolling a page, inputting text , change focus, play and pause.
第一客户端执行的第二操作也可以是上述第一操作中的任意一种或多种。打开窗口、打开网页、滚动页面等可以用在浏览器(第一客户端或第二客户端)中,播放和暂停可以应用在视频播放器中,对应其他应用程序的动作也可以作为第一操作在相应的应用程序中执行,此处不再一一列举。The second operation performed by the first client may also be any one or more of the foregoing first operations. Open the window, open the web page, scroll the page, etc. can be used in the browser (the first client or the second client), the play and pause can be applied in the video player, and the actions corresponding to other applications can also be used as the first operation. Executed in the corresponding application, not listed here.
如果第一操作比较复杂,不仅需要改变焦点,还要输入文字,还要执行选择,那么,第一客户端将第一操作拆分成多个动作的组合,依次执行多个动作,从而完成完整的第一操作。If the first operation is complicated, not only needs to change the focus, but also input text, and also performs selection, then the first client splits the first operation into a combination of multiple actions, and sequentially performs multiple actions, thereby completing the completeness. The first operation.
在一个具体的例子中,上述的多屏互动的方法还可以用于推送广告。例如,第二客户端执行打开广告A的动作(即第一操作),那么,服务器将执行打开广告A的动作发送给第一客户端,第一客户端也执行了打开广告A的动作,从而实现了广告的推送。In a specific example, the above multi-screen interaction method can also be used to push advertisements. For example, the second client performs an action of opening the advertisement A (ie, the first operation), then the server sends an action of opening the advertisement A to the first client, and the first client also performs an action of opening the advertisement A, thereby Realized the push of advertising.
通过上述实施例,由于处于两个终端上的两个客户端可以执行对方执行过的动作,还可以接收客户端所在的终端的控制,因此,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,得到了接受分享的终端可以对主动分享的终端所分享的内容进行操作的技术效果。With the above embodiment, the two clients on the two terminals can perform the actions performed by the other party, and can also receive the control of the terminal where the client is located. Therefore, the terminal that accepts the sharing cannot solve the terminal that is actively shared. The technical problem of the shared content being operated, and the technical effect that the terminal that accepts sharing can operate on the content shared by the actively shared terminal is obtained.
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序 或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。It should be noted that, for the foregoing method embodiments, for the sake of simple description, they are all expressed as a series of action combinations, but those skilled in the art should understand that the present invention is not limited by the described action sequence. Because in accordance with the present invention, certain steps may be in other orders Or at the same time. In addition, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present invention.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware, but in many cases, the former is A better implementation. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk, The optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
实施例2Example 2
根据本发明实施例,还提供了一种多屏互动的方法。该多屏互动的方法在服务器上执行,图3是根据本发明实施例2的多屏互动的方法的流程图。According to an embodiment of the invention, a method of multi-screen interaction is also provided. The method of multi-screen interaction is performed on a server, and FIG. 3 is a flowchart of a method of multi-screen interaction according to Embodiment 2 of the present invention.
如图3所示,在步骤S302,获取第二客户端的第一数据。As shown in FIG. 3, in step S302, the first data of the second client is acquired.
在步骤S304,将第一数据转发给第一客户端,以使第一客户端执行第一数据所指示的第一操作,其中,第一数据用于指示第二客户端执行第一操作。第一客户端可以是图1所示的硬件环境中的任意一个终端上设置的客户端,第一客户端和第二客户端处于不同的终端上,属于相同的客户端。第一客户端和第二客户端可以执行相同的功能,例如,安装在手机、电脑和电视上的浏览器。可选地,第一数据由服务器从第二客户端转发给第一客户端。In step S304, the first data is forwarded to the first client, so that the first client performs the first operation indicated by the first data, where the first data is used to instruct the second client to perform the first operation. The first client may be a client set on any one of the hardware environments shown in FIG. 1. The first client and the second client are on different terminals and belong to the same client. The first client and the second client can perform the same functions, for example, browsers installed on mobile phones, computers, and televisions. Optionally, the first data is forwarded by the server from the second client to the first client.
如图4所示,每个客户端(电脑、手机、平板和电视)都与服务器建立双向链接(即链接A、链接B、链接C和链接D),即每个客户端都可以向服务器发送数据,也可以接收服务器发来的数据,图4中的每个客户端都可以作为第一客户端或者第二客户端。服务器接收任意一个客户端的链接中的第一数据,转发给其他链接所对应的客户端。As shown in Figure 4, each client (computer, mobile, tablet, and TV) has a two-way link with the server (ie, link A, link B, link C, and link D), that is, each client can send to the server. The data can also receive data sent by the server. Each client in FIG. 4 can be used as the first client or the second client. The server receives the first data in the link of any one client and forwards it to the client corresponding to the other link.
第一数据可以是第二客户端执行的动作所对应的数据,例如,打开网页的动作所对应的数据,在搜索栏输入搜索内容的动作所对应的数据等。通过服务器的转发,第一数据被第一客户端接收,第一客户端执行第一数据所指示的第一操作,从而使得第一客户端和第二客户端执行相同的动作, 实现了在不同的客户端上显示相同的内容,执行相同的动作。The first data may be data corresponding to an action performed by the second client, for example, data corresponding to an action of opening a web page, data corresponding to an action of inputting a search content in the search field, and the like. The first data is received by the first client by the forwarding of the server, and the first client performs the first operation indicated by the first data, so that the first client and the second client perform the same action. It is implemented to display the same content on different clients and perform the same actions.
通过上述实施例可知,与现有技术的投屏(一个终端上显示另外一个终端的投影,无法对投影的内容进行控制)相比,两个终端上的客户端分别执行相同的动作来实现两个终端上显示的内容相同,每个客户端都从属于其所在的终端,在接收另外一个客户端分享的内容的同时,还可以通过该客户端所在的终端进行控制,本质上是两个客户端的分别控制,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,达到了接受分享的终端可以对主动分享的终端所分享的内容进行操作的技术效果。It can be seen from the above embodiment that compared with the prior art projection screen (the projection of another terminal is displayed on one terminal, the projected content cannot be controlled), the clients on the two terminals respectively perform the same action to realize two The content displayed on each terminal is the same. Each client belongs to the terminal where it is located. When receiving the content shared by another client, it can also be controlled by the terminal where the client is located. In essence, it is two clients. The separate control of the terminal solves the technical problem that the terminal that accepts the sharing cannot operate on the content shared by the actively shared terminal, and achieves the technical effect that the terminal that accepts the sharing can operate the content shared by the actively shared terminal.
可选地,服务器将第一数据转发给第一客户端包括:服务器将第一客户端的第一通信链接和至少一个第二客户端的第二通信链接存放在同一个链接池中;服务器将通过一个第二通信链接接收到的数据转发到第一通信链接和至少一个第二客户端中其他的第二客户端的第二通信链接中,其中,数据包括第一数据。Optionally, the server forwarding the first data to the first client includes: the server storing the first communication link of the first client and the second communication link of the at least one second client in the same link pool; the server will pass one The data received by the second communication link is forwarded to the first communication link and the second communication link of the other second client of the at least one second client, wherein the data includes the first data.
如图5所示,服务器将图4所示的四个链接(即链接A、链接B、链接C和链接D)存放在同一个链接池中,电脑对浏览器(即第一客户端)执行操作(即第一操作)后,将执行的第一操作翻译为执行代码和执行对象(即生成第一数据)通过第一通信链接(即链接A)发送给服务器,服务器将接收到的第一数据通过三个第二通信链接(即链接B、链接C和链接D)分别发送给手机上的浏览器、平板上的浏览器和电视上的浏览器(即第二客户端和其他第二客户端),获得第一数据的浏览器将第一数据翻译为执行代码和参数,以执行第一操作。放在同一个链接池中的链接可以是都从属于同一个登录账户user1。As shown in FIG. 5, the server stores the four links shown in FIG. 4 (ie, link A, link B, link C, and link D) in the same link pool, and the computer executes the browser (ie, the first client). After the operation (ie, the first operation), the first operation to be executed is translated into the execution code and the execution object (ie, the first data is generated) is sent to the server through the first communication link (ie, link A), and the server will receive the first The data is sent to the browser on the phone, the browser on the tablet, and the browser on the TV (ie the second client and other second clients) via three second communication links (ie, link B, link C, and link D). End), the browser that obtains the first data translates the first data into execution code and parameters to perform the first operation. Links placed in the same link pool can be subordinate to the same login account user1.
服务器在转发第一数据时,还可以携带其他数据,例如,推送给手机上的浏览器、平板上的浏览器和电视上的浏览器的广告,在手机上的浏览器、平板上的浏览器和电视上的浏览器执行第一操作的同时,加载服务器推送的广告。When the server forwards the first data, it can also carry other data, for example, an advertisement that is pushed to a browser on the mobile phone, a browser on the tablet, and a browser on the television, a browser on the mobile phone, and a browser on the tablet. And the browser on the TV performs the first operation while loading the advertisement pushed by the server.
可选地,服务器将第一客户端的第一通信链接和至少一个第二客户端的第二通信链接存放在同一个链接池中包括:服务器判断是否接收到第一客户端发送的提示信息,提示信息用于提示第一客户端接收到第一指令或者第二指令,第一指令用于指示允许第一客户端向至少一个第二客户端发 送第二数据,第二指令用于指示不允许第一客户端向至少一个第二客户端发送第二数据,第二数据用于指示第一客户端执行了第二操作;服务器判断出接收到提示信息后,将第一客户端的第一通信链接和至少一个第二客户端的第二通信链接存放在同一个链接池中。Optionally, the server storing the first communication link of the first client and the second communication link of the at least one second client in the same link pool includes: determining, by the server, whether the prompt information sent by the first client is received, the prompt information For prompting the first client to receive the first instruction or the second instruction, the first instruction is for indicating that the first client is allowed to send to the at least one second client Sending second data, the second instruction is for indicating that the first client is not allowed to send the second data to the at least one second client, and the second data is used to indicate that the first client performs the second operation; the server determines that the second operation is received After prompting the information, the first communication link of the first client and the second communication link of the at least one second client are stored in the same link pool.
第一指令和第二指令可以是第一客户端上的一个功能,例如,第一指令为屏幕共享,第二指令为跟随浏览。当第一客户端的第一指令被触发时,第一客户端不仅可以接收第二客户端的第一数据执行第一操作,还可以将其执行的第二操作发送给第二客户端,从而控制第二客户端执行第二操作;当第一客户端的第二指令被触发时,第一客户端仅能够对第二客户端发来的第一数据进行响应来执行第一操作,即使第一客户端执行了第二操作也不会向第二客户端发送第二数据,不会控制第二客户端执行第二操作。The first instruction and the second instruction may be a function on the first client, for example, the first instruction is a screen sharing and the second instruction is a follow-up browsing. When the first instruction of the first client is triggered, the first client may not only receive the first data of the second client to perform the first operation, but also send the second operation performed by the first client to the second client, thereby controlling the first The second client performs the second operation; when the second instruction of the first client is triggered, the first client can only perform the first operation in response to the first data sent by the second client, even if the first client Performing the second operation also does not send the second data to the second client, and does not control the second client to perform the second operation.
例如,在冬天等车的过程中,需要利用浏览器或者新闻应用(第一客户端)浏览新闻,但是,由于天气太冷不想用手控制第一客户端。此时,用户可以开启第一客户端的跟随浏览功能,跟随好友浏览。即,好友的第二客户端展示什么内容,执行什么动作,在第一客户端上就展示相应的内容,执行相应的动作。该好友是第一客户端中的好友,向第二客户端请求跟随浏览,在第二客户端同意的情况下,接收第二客户端的第一数据。For example, in the process of waiting for a car in winter, it is necessary to browse the news using a browser or a news application (first client), but the first client is not controlled by hand because the weather is too cold. At this point, the user can turn on the following browsing function of the first client and follow the browsing of the friend. That is, what content is displayed by the second client of the friend, what action is performed, the corresponding content is displayed on the first client, and the corresponding action is performed. The friend is a friend in the first client, requests the second client to follow the browsing, and if the second client agrees, receives the first data of the second client.
在跟随浏览的过程中,第一客户端仅仅是接收第二客户端的第一数据,执行第一数据对应的第一操作。需要说明的是,无论是跟随浏览还是屏幕共享,第一客户端仅仅从接收第一操作,并不会从第二客户端中获取执行第一操作后的执行结果,相当于,每个客户端都是独立执行自己的逻辑,指示接收的指令是从另外一个客户端获取的,而不是从其所在的终端获取的。例如,在第一操作为打开www.aaaa.com时,第一客户端向www.aaaa.com的服务器请求www.aaaa.com的内容,而不是从第二客户端中获取www.aaaa.com的内容。In the process of following the browsing, the first client only receives the first data of the second client, and performs the first operation corresponding to the first data. It should be noted that, whether it is following browsing or screen sharing, the first client only receives the first operation, and does not obtain the execution result after performing the first operation from the second client, which is equivalent to each client. They all execute their own logic independently, indicating that the received instruction is obtained from another client, not from the terminal it is on. For example, when the first operation is to open www.aaaa.com, the first client requests the content of www.aaaa.com from the server of www.aaaa.com instead of obtaining www.aaaa.com from the second client. Content.
由于第一客户端可以执行第二客户端发送的第一数据所对应的第一操作,还可以执行第一客户端所在的终端控制该第一客户端执行的第二操作,那么,当监测到第二操作时,生成第二数据,并向第二客户端发送第二数据,使第二客户端也执行第二操作。由于第一客户端执行的动作会在第二客户端执行,第二客户端执行的动作也会在第一客户端执行,实现了第一客户端和第二客户端的同步,在此基础上,第一客户端执行第二客户端执 行过的动作、第二客户端执行第一客户端执行过的动作以及第一客户端和第二客户端各自执行的动作都不会造成两个客户端上的显示内容的混乱,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,同时还能保证两个客户端正常显示和运行。The first client can perform the first operation corresponding to the first data sent by the second client, and can also perform the second operation performed by the terminal where the first client is located, and then, when In the second operation, the second data is generated, and the second data is sent to the second client, so that the second client also performs the second operation. Since the action performed by the first client is performed on the second client, the action performed by the second client is also executed on the first client, and the synchronization between the first client and the second client is implemented. On this basis, The first client executes the second client The actions that have been performed, the actions performed by the second client to execute the first client, and the actions performed by the first client and the second client respectively do not cause confusion of the display content on the two clients, and the acceptance is resolved. The shared terminal cannot solve the technical problem of the content shared by the actively shared terminal, and can also ensure that the two clients display and run normally.
可选地,存放在同一个链接池中的通信链接所对应的第一客户端和第二客户端从属于相同或者不同的账户。Optionally, the first client and the second client corresponding to the communication link stored in the same link pool are subordinate to the same or different accounts.
在图5所示的例子中,处于同一个链接池中的链接所对应的客户端属于相同的账户,也就是说,一个用户在多个终端上的客户端采用相同的账户登录,那么多个客户端与服务器建立的链接就会被存放在同一个链接池中。In the example shown in FIG. 5, the clients corresponding to the links in the same link pool belong to the same account, that is, the clients of one user on multiple terminals log in with the same account, then multiple The links established between the client and the server are stored in the same link pool.
在图6所示的例子中,登录账户1(即user1)的客户端请求跟随浏览另外一个登录账户2(即user2)的客户端上显示的内容,在电脑上登录浏览器的user1对浏览器执行了操作(即第一操作),电脑上的浏览器将第一操作翻译为执行代码和执行对象(即第一数据),然后通过链接A发送到服务器。In the example shown in FIG. 6, the client requesting login account 1 (ie, user1) follows the content displayed on the client browsing another login account 2 (ie, user2), and logs in the browser user1 to the browser on the computer. The operation (ie, the first operation) is performed, and the browser on the computer translates the first operation into the execution code and the execution object (ie, the first data), and then sends it to the server through the link A.
服务器的链接池不仅存储链接A,还存储属于登录账户2(user2)的客户端的链接E、链接F和链接G,其中,链接E对应user2的电脑浏览器,链接F对应user2的手机浏览器,链接G对应user2的电视浏览器。即处于同一个链接池中的链接所对应的客户端属于不同的账户,也就是说,采用不同账户登录的客户端与服务器建立的链接,被服务器存储在同一个链接池中。不同的账户之间可以是好友关系,具体来说,当登录账户1的客户端请求跟随浏览另外一个登录账户2的客户端上显示的内容时,账户2可以是账户1在客户端上的一个好友,在登录账户1的客户端发出跟随请求后,服务器将录账户1的客户端与服务器建立的链接和登录账户2的客户端与服务器建立的链接存放在同一个链接池中。基于此,登录账户2的客户端也可以实现让登录账户1的客户端执行登录账户2的客户端执行过的动作。The server's link pool not only stores the link A, but also stores the link E, the link F, and the link G of the client belonging to the login account 2 (user2), wherein the link E corresponds to the user's computer browser, and the link F corresponds to the user2's mobile browser. The link G corresponds to the TV browser of user2. That is, the clients corresponding to the links in the same link pool belong to different accounts, that is, the links established by the client and the server that are logged in with different accounts are stored in the same link pool by the server. Different accounts may be a friend relationship. Specifically, when the client of the login account 1 requests to follow the content displayed on the client browsing another login account 2, the account 2 may be one of the account 1 on the client. The friend, after issuing the follow-up request to the client of the login account 1, the server stores the link established by the client of the account 1 with the server and the link established by the client of the login account 2 with the server in the same link pool. Based on this, the client of the login account 2 can also implement the action performed by the client of the login account 1 to execute the client of the login account 2.
通过上述实施例,由于处于两个终端上的两个客户端可以执行对方执行过的动作,还可以接收客户端所在的终端的控制,因此,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,得到了接受分享的终端可以对主动分享的终端所分享的内容进行操作的技术效 果。With the above embodiment, the two clients on the two terminals can perform the actions performed by the other party, and can also receive the control of the terminal where the client is located. Therefore, the terminal that accepts the sharing cannot solve the terminal that is actively shared. The technical problem of the shared content to operate, and the technical effect that the terminal that accepts sharing can operate the content shared by the actively shared terminal fruit.
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。It should be noted that, for the foregoing method embodiments, for the sake of simple description, they are all expressed as a series of action combinations, but those skilled in the art should understand that the present invention is not limited by the described action sequence. Because certain steps may be performed in other sequences or concurrently in accordance with the present invention. In addition, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present invention.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware, but in many cases, the former is A better implementation. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk, The optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
实施例3Example 3
根据本发明实施例,还提供了一种多屏互动的装置的实施例,该装置可以执行实施例1的多屏互动的方法。如图7所示,多屏互动的装置设置有第一客户端,该装置包括:获取单元70和执行单元72。According to an embodiment of the present invention, there is also provided an embodiment of a multi-screen interactive device, which can perform the multi-screen interaction method of Embodiment 1. As shown in FIG. 7, the multi-screen interactive device is provided with a first client, and the device includes an acquisition unit 70 and an execution unit 72.
获取单元,用于获取第二客户端发送给第一客户端的第一数据,其中,第一数据用于指示第二客户端执行了第一操作。The obtaining unit is configured to obtain first data that is sent by the second client to the first client, where the first data is used to indicate that the second client performs the first operation.
执行单元,用于获取第一数据所指示的第一操作,并执行获取的第一操作,其中,第一数据由服务器从第二客户端转发给第一客户端,第一客户端和第二客户端为设置在不同的设备终端上的相同客户端。An execution unit, configured to acquire a first operation indicated by the first data, and perform a first operation of obtaining, where the first data is forwarded by the server from the second client to the first client, the first client, and the second The client is the same client set up on a different device terminal.
第一客户端可以是图1所示的硬件环境中的任意一个终端上设置的客户端,第一客户端和第二客户端处于不同的终端上,属于相同的客户端。第一客户端和第二客户端可以执行相同的功能,例如,安装在手机、电脑和电视上的浏览器。The first client may be a client set on any one of the hardware environments shown in FIG. 1. The first client and the second client are on different terminals and belong to the same client. The first client and the second client can perform the same functions, for example, browsers installed on mobile phones, computers, and televisions.
第一数据可以是第二客户端执行的动作所对应的数据,例如,打开网页的动作所对应的数据,在搜索栏输入搜索内容的动作所对应的数据等。通过服务器的转发,第一数据被第一客户端接收,第一客户端获取第一数据所指示的第一操作,并执行该第一操作,从而使得第一客户端和第二客 户端执行相同的动作,实现了在不同的客户端上显示相同的内容,执行相同的动作。The first data may be data corresponding to an action performed by the second client, for example, data corresponding to an action of opening a web page, data corresponding to an action of inputting a search content in the search field, and the like. Receiving, by the server, the first data is received by the first client, the first client acquires the first operation indicated by the first data, and performs the first operation, so that the first client and the second client The client performs the same action, which enables the same content to be displayed on different clients and performs the same action.
通过上述实施例可知,与现有技术的投屏(一个终端上显示另外一个终端的投影,无法对投影的内容进行控制)相比,两个终端上的客户端分别执行相同的动作来实现两个终端上显示的内容相同,每个客户端都从属于其所在的终端,在接收另外一个客户端分享的内容的同时,还可以通过该客户端所在的终端进行控制,本质上是两个客户端的分别控制,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,达到了接受分享的终端可以对主动分享的终端所分享的内容进行操作的技术效果。It can be seen from the above embodiment that compared with the prior art projection screen (the projection of another terminal is displayed on one terminal, the projected content cannot be controlled), the clients on the two terminals respectively perform the same action to realize two The content displayed on each terminal is the same. Each client belongs to the terminal where it is located. When receiving the content shared by another client, it can also be controlled by the terminal where the client is located. In essence, it is two clients. The separate control of the terminal solves the technical problem that the terminal that accepts the sharing cannot operate on the content shared by the actively shared terminal, and achieves the technical effect that the terminal that accepts the sharing can operate the content shared by the actively shared terminal.
同时,由于客户端可以不依赖其他客户端进行单独控制,那么,每个客户端可以根据其所处的终端的特性进行控制,提高了对客户端控制的便捷性。At the same time, since the client can perform independent control without relying on other clients, each client can be controlled according to the characteristics of the terminal in which it is located, thereby improving the convenience of controlling the client.
例如,用电视版的视频播放器播放视频时,身边有手机或pad,在手机/pad上播放视频、输入视频名字和选择一个视频播放是很容易操作的事情。通过电视遥控器来操作电视版的视频播放器却相当困难。然而,采用本实施例提供的装置,可以在手机或pad上搜索视频、控制视频的播放,在电视上播放视频,或者利用电视遥控器控制电视上播放视频的暂停或者继续播放。For example, when playing a video with a TV version of a video player, it is easy to operate with a mobile phone or pad, playing a video on the phone/pad, entering a video name, and selecting a video to play. It is quite difficult to operate the TV version of the video player through the TV remote control. However, with the device provided in this embodiment, it is possible to search for video on a mobile phone or a pad, control video playback, play video on a television, or use a television remote control to control pause or resume playback of a video played on a television.
例如,用电脑浏览页面,但是手机滑动的操作更加方便,这时候,手机就相当于电脑的一个触摸屏。需要搜索时,利用电脑输入关键词。搜索的结果,可以通过滑动手机来进行浏览。由于手机上的滑动也作用在电脑上,电脑上搜索的结果也随着手机上的滑动而动,因而从电脑上也可以浏览搜索结果。采用多屏互动可以把电脑的大屏幕和输入的方便性同手机/pad操作的易用性集合起来,提高了操作的便捷性。For example, browsing a page with a computer, but the operation of sliding the phone is more convenient, at this time, the mobile phone is equivalent to a touch screen of the computer. When searching, use the computer to enter keywords. The results of the search can be viewed by swiping the phone. Since the sliding on the mobile phone also acts on the computer, the search result on the computer also moves with the sliding on the mobile phone, so the search result can also be browsed from the computer. Multi-screen interaction can combine the convenience of the large screen and input of the computer with the ease of use of the mobile phone/pad operation, which improves the convenience of operation.
例如,第一客户端是电视上的视频播放器,第二客户端是手机上的视频播放器,电视上的视频播放器和手机上的视频播放器的通信链接存储在服务器的同一个链接池中。手机上的视频播放器执行“播放A视频”的动作(即第一操作)后,播放视频。手机上的视频播放器将“播放A视频”的动作生成为第一数据,并将第一指令被发送至服务器。服务器将手机上的视频播放器的通信链路接收到的第一数据转发给同一个链接池中其他的通信 链路,其中一个通信链路是电视上的视频播放器的通信链路,从而电视上的视频播放器能够接收到第一数据。电视上的视频播放器获取第一数据对应的“播放A视频”动作,然后对电视上的视频播放器的视频进行播放。For example, the first client is a video player on the TV, the second client is a video player on the mobile phone, and the communication link between the video player on the TV and the video player on the mobile phone is stored in the same link pool of the server. in. After the video player on the mobile phone performs the action of “playing A video” (ie, the first operation), the video is played. The video player on the mobile phone generates an action of "playing A video" as the first data, and sends the first instruction to the server. The server forwards the first data received by the communication link of the video player on the mobile phone to other communications in the same link pool A link, one of which is a communication link of a video player on a television such that a video player on the television can receive the first data. The video player on the TV acquires the "Play A Video" action corresponding to the first data, and then plays the video of the video player on the TV.
可选地,执行单元包括:解析模块,用于从第一数据中解析出执行代码和执行对象,其中,利用执行代码对执行对象进行的操作为第一操作;操作模块,用于利用执行代码对执行对象进行操作。Optionally, the execution unit includes: a parsing module, configured to parse the execution code and the execution object from the first data, wherein the operation performed on the execution object by using the execution code is a first operation; and the operation module is configured to utilize the execution code Operate the execution object.
执行代码是每个客户端都可以识别的、统一的执行代码,每个执行代码对应一个动作,执行对象可以是执行代码所对应的动作所作用的对象,当执行代码对执行对象进行操作时就得到了第一操作,也就是说,第一操作包括执行代码对应的动作和执行对象所对应的对象。那么,客户端调用执行代码对执行对象执行操作,就实现了第一操作。The execution code is a unified execution code that each client can recognize, and each execution code corresponds to an action, and the execution object may be an object that acts on the action corresponding to the execution code, and when the execution code operates on the execution object, The first operation is obtained, that is, the first operation includes performing an action corresponding to the code and an object corresponding to the execution object. Then, the client invokes the execution code to perform an operation on the execution object, and the first operation is implemented.
例如,在上述例子中,第一客户端是电视上的视频播放器,第二客户端是手机上的视频播放器。手机上的视频播放器根据“播放A视频”生成第一数据。电视上的视频播放器获取第一数据后,从中解析出执行代码为“播放”,执行对象为“A视频”,则电视上的视频播放器对A视频执行播放的操作。For example, in the above example, the first client is a video player on the TV and the second client is a video player on the phone. The video player on the mobile phone generates the first data according to "Play A Video". After the video player on the TV obtains the first data, the execution code is "play" and the execution object is "A video", and the video player on the television performs the operation of playing the A video.
其中,第一客户端可以根据第二客户端发出的第一数据执行相应的第一操作,第一客户端也可以根据其从终端上接收到的指令执行相应的动作。例如,电视上的视频播放器接收遥控器的“暂停”信号而暂停播放A视频。The first client may perform a corresponding first operation according to the first data sent by the second client, and the first client may also perform a corresponding action according to the instruction received by the first client. For example, a video player on a television receives a "pause" signal from the remote control and pauses playback of the A video.
也就是说,第一客户端可以根据第二客户端发送的第一数据进行相同的操作,还可以单独执行其自身的控制,而不受第二客户端的控制,在第一客户端与第二客户端显示相同内容的同时,还能进行单独控制,从而提高了第一客户端和第二客户端的控制的灵活性。That is to say, the first client can perform the same operation according to the first data sent by the second client, and can also perform its own control separately, without being controlled by the second client, in the first client and the second. While the client displays the same content, it can also be individually controlled, thereby improving the flexibility of control of the first client and the second client.
实施例4Example 4
根据本发明实施例,还提供了一种服务器的实施例,该服务器可以执行实施例2的多屏互动的方法。如图8所示,多屏互动的装置设置有第一客户端,该装置包括:数据获取单元80和转发单元82。According to an embodiment of the present invention, there is also provided an embodiment of a server that can perform the method of multi-screen interaction of Embodiment 2. As shown in FIG. 8, the multi-screen interactive device is provided with a first client, and the device includes: a data acquisition unit 80 and a forwarding unit 82.
数据获取单元80用于获取第二客户端的第一数据。The data obtaining unit 80 is configured to acquire first data of the second client.
转发单元82用于将第一数据转发给第一客户端,以使第一客户端获取第一数据所指示的第一操作,并执行获取的第一操作,其中,第一数据用于指示第二客户端执行了第一操作第一数据由服务器从第二客户端转发给 第一客户端,第一客户端和第二客户端为设置在不同的设备终端上的相同客户端。The forwarding unit 82 is configured to forward the first data to the first client, so that the first client acquires the first operation indicated by the first data, and performs the first operation of the obtaining, where the first data is used to indicate the first The second client performs the first operation, and the first data is forwarded by the server from the second client to The first client, the first client and the second client are the same client set on different device terminals.
第一客户端可以是图1所示的硬件环境中的任意一个终端上设置的客户端,第一客户端和第二客户端处于不同的终端上,属于相同的客户端。第一客户端和第二客户端可以执行相同的功能,例如,安装在手机、电脑和电视上的浏览器。The first client may be a client set on any one of the hardware environments shown in FIG. 1. The first client and the second client are on different terminals and belong to the same client. The first client and the second client can perform the same functions, for example, browsers installed on mobile phones, computers, and televisions.
如图4所示,每个客户端(电脑、手机、平板和电视)都与服务器建立双向链接(即链接A、链接B、链接C和链接D),即每个客户端都可以向服务器发送数据,也可以接收服务器发来的数据,图4中的每个客户端都可以作为第一客户端或者第二客户端。服务器接收任意一个客户端的链接中的第一数据,转发给其他链接所对应的客户端。As shown in Figure 4, each client (computer, mobile, tablet, and TV) has a two-way link with the server (ie, link A, link B, link C, and link D), that is, each client can send to the server. The data can also receive data sent by the server. Each client in FIG. 4 can be used as the first client or the second client. The server receives the first data in the link of any one client and forwards it to the client corresponding to the other link.
第一数据可以是第二客户端执行的动作所对应的数据,例如,打开网页的动作所对应的数据,在搜索栏输入搜索内容的动作所对应的数据等。通过服务器的转发,第一数据被第一客户端接收,第一客户端获取第一数据所指示的第一操作,并执行该第一操作,从而使得第一客户端和第二客户端执行相同的动作,实现了在不同的客户端上显示相同的内容,执行相同的动作。The first data may be data corresponding to the action performed by the second client, for example, data corresponding to the action of opening the webpage, data corresponding to the action of inputting the search content in the search bar, and the like. Receiving, by the server, the first data is received by the first client, the first client acquires the first operation indicated by the first data, and performs the first operation, so that the first client and the second client perform the same The action is to display the same content on different clients and perform the same action.
通过上述实施例可知,与现有技术的投屏(一个终端上显示另外一个终端的投影,无法对投影的内容进行控制)相比,两个终端上的客户端分别执行相同的动作来实现两个终端上显示的内容相同,每个客户端都从属于其所在的终端,在接收另外一个客户端分享的内容的同时,还可以通过该客户端所在的终端进行控制,本质上是两个客户端的分别控制,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,达到了接受分享的终端可以对主动分享的终端所分享的内容进行操作的技术效果。It can be seen from the above embodiment that compared with the prior art projection screen (the projection of another terminal is displayed on one terminal, the projected content cannot be controlled), the clients on the two terminals respectively perform the same action to realize two The content displayed on each terminal is the same. Each client belongs to the terminal where it is located. When receiving the content shared by another client, it can also be controlled by the terminal where the client is located. In essence, it is two clients. The separate control of the terminal solves the technical problem that the terminal that accepts the sharing cannot operate on the content shared by the actively shared terminal, and achieves the technical effect that the terminal that accepts the sharing can operate the content shared by the actively shared terminal.
可选地,转发单元包括:存放模块,用于将第一客户端的第一通信链接和至少一个第二客户端的第二通信链接存放在同一个链接池中;转发模块,用于将通过一个第二通信链接接收到的数据转发到第一通信链接和至少一个第二客户端中其他的第二客户端的第二通信链接中,其中,接收到的数据包括第一数据。Optionally, the forwarding unit includes: a storage module, configured to store the first communication link of the first client and the second communication link of the at least one second client in the same link pool; and the forwarding module is configured to pass the first The data received by the second communication link is forwarded to the first communication link and the second communication link of the other second client of the at least one second client, wherein the received data includes the first data.
如图5所示,服务器将图4所示的四个链接(即链接A、链接B、链 接C和链接D)存放在同一个链接池中,电脑对浏览器(即第一客户端)执行操作(即第一操作)后,将执行的第一操作翻译为执行代码和执行对象(即生成第一数据)通过第一通信链接(即链接A)发送给服务器,服务器将接收到的第一数据通过三个第二通信链接(即链接B、链接C和链接D)分别发送给手机上的浏览器、平板上的浏览器和电视上的浏览器(即第二客户端和其他第二客户端),获得第一数据的浏览器将第一数据翻译为执行代码和参数,以执行第一操作。As shown in Figure 5, the server will have four links as shown in Figure 4 (ie, link A, link B, chain). C and link D) are stored in the same link pool, and after the computer performs an operation (ie, the first operation) on the browser (ie, the first client), the first operation performed is translated into the execution code and the execution object (ie, Generating the first data) sent to the server through the first communication link (ie, link A), and the server sends the received first data to the mobile phone through three second communication links (ie, link B, link C, and link D) a browser, a browser on the tablet, and a browser on the television (ie, the second client and the other second client), the browser that obtains the first data translates the first data into execution code and parameters to perform the first An operation.
服务器在转发第一数据时,还可以携带其他数据,例如,推送给手机上的浏览器、平板上的浏览器和电视上的浏览器的广告,在手机上的浏览器、平板上的浏览器和电视上的浏览器执行第一操作的同时,加载服务器推送的广告。When the server forwards the first data, it can also carry other data, for example, an advertisement that is pushed to a browser on the mobile phone, a browser on the tablet, and a browser on the television, a browser on the mobile phone, and a browser on the tablet. And the browser on the TV performs the first operation while loading the advertisement pushed by the server.
可选地,存放模块包括:判断子模块,用于判断是否接收到第一客户端发送的提示信息,提示信息用于提示第一客户端接收到第一指令或者第二指令,第一指令用于指示允许第一客户端向至少一个第二客户端发送第二数据,第二指令用于指示不允许第一客户端向至少一个第二客户端发送第二数据,第二数据用于指示第一客户端执行了第二操作;存放子模块,用于在判断出接收到提示信息后,将第一客户端的第一通信链接和至少一个第二客户端的第二通信链接存放在同一个链接池中。Optionally, the storage module includes: a determining submodule, configured to determine whether the prompt information sent by the first client is received, and the prompt information is used to prompt the first client to receive the first instruction or the second instruction, where the first instruction is used Instructing to allow the first client to send the second data to the at least one second client, the second instruction is for indicating that the first client is not allowed to send the second data to the at least one second client, where the second data is used to indicate a client performs a second operation; and the storage submodule is configured to store the first communication link of the first client and the second communication link of the at least one second client in the same link pool after determining that the prompt information is received in.
第一指令和第二指令可以是第一客户端上的一个功能,例如,第一指令为屏幕共享,第二指令为跟随浏览。当第一客户端的第一指令被触发时,第一客户端不仅可以接收第二客户端的第一数据执行第一操作,还可以将其执行的第二操作发送给第二客户端,从而控制第二客户端执行第二操作;当第一客户端的第二指令被触发时,第一客户端仅能够对第二客户端发来的第一数据进行响应来执行第一操作,即使第一客户端执行了第二操作也不会向第二客户端发送第二数据,不会控制第二客户端执行第二操作。The first instruction and the second instruction may be a function on the first client, for example, the first instruction is a screen sharing and the second instruction is a follow-up browsing. When the first instruction of the first client is triggered, the first client may not only receive the first data of the second client to perform the first operation, but also send the second operation performed by the first client to the second client, thereby controlling the first The second client performs the second operation; when the second instruction of the first client is triggered, the first client can only perform the first operation in response to the first data sent by the second client, even if the first client Performing the second operation also does not send the second data to the second client, and does not control the second client to perform the second operation.
例如,在冬天等车的过程中,需要利用浏览器或者新闻应用(第一客户端)浏览新闻,但是,由于天气太冷不想用手控制第一客户端。此时,用户可以开启第一客户端的跟随浏览功能,跟随好友浏览。即,好友的第二客户端展示什么内容,执行什么动作,在第一客户端上就展示相应的内容,执行相应的动作。该好友是第一客户端中的好友,向第二客户端请求跟随浏览,在第二客户端同意的情况下,接收第二客户端的第一数据。 For example, in the process of waiting for a car in winter, it is necessary to browse the news using a browser or a news application (first client), but the first client is not controlled by hand because the weather is too cold. At this point, the user can turn on the following browsing function of the first client and follow the browsing of the friend. That is, what content is displayed by the second client of the friend, what action is performed, the corresponding content is displayed on the first client, and the corresponding action is performed. The friend is a friend in the first client, requests the second client to follow the browsing, and if the second client agrees, receives the first data of the second client.
在跟随浏览的过程中,第一客户端仅仅是接收第二客户端的第一数据,执行第一数据对应的第一操作。需要说明的是,无论是跟随浏览还是屏幕共享,第一客户端仅仅从接收第一操作,并不会从第二客户端中获取执行第一操作后的执行结果,相当于,每个客户端都是独立执行自己的逻辑,指示接收的指令是从另外一个客户端获取的,而不是从其所在的终端获取的。例如,在第一操作为打开www.aaaa.com时,第一客户端向www.aaaa.com的服务器请求www.aaaa.com的内容,而不是从第二客户端中获取www.aaaa.com的内容。In the process of following the browsing, the first client only receives the first data of the second client, and performs the first operation corresponding to the first data. It should be noted that, whether it is following browsing or screen sharing, the first client only receives the first operation, and does not obtain the execution result after performing the first operation from the second client, which is equivalent to each client. They all execute their own logic independently, indicating that the received instruction is obtained from another client, not from the terminal it is on. For example, when the first operation is to open www.aaaa.com, the first client requests the content of www.aaaa.com from the server of www.aaaa.com instead of obtaining www.aaaa.com from the second client. Content.
由于第一客户端可以执行第二客户端发送的第一数据所对应的第一操作,还可以执行第一客户端所在的终端控制该第一客户端执行的第二操作,那么,当监测到第二操作时,生成第二数据,并向第二客户端发送第二数据,使第二客户端也执行第二操作。由于第一客户端执行的动作会在第二客户端执行,第二客户端执行的动作也会在第一客户端执行,实现了第一客户端和第二客户端的同步,在此基础上,第一客户端执行第二客户端执行过的动作、第二客户端执行第一客户端执行过的动作以及第一客户端和第二客户端各自执行的动作都不会造成两个客户端上的显示内容的混乱,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,同时还能保证两个客户端正常显示和运行。The first client can perform the first operation corresponding to the first data sent by the second client, and can also perform the second operation performed by the terminal where the first client is located, and then, when In the second operation, the second data is generated, and the second data is sent to the second client, so that the second client also performs the second operation. Since the action performed by the first client is performed on the second client, the action performed by the second client is also executed on the first client, and the synchronization between the first client and the second client is implemented. On this basis, The first client executes the action performed by the second client, the second client performs the action performed by the first client, and the actions performed by the first client and the second client are not caused by the two clients. The confusion of the display content solves the technical problem that the receiving terminal cannot operate the content shared by the actively shared terminal, and at the same time ensures that the two clients display and run normally.
可选地,存放在同一个链接池中的通信链接所对应的第一客户端和第二客户端从属于相同或者不同的账户。Optionally, the first client and the second client corresponding to the communication link stored in the same link pool are subordinate to the same or different accounts.
在图5所示的例子中,处于同一个链接池中的链接所对应的客户端属于相同的账户,也就是说,一个用户在多个终端上的客户端采用相同的账户登录,那么多个客户端与服务器建立的链接就会被存放在同一个链接池中。In the example shown in FIG. 5, the clients corresponding to the links in the same link pool belong to the same account, that is, the clients of one user on multiple terminals log in with the same account, then multiple The links established between the client and the server are stored in the same link pool.
在图6所示的例子中,登录账户1(即user1)的客户端请求跟随浏览另外一个登录账户2(即user2)的客户端上显示的内容,在电脑上登录浏览器的user1对浏览器执行了操作(即第一操作),电脑上的浏览器将第一操作翻译为执行代码和执行对象(即第一数据),然后通过链接A发送到服务器。In the example shown in FIG. 6, the client requesting login account 1 (ie, user1) follows the content displayed on the client browsing another login account 2 (ie, user2), and logs in the browser user1 to the browser on the computer. The operation (ie, the first operation) is performed, and the browser on the computer translates the first operation into the execution code and the execution object (ie, the first data), and then sends it to the server through the link A.
服务器的链接池不仅存储链接A,还存储属于登录账户2(user2)的客户端的链接E、链接F和链接G,其中,链接E对应user2的电脑浏览器, 链接F对应user2的手机浏览器,链接G对应user2的电视浏览器。即处于同一个链接池中的链接所对应的客户端属于不同的账户,也就是说,采用不同账户登录的客户端与服务器建立的链接,被服务器存储在同一个链接池中。不同的账户之间可以是好友关系,具体来说,当登录账户1的客户端请求跟随浏览另外一个登录账户2的客户端上显示的内容时,账户2可以是账户1在客户端上的一个好友,在登录账户1的客户端发出跟随请求后,服务器将录账户1的客户端与服务器建立的链接和登录账户2的客户端与服务器建立的链接存放在同一个链接池中。基于此,登录账户2的客户端也可以实现让登录账户1的客户端执行登录账户2的客户端执行过的动作。The server's link pool not only stores link A, but also stores link E, link F, and link G of the client belonging to login account 2 (user2), where link E corresponds to user2's computer browser. The link F corresponds to the mobile browser of user2, and the link G corresponds to the TV browser of user2. That is, the clients corresponding to the links in the same link pool belong to different accounts, that is, the links established by the client and the server that are logged in with different accounts are stored in the same link pool by the server. Different accounts may be a friend relationship. Specifically, when the client of the login account 1 requests to follow the content displayed on the client browsing another login account 2, the account 2 may be one of the account 1 on the client. The friend, after issuing the follow-up request to the client of the login account 1, the server stores the link established by the client of the account 1 with the server and the link established by the client of the login account 2 with the server in the same link pool. Based on this, the client of the login account 2 can also implement the action performed by the client of the login account 1 to execute the client of the login account 2.
通过上述实施例,由于处于两个终端上的两个客户端可以执行对方执行过的动作,还可以接收客户端所在的终端的控制,因此,解决了接受分享的终端无法对主动分享的终端所分享的内容进行操作的技术问题,得到了接受分享的终端可以对主动分享的终端所分享的内容进行操作的技术效果。With the above embodiment, the two clients on the two terminals can perform the actions performed by the other party, and can also receive the control of the terminal where the client is located. Therefore, the terminal that accepts the sharing cannot solve the terminal that is actively shared. The technical problem of the shared content being operated, and the technical effect that the terminal that accepts sharing can operate on the content shared by the actively shared terminal is obtained.
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。The serial numbers of the embodiments of the present invention are merely for the description, and do not represent the advantages and disadvantages of the embodiments.
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。In the above-mentioned embodiments of the present invention, the descriptions of the various embodiments are different, and the parts that are not detailed in a certain embodiment can be referred to the related descriptions of other embodiments.
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。In the several embodiments provided by the present application, it should be understood that the disclosed technical contents may be implemented in other manners. The device embodiments described above are merely illustrative. For example, the division of the unit is only a logical function division. In actual implementation, there may be another division manner. For example, multiple units or components may be combined or may be Integrate into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, unit or module, and may be electrical or otherwise.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在 一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated in In a unit. The above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。The integrated unit, if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium. A number of instructions are included to cause a computer device (which may be a personal computer, server or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention. The foregoing storage medium includes: a U disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic disk, or an optical disk, and the like. .
因此,本发明的上述技术构思还可以被实施为一种非暂时性机器可读存储介质,其上存储有可执行代码。当该可执行代码被处理器执行时,使该处理器执行上文所述的方法。Accordingly, the above technical concept of the present invention can also be embodied as a non-transitory machine readable storage medium having executable code stored thereon. When the executable code is executed by the processor, the processor is caused to perform the method described above.
另一方面,本发明的上述技术构思还可以被实施为一种计算设备,该计算设备包括处理器和非暂时性机器可读存储介质。该非暂时性机器可读存储介质上存储有可执行代码。当该可执行代码被该处理器执行时,使该处理器执行上文所述的方法。In another aspect, the above technical concept of the present invention can also be embodied as a computing device including a processor and a non-transitory machine readable storage medium. The non-transitory machine readable storage medium stores executable code thereon. When the executable code is executed by the processor, the processor is caused to perform the method described above.
另外,本发明的上述技术构思还可以被实施为一种计算机程序产品,该计算机程序产品包括可执行代码。当该可执行代码被处理器执行时,使该处理器执行上文所述的方法。Further, the above technical idea of the present invention can also be embodied as a computer program product including executable code. When the executable code is executed by the processor, the processor is caused to perform the method described above.
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。 The above description is only a preferred embodiment of the present invention, and it should be noted that those skilled in the art can also make several improvements and retouchings without departing from the principles of the present invention. It should be considered as the scope of protection of the present invention.

Claims (17)

  1. 一种多屏互动的方法,其特征在于,包括:A method for multi-screen interaction, characterized in that it comprises:
    第一客户端获取第二客户端的第一数据,其中,所述第一数据用于指示所述第二客户端执行第一操作;The first client acquires the first data of the second client, where the first data is used to instruct the second client to perform the first operation;
    所述第一客户端执行所述第一数据所指示的所述第一操作。The first client performs the first operation indicated by the first data.
  2. 根据权利要求1所述的方法,其特征在于,所述第一客户端执行所述第一数据所指示的所述第一操作包括:The method according to claim 1, wherein the first operation indicated by the first client to perform the first data comprises:
    所述第一客户端从所述第一数据中解析出执行代码和执行对象,其中,利用所述执行代码对所述执行对象进行的操作为所述第一操作;The first client parses an execution code and an execution object from the first data, wherein an operation performed on the execution object by using the execution code is the first operation;
    所述第一客户端利用所述执行代码对所述执行对象进行操作。The first client operates the execution object with the execution code.
  3. 根据权利要求1所述的方法,其特征在于,在第一客户端获取第二客户端的第一数据之前,所述方法还包括:The method according to claim 1, wherein before the first client acquires the first data of the second client, the method further includes:
    所述第一客户端判断是否接收到第一指令和第二指令,其中,所述第一指令用于指示允许所述第一客户端向所述第二客户端发送第二数据,所述第二指令用于指示不允许所述第一客户端向所述第二客户端发送所述第二数据,所述第二数据用于指示所述第一客户端执行了第二操作;Determining, by the first client, whether the first instruction and the second instruction are received, where the first instruction is used to indicate that the first client is allowed to send second data to the second client, where the The second instruction is configured to indicate that the first client is not allowed to send the second data to the second client, and the second data is used to indicate that the first client performs a second operation;
    若所述第一客户端判断出接收到所述第一指令,则监测所述第一数据和所述第一客户端执行的所述第二操作,其中,在监测到所述第二操作的情况下,生成所述第二数据并向所述第二客户端发送所述第二数据,以使所述第二客户端执行所述第二操作;And if the first client determines that the first instruction is received, monitoring the first data and the second operation performed by the first client, where the second operation is monitored In case, the second data is generated and sent to the second client, so that the second client performs the second operation;
    若所述第一客户端判断出接收到所述第二指令,则监测所述第二客户端发送的所述第一数据。And if the first client determines that the second instruction is received, monitoring the first data sent by the second client.
  4. 根据权利要求3所述的方法,其特征在于,在监测到所述第二操作的情况下,生成所述第二数据并向所述第二客户端发送所述第二数据包括:The method according to claim 3, wherein, in the case that the second operation is detected, generating the second data and transmitting the second data to the second client comprises:
    所述第一客户端获取所述第二操作的执行代码和执行对象;The first client acquires an execution code and an execution object of the second operation;
    所述第一客户端将所述执行代码和所述执行对象封装为所述第二数据,其中,所述执行代码能够被所述第二客户端执行,所述执行对象能够被所述第二 客户端通过所述执行代码进行操作。The first client encapsulates the execution code and the execution object into the second data, wherein the execution code can be executed by the second client, and the execution object can be the second The client operates through the execution code.
  5. 根据权利要求1所述的方法,其特征在于,所述第一客户端执行所述第一数据所指示的所述第一操作包括:The method according to claim 1, wherein the first operation indicated by the first client to perform the first data comprises:
    所述第一客户端执行所述第一数据所指示的所述第一操作包括下述至少一种操作:打开窗口、打开页面、滚动页面、输入文字、改变焦点、播放和暂停。The first operation indicated by the first client to execute the first data includes at least one of the following operations: opening a window, opening a page, scrolling a page, entering text, changing focus, playing, and pausing.
  6. 根据权利要求1所述的方法,其特征在于,所述第一数据由服务器从所述第二客户端转发给所述第一客户端。The method of claim 1 wherein said first data is forwarded by said server from said second client to said first client.
  7. 一种多屏互动的方法,其特征在于,包括:A method for multi-screen interaction, characterized in that it comprises:
    获取第二客户端的第一数据;Obtaining the first data of the second client;
    将所述第一数据转发给第一客户端,以使所述第一客户端执行所述第一数据所指示的第一操作,其中,所述第一数据用于指示所述第二客户端执行第一操作。Forwarding the first data to the first client, so that the first client performs a first operation indicated by the first data, where the first data is used to indicate the second client Perform the first operation.
  8. 根据权利要求7所述的方法,其特征在于,将所述第一数据转发给第一客户端包括:The method of claim 7, wherein forwarding the first data to the first client comprises:
    将所述第一客户端的第一通信链接和至少一个所述第二客户端的第二通信链接存放在同一个链接池中;Depositing the first communication link of the first client and the second communication link of the at least one second client in the same link pool;
    将通过一个所述第二通信链接接收到的数据转发到所述第一通信链接和至少一个所述第二客户端中其他的所述第二客户端的所述第二通信链接中,其中,所述接收到的数据包括所述第一数据。Forwarding data received through one of the second communication links to the second communication link of the first communication link and the other of the at least one of the second clients, wherein The received data includes the first data.
  9. 根据权利要求8所述的方法,其特征在于,将所述第一客户端的第一通信链接和至少一个所述第二客户端的第二通信链接存放在同一个链接池中包括:The method according to claim 8, wherein storing the first communication link of the first client and the second communication link of the at least one second client in the same link pool comprises:
    判断是否接收到所述第一客户端发送的提示信息,所述提示信息用于提示所述第一客户端接收到第一指令或者第二指令,所述第一指令用于指示允许所述第一客户端向至少一个所述第二客户端发送第二数据,所述第二指令用于指 示不允许所述第一客户端向至少一个所述第二客户端发送所述第二数据,所述第二数据用于指示所述第一客户端执行第二操作;Determining whether the prompt information sent by the first client is received, the prompt information is used to prompt the first client to receive a first instruction or a second instruction, where the first instruction is used to indicate that the first instruction is allowed a client transmitting second data to at least one of the second clients, the second instruction being used to refer to The first client is not allowed to send the second data to at least one of the second clients, and the second data is used to instruct the first client to perform a second operation;
    在判断出接收到所述提示信息后,将所述第一客户端的所述第一通信链接和至少一个所述第二客户端的所述第二通信链接存放在所述同一个链接池中。After determining that the prompt information is received, storing the first communication link of the first client and the second communication link of at least one of the second clients in the same link pool.
  10. 根据权利要求8或9所述的方法,其特征在于,存放在所述同一个链接池中的通信链接所对应的第一客户端和所述第二客户端从属于相同或者不同的账户。The method according to claim 8 or 9, wherein the first client and the second client corresponding to the communication link stored in the same link pool are subordinate to the same or different accounts.
  11. 一种多屏互动的装置,其特征在于,设置有第一客户端,所述装置包括:A device for multi-screen interaction, characterized in that a first client is provided, and the device comprises:
    获取单元,用于获取第二客户端发送给所述第一客户端的第一数据,其中,所述第一数据用于指示所述第二客户端执行第一操作;An acquiring unit, configured to acquire first data that is sent by the second client to the first client, where the first data is used to instruct the second client to perform a first operation;
    执行单元,用于执行所述第一数据所指示的所述第一操作。And an execution unit, configured to execute the first operation indicated by the first data.
  12. 根据权利要求11所述的装置,其特征在于,所述执行单元包括:The apparatus according to claim 11, wherein the execution unit comprises:
    解析模块,用于从所述第一数据中解析出执行代码和执行对象,其中,利用所述执行代码对所述执行对象进行的操作为所述第一操作;a parsing module, configured to parse the execution code and the execution object from the first data, wherein the operation performed on the execution object by using the execution code is the first operation;
    操作模块,用于利用所述执行代码对所述执行对象进行操作。An operation module, configured to operate the execution object by using the execution code.
  13. 一种服务器,其特征在于,包括:A server, comprising:
    数据获取单元,用于获取第二客户端的第一数据;a data obtaining unit, configured to acquire first data of the second client;
    转发单元,用于将所述第一数据转发给第一客户端,以使所述第一客户端执行所述第一数据所指示的第一操作,其中,所述第一数据用于指示所述第二客户端执行第一操作。a forwarding unit, configured to forward the first data to the first client, to enable the first client to perform a first operation indicated by the first data, where the first data is used to indicate The second client performs the first operation.
  14. 根据权利要求13所述的服务器,其特征在于,所述转发单元包括:The server according to claim 13, wherein the forwarding unit comprises:
    存放模块,用于将所述第一客户端的第一通信链接和至少一个所述第二客户端的第二通信链接存放在同一个链接池中;a storage module, configured to store the first communication link of the first client and the second communication link of the at least one second client in a same link pool;
    转发模块,用于将通过一个所述第二通信链接接收到的数据转发到所述第一通信链接和至少一个所述第二客户端中其他的所述第二客户端的所述第二 通信链接中,其中,所述接收到的数据包括所述第一数据。a forwarding module, configured to forward data received through one of the second communication links to the first communication link and the second of the at least one of the other second clients of the second client In the communication link, wherein the received data includes the first data.
  15. 根据权利要求14所述的服务器,其特征在于,所述存放模块包括:The server according to claim 14, wherein the storage module comprises:
    判断子模块,用于判断是否接收到所述第一客户端发送的提示信息,所述提示信息用于提示所述第一客户端接收到第一指令或者第二指令,所述第一指令用于指示允许所述第一客户端向至少一个所述第二客户端发送第二数据,所述第二指令用于指示不允许所述第一客户端向至少一个所述第二客户端发送所述第二数据,所述第二数据用于指示所述第一客户端执行第二操作;a determining sub-module, configured to determine whether the prompt information sent by the first client is received, where the prompt information is used to prompt the first client to receive a first instruction or a second instruction, where the first instruction is used Instructing to allow the first client to send second data to at least one of the second clients, the second instruction to indicate that the first client is not allowed to send to the at least one of the second clients The second data is used to indicate that the first client performs a second operation;
    存放子模块,用于在判断出接收到所述提示信息后,将所述第一客户端的所述第一通信链接和至少一个所述第二客户端的所述第二通信链接存放在所述同一个链接池中。a storage submodule, configured to store the first communication link of the first client and the second communication link of the at least one second client in the same after determining that the prompt information is received In a link pool.
  16. 根据权利要求14或15所述的服务器,其特征在于,存放在所述同一个链接池中的通信链接所对应的第一客户端和所述第二客户端从属于相同或者不同的账户。The server according to claim 14 or 15, wherein the first client and the second client corresponding to the communication link stored in the same link pool are subordinate to the same or different accounts.
  17. 一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被处理器执行时,使所述处理器执行根据权利要求1至10中任一项所述的方法。 A non-transitory machine readable storage medium having stored thereon executable code that, when executed by a processor, causes the processor to perform the method of any one of claims 1 to 10. method.
PCT/CN2016/105454 2016-01-15 2016-11-11 Multi-screen interaction method, device, server and non-transitory machine-readable storage medium WO2017121180A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610029643.8 2016-01-15
CN201610029643.8A CN106980479B (en) 2016-01-15 2016-01-15 Multi-screen interaction method and device and server

Publications (1)

Publication Number Publication Date
WO2017121180A1 true WO2017121180A1 (en) 2017-07-20

Family

ID=59310745

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/105454 WO2017121180A1 (en) 2016-01-15 2016-11-11 Multi-screen interaction method, device, server and non-transitory machine-readable storage medium

Country Status (2)

Country Link
CN (1) CN106980479B (en)
WO (1) WO2017121180A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769262A (en) * 2018-07-04 2018-11-06 厦门声连网信息科技有限公司 A kind of big screen information supplying system, large screen device and method
CN114327313A (en) * 2020-09-29 2022-04-12 北京小米移动软件有限公司 Screen projection method, device and medium
CN115379279A (en) * 2022-07-22 2022-11-22 深圳市酷开网络科技股份有限公司 Multi-screen linkage interaction method, device and system, storage medium and electronic equipment

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769261B (en) * 2018-07-04 2023-11-24 厦门声连网信息科技有限公司 Multi-screen interaction system, method and interaction screen equipment
CN109189356A (en) * 2018-08-28 2019-01-11 万得信息技术股份有限公司 A kind of multiple terminals roller blind system and method
CN109831691A (en) * 2019-03-12 2019-05-31 刘耕 A kind of multi-screen interaction method
CN110515526A (en) * 2019-09-03 2019-11-29 王庆军 A kind of multi-screen interaction method and device
CN114189946A (en) * 2020-09-15 2022-03-15 华为技术有限公司 Data sharing method, electronic device and system
CN115145665A (en) * 2021-03-31 2022-10-04 华为技术有限公司 Display method, electronic equipment and system
CN115145519A (en) * 2021-03-31 2022-10-04 华为技术有限公司 Display method, electronic equipment and system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8279258B2 (en) * 2006-09-21 2012-10-02 Seiko Epson Corporation Image display device, image display system, and network connection method
CN103957452A (en) * 2014-03-31 2014-07-30 深圳市同洲电子股份有限公司 Video signal transmission method and device
CN104618793A (en) * 2015-02-28 2015-05-13 联想(北京)有限公司 Information processing method and electronic equipment
CN104978156A (en) * 2014-04-02 2015-10-14 联想(北京)有限公司 Multi-screen display method and multi-screen display processing device
CN105227986A (en) * 2015-09-24 2016-01-06 小米科技有限责任公司 Synchronization processing method and device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103491119B (en) * 2012-06-13 2018-05-22 腾讯科技(深圳)有限公司 Multi-screen interaction system and multi-screen interaction method
CN103546435A (en) * 2012-07-13 2014-01-29 中兴通讯股份有限公司 Data synchronizing method and server
CN103795569A (en) * 2014-01-22 2014-05-14 亿赞普(北京)科技有限公司 Server connection method and device based on connection pool

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8279258B2 (en) * 2006-09-21 2012-10-02 Seiko Epson Corporation Image display device, image display system, and network connection method
CN103957452A (en) * 2014-03-31 2014-07-30 深圳市同洲电子股份有限公司 Video signal transmission method and device
CN104978156A (en) * 2014-04-02 2015-10-14 联想(北京)有限公司 Multi-screen display method and multi-screen display processing device
CN104618793A (en) * 2015-02-28 2015-05-13 联想(北京)有限公司 Information processing method and electronic equipment
CN105227986A (en) * 2015-09-24 2016-01-06 小米科技有限责任公司 Synchronization processing method and device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108769262A (en) * 2018-07-04 2018-11-06 厦门声连网信息科技有限公司 A kind of big screen information supplying system, large screen device and method
CN108769262B (en) * 2018-07-04 2023-11-17 厦门声连网信息科技有限公司 Large-screen information pushing system, large-screen equipment and method
CN114327313A (en) * 2020-09-29 2022-04-12 北京小米移动软件有限公司 Screen projection method, device and medium
CN115379279A (en) * 2022-07-22 2022-11-22 深圳市酷开网络科技股份有限公司 Multi-screen linkage interaction method, device and system, storage medium and electronic equipment

Also Published As

Publication number Publication date
CN106980479B (en) 2020-07-14
CN106980479A (en) 2017-07-25

Similar Documents

Publication Publication Date Title
WO2017121180A1 (en) Multi-screen interaction method, device, server and non-transitory machine-readable storage medium
US11601719B2 (en) Method for processing television screenshot, smart television, and storage medium
US10827011B2 (en) Presence enhanced co-browsing customer support
US10474728B2 (en) Seamless browsing between devices
KR102019410B1 (en) Methods and systems for providing functional extensions with a landing page of a creative
US9984408B1 (en) Method, medium, and system for live video cooperative shopping
US10986470B2 (en) Bi-directional integration and control of managed and unmanaged devices
JP6685911B2 (en) Apparatus and method for peer-assisted electronic commerce shopping
US9971612B2 (en) Widget execution device and associated application for use therewith
US10034057B2 (en) Message processing method, device, gateway, STB and IPTV
US20160366461A1 (en) Method and Device for Mobile Communication Terminal to Control Smart TV to Play Video File
US20140196023A1 (en) System and method to create and control a software appliance
WO2019174641A1 (en) Display device
CN108055590A (en) The display methods of the graphic user interface of television image sectional drawing
WO2017215568A1 (en) Method, device and system for communicating with call center
WO2016199316A1 (en) Website simulated screen sharing system
CN111901695A (en) Video content interception method, device and equipment and computer storage medium
TW201423451A (en) Methods for handling URLs to trigger functionalities
CN108574878B (en) Data interaction method and device
CN107241651B (en) Media data playing method and device and intelligent terminal
EP3113030B1 (en) Method for providing image data based on cloud streaming, apparatus and system therefor
JP2017527872A (en) Cloud streaming service providing method, apparatus and system therefor, and computer-readable recording medium on which cloud streaming script code is recorded
KR102612580B1 (en) Media providing server, method of switching to other centent through a trigger area and computer program
CN110430383A (en) Terminal, signal server, audio/video communication method and computer storage medium
US20140129633A1 (en) Interaction system and investigation method

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: 16884732

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16884732

Country of ref document: EP

Kind code of ref document: A1