WO2016019495A1 - 终端、服务器及终端控制方法 - Google Patents

终端、服务器及终端控制方法 Download PDF

Info

Publication number
WO2016019495A1
WO2016019495A1 PCT/CN2014/083643 CN2014083643W WO2016019495A1 WO 2016019495 A1 WO2016019495 A1 WO 2016019495A1 CN 2014083643 W CN2014083643 W CN 2014083643W WO 2016019495 A1 WO2016019495 A1 WO 2016019495A1
Authority
WO
WIPO (PCT)
Prior art keywords
control
terminal
information
controlled terminal
channel
Prior art date
Application number
PCT/CN2014/083643
Other languages
English (en)
French (fr)
Inventor
吉昊
卜德锋
邹现军
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to AU2014403138A priority Critical patent/AU2014403138B2/en
Priority to US15/501,698 priority patent/US9961210B2/en
Priority to EP14899294.4A priority patent/EP3163972B1/en
Priority to PCT/CN2014/083643 priority patent/WO2016019495A1/zh
Priority to BR112017002073-4A priority patent/BR112017002073B1/pt
Priority to KR1020177004664A priority patent/KR101842559B1/ko
Priority to CN201480046287.XA priority patent/CN105493621B/zh
Priority to JP2017506374A priority patent/JP6368033B2/ja
Publication of WO2016019495A1 publication Critical patent/WO2016019495A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/0202Portable telephone sets, e.g. cordless phones, mobile phones or bar type handsets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M11/00Telephonic communication systems specially adapted for combination with other electrical systems
    • H04M11/007Telephonic communication systems specially adapted for combination with other electrical systems with remote control systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/04Wireless resource allocation
    • H04W72/044Wireless resource allocation based on the type of the allocated resource
    • H04W72/0453Resources in frequency domain, e.g. a carrier in FDMA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W92/00Interfaces specially adapted for wireless communication networks
    • H04W92/16Interfaces between hierarchically similar devices
    • H04W92/18Interfaces between hierarchically similar devices between terminal devices

Definitions

  • the present invention relates to the field of mobile terminals, and in particular, to a terminal, a server, and a terminal control method. Background technique
  • the control terminal In the remote control between the existing mobile terminals, the control terminal first establishes a connection with the controlled terminal, and the controlled terminal sends the screen data to the control terminal through the connection, and the control terminal displays the screen on the screen of the control terminal according to the screen data.
  • a screen shot of the controlled terminal the user touches the screenshot of the controlled terminal in the screen of the control terminal, and the control terminal transmits the received operation information to the controlled terminal through the connection, and the controlled terminal according to the The operation information is operated accordingly to achieve the purpose of remote control.
  • the embodiment of the invention provides a terminal, a server and a terminal control method.
  • the technical solution is as follows:
  • control terminal includes:
  • a first channel establishing module configured to establish a control channel and a data channel between the controlled terminal, and an image data receiving module, configured to receive screen image data sent by the controlled terminal through the data channel, the screen image Data is used to indicate a screenshot of the controlled terminal;
  • a display module configured to display a screenshot of the controlled terminal according to the screen image data; and an operation information generating module, configured to generate corresponding operation information according to the operation based on the screenshot;
  • the operation information sending module is configured to send the operation information to the controlled terminal through the control channel, and the controlled terminal performs a corresponding control operation according to the operation information.
  • the first channel establishing module includes: a first channel establishing submodule, configured to establish, by using the server, a control channel between the controlled terminal and the controlled terminal;
  • a second channel establishing submodule configured to establish a data channel with the controlled terminal by using the server and the control channel.
  • the second channel establishing submodule includes:
  • a first address obtaining unit configured to acquire address information of the control terminal from the server, where the address information includes a local address, a mapped address of a network address translation, and a relay address of a relay penetration network address translation;
  • a second address obtaining unit configured to acquire address information of the controlled terminal from the server or the controlled terminal
  • a first path determining unit configured to determine a connection path according to address information of the control terminal and address information of the controlled terminal
  • a first establishing unit configured to establish the data channel according to the connection path.
  • the operation information includes touch information, a button At least one of the information or the voice information, the operation information generating module, comprising: a monitoring sub-module, configured to: when the operation information is touch information, monitor a touch event corresponding to the operation;
  • a first generation submodule configured to generate the operation information according to the touch event
  • a first button type determining submodule configured to determine a button type corresponding to the operation when the operation information is button information
  • a second generation submodule configured to generate the operation information that includes an identifier corresponding to the button type
  • a voice recognition submodule configured to: when the operation information is voice information, corresponding to the operation Speech recognition as text;
  • a second generation submodule configured to extract a control instruction included in the text, and generate the operation information that includes an identifier corresponding to the control instruction.
  • the first generating sub-module includes: a first generating unit or a second generating unit;
  • the first generating unit is configured to serialize the touch event into a byte stream, and generate the operation information including the byte stream;
  • the second generating unit is configured to extract key information of the touch event, encode the key information into a specified format file, and generate the operation information that includes the specified format file, where the key information includes an event type. , touch coordinates and / or touch strength.
  • the first path determining unit includes:
  • a synthesizing subunit configured to synthesize address information of the control terminal and address information of the controlled terminal into an address pair
  • test subunit configured to perform connectivity testing on the address pair
  • a control terminal comprising: a bus, and a processor, a memory, a transmitter and a receiver connected to the bus.
  • the memory is configured to store a plurality of instructions, the instructions being configured to be executed by the processor;
  • the processor is configured to control the receiver and the transmitter to establish a control channel and a data channel between the controlled terminal and the controlled terminal;
  • the receiver is configured to receive screen image data sent by the controlled terminal through the data channel, where the screen image data is used to indicate a screenshot of the controlled terminal;
  • the processor is configured to display a screenshot of the controlled terminal in the display device according to the screen image data, and generate corresponding operation information according to the operation based on the screenshot;
  • the processor is configured to control the transmitter to send the operation information to the controlled terminal by using the control channel, and the controlled terminal performs a corresponding control operation according to the operation information.
  • the processor is configured to control the receiver and the transmitter, and establish, by the server, a control channel with the controlled terminal;
  • the processor is configured to control the receiver and the transmitter, and establish a data channel with the controlled terminal by using the server and the control channel.
  • the processor is configured to control the receiver and the transmitter, and obtain the Controlling address information of the terminal, where the address information includes a local address, a mapped address of the network address translation, and a relay address of the relay penetration network address translation;
  • the processor is configured to control the receiver and the transmitter, and obtain address information of the controlled terminal from the server or the controlled terminal;
  • the processor is configured to determine a connection path according to the address information of the control terminal and the address information of the controlled terminal;
  • the processor is configured to control the receiver and the transmitter, and establish the data channel according to the connection path.
  • the operation information includes touch information, a button At least one of information or voice information;
  • the processor is configured to: when the operation information is touch information, monitor a touch event corresponding to the operation, and generate the operation information according to the touch event;
  • the processor is configured to: when the operation information is button information, determine a button type corresponding to the operation, and generate the operation information that includes an identifier corresponding to the button type;
  • the processor is configured to: when the operation information is voice information, identify a voice corresponding to the operation as a text, extract a control instruction included in the text, and generate the identifier that includes an identifier corresponding to the control instruction. Operational information.
  • the processor is configured to serialize the touch event into a byte stream, and generate the The operation information of the byte stream;
  • the processor is configured to extract key information of the touch event, encode the key information into a specified format file, and generate the operation information that includes the specified format file, where the key information includes an event type and a touch Control coordinates and / or touch strength.
  • the processor is configured to synthesize address information of the control terminal and address information of the controlled terminal As an address pair, the connectivity test is performed on the address pair, and the connection path is determined according to the result of the connectivity test.
  • a controlled terminal is provided, where the controlled terminal includes:
  • a second channel establishing module configured to establish a control channel and a data channel between the control terminal
  • an image data acquiring module configured to acquire screen image data for indicating a screenshot of the controlled terminal
  • an image data sending module configured to send the screen image data to the control terminal by using the data channel, where the control terminal displays a screen cut of the controlled terminal according to the screen data image;
  • An operation information receiving module configured to receive operation information that is sent by the control terminal by using the control channel, where the operation information is information generated by the control terminal according to the operation based on the screenshot;
  • an execution module configured to perform a corresponding control operation according to the operation information.
  • the second channel establishing module includes: a third channel establishing submodule, configured to establish, by using the server, a control channel between the control terminal and the control terminal;
  • the fourth channel establishes a sub-module for establishing a data channel with the control terminal through the server and the control channel.
  • the fourth channel establishing submodule includes:
  • a third address obtaining unit configured to acquire address information of the controlled terminal from the server, where the address information includes a local address, a mapped address of a network address translation, and a relay address of a relay-penetrating network address translation;
  • a fourth address obtaining unit configured to acquire address information of the control terminal from the server or the control terminal;
  • a second path determining unit configured to determine a connection path according to address information of the control terminal and address information of the controlled terminal
  • a second establishing unit configured to establish the data channel according to the connection path.
  • the operation information includes touch information, a button At least one of information or voice information
  • the execution module includes:
  • an event atomic module configured to: when the operation information is touch information, restore a touch event corresponding to the touch operation according to the control information; a first execution sub-module, configured to perform the control operation according to the touch event; and a second button type determining sub-module, configured to determine, according to the identifier included in the operation information, when the operation information is button information The type of the button corresponding to the button operation;
  • a second execution submodule configured to perform the control operation according to the type of the button
  • the instruction determining submodule is configured to determine, according to the identifier included in the operation information, a control instruction corresponding to the voice operation when the operation information is voice information;
  • a third execution submodule configured to perform the control operation according to the control instruction.
  • the event is further an atomic module, including: a first restore unit or a second restore unit;
  • the first restoring unit is configured to deserialize the byte stream included in the operation information to restore the touch event
  • the first restoring unit is configured to extract key information of the touch event from a specified format file included in the operation information, and restore the touch event according to the key information, where the key information includes an event type , touch coordinates and / or touch strength.
  • a controlled terminal comprising: a bus, and a processor, a memory, a transmitter, and a receiver connected to the bus.
  • the memory is configured to store a plurality of instructions, the instructions being configured to be executed by the processor;
  • the processor is configured to control the receiver and the transmitter, establish a control channel and a data channel between the control terminal;
  • the processor configured to acquire screen image data for indicating a screenshot of the controlled terminal
  • the processor is configured to control the transmitter, send the screen image data to the control terminal by using the data channel, and display, by the control terminal, a screenshot of the controlled terminal according to the screen data image ;
  • the receiver is configured to receive operation information that is sent by the control terminal by using the control channel, where the operation information is information generated by the control terminal according to the operation based on the screenshot; A corresponding control operation is performed based on the operation information.
  • the processor is configured to control the receiver and the transmitter, and establish a control channel with the control terminal by using the server;
  • the processor configured to control the receiver and the transmitter, by using the server and the The control channel establishes a data path with the control terminal.
  • the processor is configured to control the receiver and the transmitter, and obtain the The address information of the controlled terminal, where the address information includes a local address, a mapped address of the network address translation, and a relay address of the relayed network address translation;
  • the processor is configured to control the receiver and the transmitter, and obtain address information of the control terminal from the server or the control terminal;
  • the processor is configured to determine a connection path according to the address information of the control terminal and the address information of the controlled terminal;
  • the processor is configured to control the receiver and the transmitter, and establish the data channel according to the connection path.
  • the operation information includes touch information, a button At least one of information or voice information;
  • the processor is configured to: when the operation information is the touch information, restore the touch event corresponding to the touch operation according to the control information, and perform the control operation according to the touch event;
  • the processor is configured to determine, according to the identifier included in the operation information, a button type corresponding to the button operation, and perform the control operation according to the button type, when the operation information is a button information;
  • the processor is configured to determine, according to the identifier included in the operation information, a control instruction corresponding to the voice operation, and perform the control operation according to the control instruction, when the operation information is voice information.
  • the processor is configured to perform deserialization on a byte stream included in the operation information, to restore The touch event;
  • the processor is configured to extract key information of the touch event from a specified format file included in the operation information, and restore the touch event according to the key information, where the key information includes an event type and a touch Control coordinates and / or touch strength.
  • a server where the server includes:
  • control channel establishing module configured to establish a control channel between the control terminal and the controlled terminal
  • a first address providing module configured to provide address information of the control terminal to the control terminal, and provide address information of the controlled terminal to the controlled terminal, so that the control terminal and the controlled terminal
  • the control terminal or the controlled terminal determines a connection path according to the address information of the control terminal and the address information of the controlled terminal, and establishes a connection path according to the connection path. Determining a data channel, and controlling, by the control terminal, the controlled terminal through the control channel and the data channel;
  • a second address providing module providing the control terminal with address information of the control terminal and address information of the controlled terminal, wherein the control terminal 4 refers to the address information of the control terminal and the controlled terminal
  • the address information determines a connection path, and establishes the data channel according to the connection path, and controls, by the control terminal, the controlled terminal through the control channel and the data channel;
  • a third address providing module The controlled terminal provides the address information of the control terminal and the address information of the controlled terminal, and the controlled terminal 4 determines the connection path according to the address information of the control terminal and the address information of the controlled terminal. And establishing the data channel according to the connection path, and controlling, by the control terminal, the controlled terminal by using the control channel and the data channel.
  • control channel establishing module includes: a request receiving submodule, configured to: after the control terminal accesses the server, receive a control channel sent by the control terminal Establish a request;
  • a determining sub-module configured to determine whether the controlled terminal has accessed the server
  • a channel establishing sub-module configured to: if the determining result of the determining sub-module is that the controlled terminal has accessed the server, Establishing the control channel between the control terminal and the controlled terminal.
  • control channel establishing module further includes:
  • a notification sub-module configured to send an access notification to the controlled terminal if the determined result of the determining sub-module is that the controlled terminal does not access the server, where the access notification is used to indicate the The controlled terminal accesses the server.
  • a server comprising: a bus, and a processor, a memory, a transmitter, and a receiver coupled to the bus.
  • the memory is configured to store a plurality of instructions, the instructions being configured to be executed by the processor;
  • the processor is configured to control the receiver and the transmitter to establish a control channel between the control terminal and the controlled terminal;
  • the processor configured to control the receiver and the transmitter to provide the Controlling address information of the terminal, and providing address information of the controlled terminal to the controlled terminal, so that the control terminal and the controlled terminal exchange address information through the control channel, and the control is performed by the control
  • the terminal or the controlled terminal determines a connection path according to the address information of the control terminal and the address information of the controlled terminal, and establishes the data channel according to the connection path, and the control terminal passes the control channel and The data channel controls the controlled terminal; or the processor is configured to provide the control terminal with address information of the control terminal and address information of the controlled terminal, by the control terminal Determining a connection path according to address information of the control terminal and address information of the controlled terminal, and establishing the data channel according to the connection path, and the control terminal is configured by the control channel and the data channel
  • the controlled terminal performs control; or the processor is configured to provide the controlled terminal with address information of the control terminal and The address information of the controlled terminal is determined by the controlled terminal 4 according to the address information of the control terminal and the address information of
  • the receiver is configured to: after the control terminal accesses the server, receive a control channel establishment request sent by the control terminal;
  • the processor is configured to determine whether the controlled terminal has accessed the server, and if the determined result is that the controlled terminal has accessed the server, controlling the receiver and the transmitter to establish a location The control channel between the control terminal and the controlled terminal.
  • the processor is configured to: if the determined result is that the controlled terminal does not access the server, control The transmitter sends an access notification to the controlled terminal, where the access notification is used to indicate that the controlled terminal accesses the server.
  • a terminal control method for controlling a terminal, where the method includes: establishing a control channel and a data channel between the controlled terminal and the controlled terminal;
  • the establishing and controlling the control terminal Channels and data channels including:
  • a data channel with the controlled terminal is established by the server and the control channel.
  • the address information includes a local address, a mapped address of a network address translation, and a relay address of a relay-penetrating network address translation;
  • the operation information includes touch information, a button At least one of the information or the voice information, the generating the operation information according to the operation based on the screenshot, comprising:
  • the operation information is the touch information
  • the touch event corresponding to the operation is monitored, and the operation information is generated according to the touch event;
  • the operation information is voice information
  • the voice corresponding to the operation is recognized as text, and the control instruction included in the text is extracted, and the operation information including the identifier corresponding to the control instruction is generated.
  • the generating the operation information according to the touch event includes:
  • the determining the connection manner according to the address information of the control terminal and the address information of the controlled terminal Trails including:
  • the eighth aspect provides a terminal control method, which is used in a controlled terminal, where the method includes: establishing a control channel and a data channel between the control terminal and the control terminal;
  • a corresponding control operation is performed based on the operation information.
  • the establishing a control channel and a data channel between the control terminal include:
  • the establishing, by the server and the control channel, a data channel between the control terminal and the control terminal includes:
  • the address information includes a local address, a mapped address of a network address translation, and a relay address of a relay-penetrating network address translation;
  • the operation information includes touch information and a button At least one of the information or the voice information, the performing the corresponding control operation according to the operation information, including:
  • the operation information is the touch information
  • the touch event corresponding to the operation is restored according to the operation information, and the control operation is performed according to the touch event;
  • the operation information is the button information, determining a button type corresponding to the operation according to the identifier included in the operation information, and performing the control operation according to the button type;
  • the operation information is voice information, determining a control instruction corresponding to the operation according to the identifier included in the operation information, and performing the control operation according to the control instruction.
  • the determining, by the control information, the touch event corresponding to the touch operation includes:
  • the key information is used to restore the touch event, and the key information includes an event type, a touch coordinate, and/or a touch force.
  • a ninth aspect provides a terminal control method, which is used in a server, where the method includes: establishing a control channel between the control terminal and the controlled terminal;
  • the control terminal or the controlled terminal determines a connection path according to the address information of the control terminal and the address information of the controlled terminal, and establishes the data channel according to the connection path, and Controlling, by the control terminal, the controlled terminal, by using the control channel and the data channel; or providing the control terminal with address information of the control terminal and address information of the controlled terminal, by the control
  • the terminal 4 determines a connection path according to the address information of the control terminal and the address information of the controlled terminal, and establishes the data channel according to the connection path, and the control terminal passes the control channel and the data channel Controlling the controlled terminal; or providing the controlled terminal with address information of the control terminal and the The address information of the controlled terminal, the controlled terminal determines a connection path according to the address information of the control terminal and the address information of the controlled terminal, and establishes the data channel according to the connection path
  • the establishing a control channel between the control terminal and the controlled terminal includes:
  • control terminal After the control terminal accesses the server, receiving a control channel establishment request sent by the control terminal;
  • the control channel between the control terminal and the controlled terminal is established.
  • the second possible implementation of the ninth aspect The method further includes:
  • FIG. 1 is a schematic structural diagram of a control terminal according to an embodiment of the present invention.
  • FIG. 2 is a schematic structural diagram of a control terminal according to another embodiment of the present invention.
  • FIG. 3 is a schematic diagram of touch coordinate mapping provided by another embodiment of the present invention.
  • FIG. 4 is a schematic diagram of remote control operation according to another embodiment of the present invention.
  • FIG. 5 is a schematic diagram of remote graffiti operation according to another embodiment of the present invention.
  • FIG. 6 is a block diagram of a control terminal according to an embodiment of the present invention.
  • FIG. 7 is a block diagram of a control terminal according to another embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a controlled terminal according to an embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram of a controlled terminal according to another embodiment of the present invention.
  • FIG. 10 is a block diagram of a controlled terminal according to an embodiment of the present invention.
  • FIG. 11 is a block diagram of a controlled terminal according to another embodiment of the present invention.
  • FIG. 12 is a schematic structural diagram of a server according to an embodiment of the present invention.
  • FIG. 13 is a schematic structural diagram of a server according to another embodiment of the present invention.
  • FIG. 14 is a block diagram of a server according to an embodiment of the present invention.
  • FIG. 15 is a block diagram of a server according to another embodiment of the present invention.
  • 16 is a flowchart of a method for controlling a terminal according to an embodiment of the present invention.
  • FIG. 17 is a flowchart of a method for controlling a terminal according to another embodiment of the present invention.
  • FIG. 19 is a flowchart of a method for controlling a terminal according to another embodiment of the present invention.
  • FIG. 21 is a flowchart of a method for controlling a terminal according to another embodiment of the present invention.
  • FIG. 22 is a system configuration diagram of a terminal control system according to an embodiment of the present invention. detailed description
  • FIG. 1 is a schematic structural diagram of a control terminal according to an embodiment of the present invention, where the control terminal is used for remote control of a controlled terminal, and the control terminal and the controlled terminal may be provided with a display unit, and Mobile terminals with the same operating mode, such as smartphones, tablets, and e-book readers.
  • the control terminal can include:
  • the first channel establishing module 101 is configured to establish a control channel and a data channel between the controlled terminal and the data channel.
  • the image data receiving module 102 is configured to receive the screen that the controlled terminal sends at the specified frame rate through the data channel. Image data, the screen image data is used to indicate a screenshot of the controlled terminal;
  • a display module 103 configured to display a screenshot of the controlled terminal according to the screen image data
  • an operation information generating module 104 configured to generate corresponding operation information according to the operation based on the screenshot
  • the operation information sending module 105 is configured to send the operation information to the controlled terminal through the control channel, and the controlled terminal performs a corresponding control operation according to the operation information.
  • control terminal provided by the embodiment of the present invention establishes a control channel and a data channel between the controlled terminal, and receives screen image data sent by the controlled terminal through the data channel, and displays the controlled terminal according to the screen image data.
  • a screenshot generating corresponding operation information according to the operation based on the screenshot, and transmitting the operation information to the controlled terminal through the control channel, and the controlled terminal executes according to the operation information
  • the corresponding control operation uses two independent channels to transmit the control information and the screen image data between the two terminals, so as to avoid the display terminal-side display caused by the conflict between the screen data and the operation information in the transmission logic and the transmission time.
  • FIG. 2 it is a schematic structural diagram of a control terminal according to another embodiment of the present invention.
  • the control terminal is used for remote control of a controlled terminal, and the control terminal and the controlled terminal may be provided with a display unit.
  • the control terminal can include:
  • the first channel establishing module 201 is configured to establish a control channel and a data channel with the controlled terminal.
  • the first channel establishing module 201 includes:
  • the server can be divided into three parts: a connection server, a control channel server, and a data channel server according to functions.
  • the control terminal and the controlled terminal access the connection server at the initial moment and maintain the connection through the heartbeat connection.
  • connection server control channel server
  • data channel server can be grouped into the same server entity.
  • control channel between the control terminal and the controlled terminal can be established by the control channel server.
  • the specific establishment process can include the following steps:
  • control terminal as the smart phone VIII and the controlled terminal as the smart phone B as an example
  • the smart phone A After the user opens the remote control function on the smart phone A, the smart phone A establishes a connection with the control channel server.
  • control terminal sends a control channel establishment request to the control channel server
  • the control channel establishment request is used to instruct the control channel server to establish a control channel between the control terminal and the controlled terminal.
  • the smart phone A After the user selects the smart phone B as the control object in the smart phone A, the smart phone A sends a control channel establishment request to the control channel server, where the control channel establishment request includes the identifier of the smart phone B, so that the control channel server determines the smart phone A.
  • the requested control object After the user selects the smart phone B as the control object in the smart phone A, the smart phone A sends a control channel establishment request to the control channel server, where the control channel establishment request includes the identifier of the smart phone B, so that the control channel server determines the smart phone A. The requested control object.
  • control channel server establishes the control channel;
  • the control channel server first determines whether the smartphone B has accessed the control channel server. If the smartphone B has established a connection with the control channel server, the control channel between the smartphone A and the smartphone B is directly established.
  • control channel server If the controlled terminal does not access the control channel server, the control channel server sends an access notification to the controlled terminal;
  • control channel server determines that the smart phone B has not been accessed, it sends an access notification to the smart phone B, indicating that the smart phone B is connected to the control channel server.
  • the controlled terminal accesses the control channel server according to the access notification
  • the smartphone B After receiving the access notification, the smartphone B initiates an access procedure to access the control channel server.
  • the control channel server establishes the control channel.
  • the control channel server establishes the control channel after confirming that the smart phone B successfully accesses according to the access notification.
  • control channel established according to the above steps controls the channel server to relay information.
  • the control channel is established based on a reliable TCP protocol.
  • the second channel establishing sub-module 2012 is configured to establish a data channel with the controlled terminal through the server and the control channel.
  • the second channel establishing submodule 2012 includes:
  • the first address obtaining unit 2012a is configured to acquire the address information of the control terminal from the server, where the address information includes a local address, a mapped address of the network address translation, and a relay address of the relayed network address translation;
  • a second address obtaining unit 2012b configured to acquire address information of the controlled terminal from the server or the controlled terminal;
  • the control terminal may obtain the address information of the controlled terminal from the server, or obtain the address information of the controlled terminal from the controlled terminal through the control channel.
  • the control terminal may send a request for collecting the address information of the controlled terminal to the server, and receive the address of the controlled terminal fed back by the server; or the control terminal may request the controlled terminal from the controlled terminal through the established control channel. Address information.
  • a first path determining unit 2012c configured to: according to the address information of the control terminal and the controlled The address information of the terminal determines a connection path;
  • the first establishing unit 2012d is configured to establish the data channel according to the connection path.
  • the first path determining unit 2012c includes:
  • a synthesizing subunit 2012cl configured to synthesize the address information of the control terminal and the address information of the controlled terminal into an address pair
  • test subunit 2012c2 configured to perform connectivity testing on the address pair
  • the subunit 2012c3 is configured to determine the connection path according to the result of the connectivity test.
  • the control terminal and the controlled terminal acquire and exchange address information through the server and the control channel, and establish a data channel according to the address information of the two parties, and the data channel can be initiated by the control terminal or the controlled terminal, and the control terminal actively takes the initiative. For example, the establishment of a data channel is initiated.
  • the specific process can be as follows:
  • control terminal initiates a data channel establishment instruction to the controlled terminal through the control channel
  • the smartphone A sends a data channel setup command to the smartphone B through a control channel that is relayed by the control channel server.
  • control terminal acquires address information of the control terminal from the data channel server
  • the smartphone A sends an address collection request to the data channel server, and the data channel server returns the address information of the smartphone A to the smartphone A according to the address collection request.
  • the address information may include three types: a local address of a smart phone, a network address translation (NAT), and a relay address of a TURN (traversal using relays around NAT). .
  • the controlled terminal acquires address information of the controlled terminal from the data channel server
  • the smartphone B after receiving the data channel establishment command, the smartphone B also sends an address collection request to the data channel server, and the data channel server returns the address information of the smartphone B to the smartphone B according to the address collection request.
  • the control terminal acquires the address information of the controlled terminal from the controlled terminal through the control channel; the smart phone A receives the address information of the smart phone B sent by the smart phone B through the control channel.
  • control terminal determines the connection path according to the address information of the control terminal and the address information of the controlled terminal;
  • the smart phone A combines its own three types of addresses with the three types of addresses of the smart phone B, and performs connectivity tests on the synthesized address pairs, and determines the optimal path according to the result of the connectivity test. For the connection path.
  • the control terminal establishes a data channel through the determined connection path.
  • the control terminal can also obtain the address information of the controlled terminal directly from the server. For example, the control terminal can send a request for collecting the address information of the controlled terminal to the server, and the server sends the address information of the controlled terminal to the control terminal, and the control terminal The address information of the own and the address information of the controlled terminal determine the connection path and establish a data channel.
  • the process of establishing the foregoing data channel may also be initiated by the controlled terminal, and the establishment process is similar to the above process.
  • the data channel can be established through a relay mode or a direct connection manner.
  • the data channel is established in the connected mode; when the connection between the control terminal and the controlled terminal can only be established through the internet, a data channel relayed by the server can be established.
  • the data channel can be based on a UDP (User Data Protocol) protocol. set up.
  • UDP User Data Protocol
  • control channel and data channel establishment process need to be relayed through the server.
  • control channel and/or data channel can be directly established without using the server.
  • control channel and the data channel can be directly established through the wireless local area network or Bluetooth, and need not be relayed through the server.
  • control channel can be directly established through the wireless local area network or Bluetooth, and the data channel is established through the server.
  • control channel can be established through the server, and the data channel can be directly established through the wireless local area network or Bluetooth.
  • the image data receiving module 202 is configured to receive screen image data sent by the controlled terminal through the data channel;
  • the screen image data can be captured at a specified frame rate, and the specified frame rate can be a fixed frame rate.
  • the controlled terminal can set the fixed frame rate to 30FPS (Frames Per). Second, the number of frames transmitted per second), that is, image data of 30 frames of screen images per second;
  • the controlled terminal can dynamically set the specified frame rate according to the content displayed on the screen. For example, when the content displayed on the screen is a static page, a lower value can be set for the specified frame rate (for example,
  • the controlled terminal can transmit media data such as images and/or audio.
  • the controlled terminal encodes the screen image data captured at the specified frame rate (for example, according to the H.264 method), and then transmits it to the control terminal through the data channel.
  • the display module 203 is configured to display a screenshot of the controlled terminal according to the screen image data; after receiving the screen image data sent by the smart phone B through the data channel, the smart phone A displays the smart screen on the screen with an appropriate resolution. Screenshot of phone B.
  • the operation information generating module 204 is configured to generate corresponding operation information according to the operation based on the screenshot;
  • the operation information includes at least one of touch information, key information, or voice information
  • the operation information generating module 204 includes:
  • the monitoring sub-module 2041 is configured to: when the operation information is touch information, monitor a touch event corresponding to the operation;
  • the first generation sub-module 2042 is configured to generate the operation information according to the touch event.
  • the first key type determining sub-module 2043 is configured to determine, when the operation information is the button information, a button type corresponding to the operation. ;
  • the second generation sub-module 2044 is configured to generate the operation information that includes the identifier corresponding to the button type
  • the voice recognition sub-module 2045 is configured to recognize, when the operation information is voice information, a voice corresponding to the operation as a text;
  • the second generation sub-module 2046 is configured to extract a control instruction included in the text, and generate the operation information including an identifier corresponding to the control instruction.
  • the first generating submodule 2042 comprising: a first generating unit 2042a or a second generating unit 2042b;
  • the first generating unit 2042a is configured to serialize the touch event into a byte stream, and generate the operation information that includes the byte stream;
  • the second generating unit 2042b is configured to extract key information of the touch event, encode the key information into a specified format file, and generate the operation information including the specified format file.
  • the key information includes event type, touch coordinates, and/or touch strength.
  • the operation information sending module 205 is configured to send the operation information to the controlled terminal through the control channel, and the controlled terminal performs a corresponding control operation according to the operation information.
  • the operation of the user in the smart phone A can be divided into a touch operation, a key operation, and a voice operation.
  • the corresponding operation information is touch information, key information, and voice information, respectively, and the processing methods are as follows:
  • the touch event generated by the smart phone A is generated.
  • the MotionEvent is serialized into a byte stream and sent out.
  • Smartphone B deserializes the byte stream to restore the touch event.
  • the smartphone A extracts key information (including event type, touch coordinates, touch strength, etc.) in the touch event, and encodes the key information into a file such as xml or json.
  • Smartphone B extracts key information based on files in xml or json format and restores touch events.
  • Smartphone B performs the corresponding control operations based on the restored touch event.
  • the encoded file can be as follows:
  • the control terminal displays the screenshot of the controlled terminal
  • the resolution of the screenshot displayed in the control terminal is generally inconsistent with the resolution of the screen image actually displayed by the controlled terminal, and accordingly, the user is based on the controlled terminal in the control terminal.
  • the touch coordinates included in the generated touch event are also inconsistent with the coordinates of the touch operation mapped in the actual screen image of the controlled terminal.
  • the control terminal first needs to touch the original touch.
  • the touch coordinates in the control event are converted into mapping coordinates mapped in the screen of the controlled terminal, the touch coordinates in the original touch event are replaced by the mapping coordinates, and the touch is generated according to the touch event after the mapping coordinates are replaced.
  • the controlled terminal may send the resolution of the controlled terminal to the control terminal through the control channel, and control the terminal according to the display area coordinates of the screenshot, the touch coordinates in the original touch event, and the screen resolution of the controlled terminal. Determine the mapping coordinates.
  • the step of converting the coordinate may be performed by the controlled terminal, that is, the control terminal does not process the original touch event, directly generates touch information, and the controlled terminal acquires the display area of the screenshot in the control terminal through the control channel.
  • the coordinates are used to extract the touch coordinates in the original touch event from the touch information, and determine the mapping coordinates according to the display area coordinates of the screenshot, the extracted touch coordinates, and the screen resolution of the controlled terminal itself.
  • the above-mentioned coordinate conversion step is completed by the control terminal as an example.
  • the smart phone A and the smart phone B establish a control channel and a data channel, the smart phone A receives the smart phone B.
  • Screen image data a screenshot of the smartphone B is displayed in the screenshot display area of the smartphone A screen, the screenshot display area is a part of the screen of the smartphone A, and the user touches the screenshot display area in the smartphone A screen.
  • the touch coordinates (x, y) included in the generated original touch event are the coordinates of the touch point in the screen of the smart phone A, and after the smart phone A monitors the original touch event, the smart phone A monitors the original touch event.
  • the touch coordinates (x, y) in the original touch event are replaced with the mapping coordinates (x, y) mapped in the screen of the controlled terminal, and the touch information is generated according to the touch event after replacing the touch coordinates. For example, serializing touch events after replacing touch coordinates, or extracting and encoding mapping coordinates (x', y) as key information. .
  • the user can control the controlled terminal in the control terminal through touch operation.
  • the smart phone A receives The screen image data of the smartphone B, and displaying a screenshot of the smartphone B, the screenshot is a screenshot of the main interface of the smartphone B, the screenshot contains the icons of the respective applications, and the user on the smartphone A side clicks the screenshot In the icon area of an application (program name "XYZ"), the smartphone A determines the touch point according to the coordinates of the touch point.
  • the mapping coordinates in the smart phone B are encoded, and the mapping coordinates and the touch type are encoded as touch information and sent to the smart phone B.
  • the smart phone B restores the touch event according to the touch information, and opens according to the touch event.
  • Application XYZ Further, after the smartphone opens the application and displays its application interface, the user clicks on the function button in the screenshot of the application interface (such as entering the secondary page or exiting the application, etc.) in the smartphone. In the location, Smartphone B can control the application according to the function button.
  • the user can also perform remote screen graffiti in the controlled terminal through the touch operation.
  • the remote graffiti operation diagram shown in FIG. 5 where after the smartphone A and the smart phone B establish the control channel and the data channel, The smartphone B opens the graffiti panel, and the smartphone A receives the screen image data of the smart phone B, and displays a screenshot of the graffiti panel. The user on the smartphone A side slides in the screenshot of the graffiti panel, and the smart phone A operates according to the sliding operation.
  • Each coordinate on the tracked track determines each mapping coordinate mapped in the smart phone B, and encodes each mapping coordinate and touch type into touch information and sends it to the smart phone B, and the smart phone B according to the touch information
  • the touch event is restored, and the track pattern of the sliding operation is displayed in the graffiti panel displayed by the smart phone B according to the touch event.
  • the smartphone A can encode all the physical buttons or virtual buttons such as the return button, the home button, the menu button, the volume button, etc., and define a unique identifier for each button type, the smartphone A encodes the button type corresponding to the button event as an identifier and sends it to the smartphone: ⁇ Smartphone B is restored to the corresponding button event according to the identifier. Smartphone B performs the corresponding control operations according to the restored button events.
  • the smartphone A For voice information, the smartphone A first converts the voice into text, extracts the control commands in the text, and defines a unique identifier for each control command, and the smartphone A encodes the voice as the identifier to the smartphone B, and the smart The mobile phone B restores the corresponding control command according to the identification. For example, the user inputs a "call" sound to the smartphone A, and the smartphone A encodes the "call” as a unique identifier and sends it to the smartphone B, which recognizes the unique identifier as a "call” command. The smartphone B performs corresponding control operations based on the recognized commands.
  • the control terminal receives the control channel and the data channel between the controlled terminal, and receives the screen image data sent by the controlled terminal through the data channel, and displays the controlled terminal according to the screen image data.
  • Screen shot according to the operation based on the screenshot to generate corresponding operation information, the operation information is sent to the controlled terminal through the control channel, the controlled terminal performs the corresponding control operation according to the operation information, and uses two independent channels to transmit two Control information between terminals
  • the screen image data avoids the problem that the screenshot of the controlled terminal displayed on the control terminal side cannot be timely responded to the user operation on the control terminal side caused by the conflict between the screen data and the operation information in the transmission logic and the transmission time, so as to improve the control.
  • the purpose of the effect and user experience is the reason for the user experience.
  • FIG. 6 shows a block diagram of a control terminal provided by an embodiment of the present invention.
  • the control terminal 300 can be used for remote control of the controlled terminal, and the control terminal and the controlled terminal can be mobile terminals with display units and having the same operation mode, such as a smart phone, a tablet computer, and an e-book reader. Wait.
  • the control terminal 300 can include a bus 305, and a processor 301, a memory 302, a transmitter 303, and a receiver 304 connected to the bus 305.
  • the memory 302 is configured to store a plurality of instructions, which are configured to be executed by the processor 301;
  • the processor 301 is configured to control the receiver 304 and the transmitter 303 to establish a control channel and a data channel with the controlled terminal.
  • the receiver 304 is configured to receive screen image data sent by the controlled terminal through the data channel, where the screen image data is used to indicate a screenshot of the controlled terminal;
  • the processor 301 is configured to display a screenshot of the controlled terminal in the display device according to the screen image data, and generate corresponding operation information according to the operation based on the screenshot;
  • the processor 301 is configured to control the transmitter 303 to send the operation information to the controlled terminal by using the control channel, and the controlled terminal performs a corresponding control operation according to the operation information.
  • the control terminal receives the control channel and the data channel between the controlled terminal, and receives the screen image data sent by the controlled terminal through the data channel, and displays the controlled terminal according to the screen image data.
  • Screen shot according to the operation based on the screenshot to generate corresponding operation information, the operation information is sent to the controlled terminal through the control channel, the controlled terminal performs the corresponding control operation according to the operation information, and uses two independent channels to transmit two The control information between the terminals and the screen image data, to avoid the conflict between the screen data and the operation information in the transmission logic and the transmission time, the screenshot of the controlled terminal displayed on the control terminal side cannot be timely operated on the user side of the control terminal side. Respond to the problem of improving control and user experience. Please refer to FIG.
  • the control terminal 400 can be used for remote control of the controlled terminal, and the control terminal and the controlled terminal can be a mobile terminal with a display unit and having the same operation mode, such as a smart phone or a tablet. And e-book readers, etc.
  • the control terminal 400 can include a bus 405, and a processor 401, a memory 402, a transmitter 403, and a receiver 404 connected to the bus 405.
  • the memory 402 is configured to store a plurality of instructions, the instructions being configured to be executed by the processor 401;
  • the processor 401 is configured to control the receiver 404 and the transmitter 403 to establish a control channel and a data channel with the controlled terminal;
  • the processor 401 is configured to control the receiver 404 and the transmitter 403, and establish a control channel with the controlled terminal by using the server;
  • the processor 401 is configured to control the receiver 404 and the transmitter 403 to establish a data channel with the controlled terminal by using the server and the control channel.
  • the processor 401 when the data channel is established, the processor 401 is configured to control the receiver 404 and the transmitter 403, and obtain address information of the control terminal from the server, where the address information includes a local address. , a mapped address of the network address translation, and a relay address of the relay penetration network address translation;
  • the processor 401 is configured to control the receiver 404 and the transmitter 403, and obtain address information of the controlled terminal from the server or the controlled terminal;
  • the processor 401 is configured to determine a connection path according to address information of the control terminal and address information of the controlled terminal;
  • the processor 401 is configured to control the receiver 404 and the transmitter 403 to establish the data channel according to the connection path.
  • the processor 401 is configured to synthesize address information of the control terminal and address information of the controlled terminal into an address pair, and perform connectivity test on the address pair, where the connection path is determined. The result of the connectivity test determines the connection path.
  • control channel and data channel may be as described in the corresponding embodiment in FIG. 2, and details are not described herein again.
  • the receiver 404 is configured to receive screen image data sent by the controlled terminal through the data channel, where the screen image data is used to indicate a screenshot of the controlled terminal;
  • the processor 401 is configured to display, according to the screen image data, a screenshot of the controlled terminal in a display device, and generate corresponding operation information according to the operation based on the screenshot;
  • the operation information includes at least one of touch information, key information, or voice information.
  • the processor 401 is configured to: when the operation information is touch information, monitor a touch event corresponding to the operation. Generating the operation information according to the touch event;
  • the processor 401 is configured to: when the operation information is button information, determine a button type corresponding to the operation, and generate the operation information that includes an identifier corresponding to the button type;
  • the processor 401 is configured to: when the operation information is voice information, identify the voice corresponding to the operation as a text, extract a control instruction included in the text, and generate a location that includes the identifier corresponding to the control instruction. Operational information.
  • the processor 401 When the operation information is generated according to the touch event, the processor 401 is configured to serialize the touch event into a byte stream, and generate the operation information including the byte stream; or The processor 401 is configured to extract key information of the touch event, encode the key information into a specified format file, and generate the operation information that includes the specified format file, where the key information includes an event type. , touch coordinates and / or touch strength.
  • the processor 401 is configured to control the transmitter 403 to send the operation information to the controlled terminal by using the control channel, and the controlled terminal performs a corresponding control operation according to the operation information.
  • the control terminal receives the control channel and the data channel between the controlled terminal, and receives the screen image data sent by the controlled terminal through the data channel, and displays the controlled terminal according to the screen image data.
  • Screen shot according to the operation based on the screenshot to generate corresponding operation information, the operation information is sent to the controlled terminal through the control channel, the controlled terminal performs the corresponding control operation according to the operation information, and uses two independent channels to transmit two The control information between the terminals and the screen image data, to avoid the conflict between the screen data and the operation information in the transmission logic and the transmission time, the screenshot of the controlled terminal displayed on the control terminal side cannot be timely operated on the user side of the control terminal side. Respond to the problem of improving control and user experience. Please refer to FIG.
  • the controlled terminal is configured to receive a control terminal as shown in any of FIG. 1 , FIG. 2 , FIG. 6 or FIG. 7 .
  • Remote control, the control terminal and the controlled terminal may be mobile terminals with display units and having the same operation mode, such as a smart phone, a tablet computer, and an e-book reader.
  • the controlled terminal may include: a second channel establishing module 501, configured to establish a control channel and a data channel between the control terminal; and an image data acquiring module 502, configured to acquire a screen shot for indicating the controlled terminal Screen image data;
  • An image data sending module 503, configured to send, by using the data channel, the control terminal Screen image data, wherein the control terminal displays a screenshot of the controlled terminal according to the screen data image;
  • the operation information receiving module 504 is configured to receive operation information that is sent by the control terminal by using the control channel, where the operation information is information generated by the control terminal according to the operation based on the screenshot;
  • the executing module 505 is configured to perform a corresponding control operation according to the operation information.
  • the controlled terminal obtained by the embodiment of the present invention obtains a control channel and a data channel between the control terminal and the control terminal, acquires screen image data of the controlled terminal, and sends the screen image data to the control terminal through the data channel. Transmitting the screen image data, receiving operation information sent by the control terminal through the control channel, and performing corresponding control operations according to the operation information, and using two independent channels to transmit control information between the two terminals And the screen image data, avoiding the conflict between the screen data and the operation information in the transmission logic and the transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot timely respond to the user operation on the control terminal side, thereby improving Control the effects and the purpose of the user experience.
  • FIG. 9 is a schematic structural diagram of a controlled terminal according to another embodiment of the present invention.
  • the controlled terminal is configured to receive a control terminal as shown in any of FIG. 1 , FIG. 2 , FIG. 6 or FIG. 7 .
  • Remote control, the control terminal and the controlled terminal may be mobile terminals with display units and having the same operation mode, such as a smart phone, a tablet computer, and an e-book reader.
  • the controlled terminal may include: a second channel establishing module 601, configured to establish a control channel and a data channel between the control terminal, and the second channel establishing module 601, including:
  • a third channel establishing submodule 6011 configured to establish, by the server, a control channel with the control terminal;
  • the fourth channel establishing sub-module 6012 is configured to establish a data channel with the control terminal through the server and the control channel.
  • the fourth channel establishing submodule 6012 includes:
  • the third address obtaining unit 6012a is configured to acquire address information of the controlled terminal from the server, where the address information includes a local address, a mapped address of a network address translation, and a relay address of a relay-penetrating network address translation;
  • the fourth address obtaining unit 6012b is configured to acquire address information of the control terminal from the server or the control terminal;
  • the second path determining unit 6012c is configured to determine a connection path according to the address information of the control terminal and the address information of the controlled terminal;
  • the second establishing unit 6012d is configured to establish the data channel according to the connection path.
  • the controlled terminal When determining the connection path according to the address information of the control terminal and the address information of the controlled terminal, the controlled terminal synthesizes the address information of the control terminal and the address information of the controlled terminal into an address pair, and connects the address pair.
  • the sex test determines the connection path based on the result of the connectivity test.
  • the control terminal and the controlled terminal acquire and exchange address information through the server and the control channel, and establish a data channel according to the address information of the two parties, and the data channel can be initiated by the control terminal or the controlled terminal, and the control terminal actively takes the initiative. For example, the establishment of a data channel is initiated.
  • the specific process can be as follows:
  • control terminal initiates a data channel establishment instruction to the controlled terminal through the control channel
  • the smartphone A sends a data channel setup command to the smartphone B through a control channel that is relayed by the control channel server.
  • control terminal acquires address information of the control terminal from the data channel server
  • the smartphone A sends an address collection request to the data channel server, and the data channel server returns the address information of the smartphone A to the smartphone A according to the address collection request.
  • the address information may include three types: a local address of a smart phone, a network address translation (NAT), and a relay address of a TURN (traversal using relays around NAT). .
  • the controlled terminal acquires address information of the controlled terminal from the data channel server
  • the smartphone B after receiving the data channel establishment command, the smartphone B also sends an address collection request to the data channel server, and the data channel server returns the address information of the smartphone B to the smartphone B according to the address collection request.
  • the controlled terminal acquires the address information of the control terminal from the control terminal through the control channel; the smartphone A sends its own address information to the smart phone B through the control channel.
  • the controlled terminal determines the connection path according to the address information of the control terminal and the address information of the controlled terminal;
  • the smart phone B also combines its own three types of addresses with the three types of addresses of the smart phone A, and performs connectivity tests on the synthesized address pairs, and determines the optimal path as the connection path according to the result of the connectivity test.
  • the controlled terminal establishes a data channel through the determined connection path.
  • the control terminal can also obtain the address information of the controlled terminal directly from the server. For example, the control terminal can send a request for collecting the address information of the controlled terminal to the server, and the server sends the address information of the controlled terminal to the control terminal, and the control terminal The address information of the own and the address information of the controlled terminal determine the connection path and establish a data channel.
  • the image data sending module 603 is configured to send the screen image data to the control terminal by using the data channel, and the control terminal displays a screenshot of the controlled terminal according to the screen data image;
  • the operation information receiving module 604 is configured to receive operation information that is sent by the control terminal by using the control channel, where the operation information is information generated by the control terminal according to the operation based on the screenshot;
  • the executing module 605 is configured to perform a corresponding control operation according to the operation information.
  • the operation information includes at least one of touch information, key information, or voice information
  • the executing module 605 includes:
  • the event return atomic module 6051 is configured to: when the operation information is the touch information, restore the touch event corresponding to the touch operation according to the control information;
  • a first execution sub-module 6052 configured to perform the control operation according to the touch event
  • a second button type determination sub-module 6053 configured to: when the operation information is button information, according to the operation information Identifying a type of the button corresponding to the button operation;
  • a second execution sub-module 6054 configured to perform the control operation according to the type of the button
  • the instruction determining sub-module 6055 configured to determine, according to the identifier included in the operation information, when the operation information is voice information Control instructions corresponding to voice operations
  • the third execution sub-module 6056 is configured to perform the control operation according to the control instruction.
  • the event is also an atomic module, comprising: a first reduction unit 6051a or a second reduction unit
  • the first restoring unit 6051a is configured to perform a reverse sequence on the byte stream included in the operation information to restore the touch event.
  • the second restoration unit 6051b is configured to extract key information of the touch event from a specified format file included in the operation information, and restore the touch event according to the key information, where the key information includes an event.
  • Type, touch coordinates, and/or touch strength For the specific process of the controlled terminal receiving the control terminal, refer to the description in the embodiment corresponding to FIG. 2, and details are not described herein again.
  • the controlled terminal obtained by the embodiment of the present invention obtains a control channel and a data channel between the control terminal and the control terminal, acquires screen image data of the controlled terminal, and sends the screen image data to the control terminal through the data channel. Transmitting the screen image data, receiving operation information sent by the control terminal through the control channel, and performing corresponding control operations according to the operation information, and using two independent channels to transmit control information between the two terminals And the screen image data, avoiding the conflict between the screen data and the operation information in the transmission logic and the transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot timely respond to the user operation on the control terminal side, thereby improving Control the effects and the purpose of the user experience.
  • FIG. 10 shows a block diagram of a controlled terminal provided by an embodiment of the present invention.
  • the controlled terminal 700 is configured to receive remote control of the control terminal as shown in any one of FIG. 1, FIG. 2, FIG. 6, or FIG. 7, the control terminal and the controlled terminal may be provided with a display unit and have the same operation. Modes of mobile terminals, such as smartphones, tablets, and e-book readers.
  • the controlled terminal 700 can include a bus 705, and a processor 701, a memory 702, a transmitter 703, and a receiver 704 coupled to the bus 705.
  • the memory 702 is configured to store a plurality of instructions that are configured to be executed by the processor 701;
  • the processor 701 is configured to control the receiver 704 and the transmitter 703 to establish a control channel and a data channel between the control terminal and the control terminal;
  • the processor 701 is configured to acquire screen image data for indicating a screenshot of the controlled terminal
  • the processor 701 is configured to control the transmitter 703 to send the screen image data to the control terminal by using the data channel, where the control terminal displays the controlled terminal according to the screen data image. Screenshots;
  • the receiver 704 is configured to receive operation information that is sent by the control terminal by using the control channel, where the operation information is information generated by the control terminal according to the operation based on the screenshot; the processor 701, And configured to perform a corresponding control operation according to the operation information.
  • the controlled terminal obtained by the embodiment of the present invention obtains a control channel and a data channel between the control terminal and the control terminal, acquires screen image data of the controlled terminal, and sends the screen image data to the control terminal through the data channel.
  • Sending the screen image data, and receiving the control terminal to send through the control channel Sending operation information, and performing corresponding control operations according to the operation information, using two independent channels to transmit control information and screen image data between the two terminals, avoiding screen data and operation information in transmission logic and transmission time
  • the screen shot of the controlled terminal displayed on the control terminal side caused by the conflict cannot be timely responded to the user operation on the control terminal side, thereby achieving the purpose of improving the control effect and the user experience. Please refer to FIG.
  • the controlled terminal 800 is configured to receive remote control of the control terminal as shown in any of FIG. 1, FIG. 2, FIG. 6, or FIG. 7, the control terminal and the controlled terminal may be provided with a display unit and have the same operation Modes of mobile terminals, such as smartphones, tablets, and e-book readers.
  • the controlled terminal 800 can include a bus 805, and a processor 801, a memory 802, a transmitter 803, and a receiver 804 coupled to the bus 805.
  • the memory 802 is configured to store a plurality of instructions, the instructions being configured to be executed by the processor 801;
  • the processor 801 is configured to control the receiver 804 and the transmitter 803 to establish a control channel and a data channel between the control terminal and the control terminal;
  • the processor 801 is configured to control the receiver 804 and the transmitter 803, and establish a control channel with the control terminal by using the server;
  • the processor 801 is configured to control the receiver 804 and the transmitter 803, and establish a data channel with the control terminal by using the server and the control channel.
  • the processor 801 When the data channel is established, the processor 801 is configured to control the receiver 804 and the transmitter 803, and obtain address information of the controlled terminal from the server, where the address information includes a local address. a mapping address of the network address translation and a relay address of the relaying network address translation; the processor 801, configured to control the receiver 804 and the transmitter 803, from the server or the control terminal Obtaining address information of the control terminal;
  • the processor 801 is configured to determine a connection path according to the address information of the control terminal and the address information of the controlled terminal.
  • the processor 801 is configured to control the receiver 804 and the transmitter 803 to establish the data channel according to the connection path.
  • the processor 801 is configured to acquire screen image data for indicating a screenshot of the controlled terminal
  • the processor 801 is configured to control the transmitter 803 to perform the control by using the data channel.
  • the terminal sends the screen image data, and the control terminal displays a screenshot of the controlled terminal according to the screen data image;
  • the receiver 804 is configured to receive operation information that is sent by the control terminal by using the control channel, where the operation information is information generated by the control terminal according to the operation based on the screenshot; the processor 801, And configured to perform a corresponding control operation according to the operation information.
  • the operation information includes at least one of touch information, key information, or voice information.
  • the processor 801 is configured to: when the operation information is touch information, according to the control information. Restoring a touch event corresponding to the touch operation, and performing the control operation according to the touch event;
  • the processor 801 is configured to deserialize the byte stream included in the operation information to restore the touch event when the touch event corresponding to the touch operation is restored according to the control information; or
  • the processor 801 is configured to extract key information of the touch event from a specified format file included in the operation information, and restore the touch event according to the key information, where the key information includes an event type and a touch Control coordinates and / or touch strength.
  • the processor 801 is configured to: when the operation information is the button information, determine a button type corresponding to the button operation according to the identifier included in the operation information, and perform the control operation according to the button type.
  • the processor 801 is configured to: when the operation information is voice information, determine a control instruction corresponding to the voice operation according to the identifier included in the operation information, and perform the control operation according to the control instruction.
  • the controlled terminal obtained by the embodiment of the present invention obtains a control channel and a data channel between the control terminal and the control terminal, acquires screen image data of the controlled terminal, and sends the screen image data to the control terminal through the data channel. Transmitting the screen image data, receiving operation information sent by the control terminal through the control channel, and performing corresponding control operations according to the operation information, and using two independent channels to transmit control information between the two terminals And the screen image data, avoiding the conflict between the screen data and the operation information in the transmission logic and the transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot timely respond to the user operation on the control terminal side, thereby improving Control the effects and the purpose of the user experience.
  • FIG. 12 is a schematic structural diagram of a server according to an embodiment of the present invention.
  • the server is used to establish a control terminal as shown in any of FIG. 1, FIG. 2, FIG. 6, or FIG. 11 a connection between any of the controlled terminals shown to control the terminal to remotely control the controlled terminal, the control terminal and the controlled terminal may be mobile terminals with display units and having the same operational mode, such as intelligence Mobile phones, tablets, and e-book readers.
  • the server can include:
  • a control channel establishing module 901 configured to establish a control channel between the control terminal and the controlled terminal;
  • a first address providing module 902 configured to provide the control terminal with address information of the control terminal, and to the controlled The terminal provides address information of the controlled terminal, and after the control terminal and the controlled terminal exchange address information through the control channel, the control terminal or the controlled terminal according to the control terminal
  • the address information and the address information of the controlled terminal determine a connection path, and establish the data channel according to the connection path, and the control terminal controls the controlled terminal through the control channel and the data channel ;
  • a second address providing module 903 configured to provide address information of the control terminal and address information of the controlled terminal to the control terminal, where the control terminal 4 uses the address information of the control terminal and the The address information of the controlled terminal determines a connection path, and establishes the data channel according to the connection path, and controls, by the control terminal, the controlled terminal by using the control channel and the data channel;
  • a third address providing module 904 configured to provide the controlled terminal with address information of the control terminal and address information of the controlled terminal, where the controlled terminal 4 uses the address information of the control terminal and The address information of the controlled terminal determines a connection path, and establishes the data channel according to the connection path, and controls, by the control terminal, the controlled terminal by using the control channel and the data channel.
  • the server provided by the embodiment of the present invention establishes a control channel and a data channel between the control terminal and the controlled terminal; and the control terminal controls the controlled terminal through the control channel and the data channel, and uses two Independent channel to transmit control information and screen image data between two terminals, to avoid conflicting screen data and operation information in the transmission logic and transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot be timely Controlling the user's operation on the terminal side to respond to the problem of improving the control effect and user experience.
  • FIG. 13 is a schematic structural diagram of a server according to another embodiment of the present invention. The server is used to establish a control terminal as shown in any of FIG. 1, FIG. 2, FIG. 6, or FIG.
  • the server may include: a control channel establishing module 1001, configured to establish a control channel between the control terminal and the controlled terminal; wherein the control channel establishing module 1001 includes:
  • the request receiving sub-module 10011 is configured to: after the control terminal accesses the server, receive a control channel establishment request sent by the control terminal;
  • a determining sub-module 10012 configured to determine whether the controlled terminal has accessed the server
  • a channel establishing sub-module 10013 configured to: if the determining result of the determining sub-module 10012 is that the controlled terminal has accessed the The server establishes the control channel between the control terminal and the controlled terminal.
  • the control channel establishing module 1001 further includes:
  • the notification sub-module 10014 is configured to: if the judgment result of the determining sub-module 10012 is that the controlled terminal does not access the server, send an access notification to the controlled terminal, where the access notification is used to indicate The controlled terminal accesses the server.
  • a first address providing module 1002 configured to provide address information of the control terminal to the control terminal, and provide address information of the controlled terminal to the controlled terminal, so that the control terminal and the controlled After the terminal exchanges the address information through the control channel, the control terminal or the controlled terminal determines a connection path according to the address information of the control terminal and the address information of the controlled terminal, and establishes a connection path according to the connection path.
  • the data channel, and the controlled terminal controls the controlled terminal through the control channel and the data channel;
  • a second address providing module 1003 configured to provide address information of the control terminal and address information of the controlled terminal to the control terminal, where the control terminal 4 uses the address information of the control terminal and the The address information of the controlled terminal determines a connection path, and establishes the data channel according to the connection path, and controls, by the control terminal, the controlled terminal by using the control channel and the data channel;
  • a third address providing module 1004 configured to provide address information of the control terminal and address information of the controlled terminal to the controlled terminal, where the controlled terminal 4 uses the address information of the control terminal and The address information of the controlled terminal determines a connection path, and establishes the data channel according to the connection path, and controls, by the control terminal, the controlled terminal by using the control channel and the data channel.
  • the server provided by the embodiment of the present invention establishes a control channel and a data channel between the control terminal and the controlled terminal; and the control terminal controls the controlled terminal through the control channel and the data channel, and uses two Independent channel to transmit control information and screen image data between two terminals, to avoid conflicting screen data and operation information in the transmission logic and transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot be timely Controlling the user's operation on the terminal side to respond to the problem of improving the control effect and user experience. Please refer to FIG.
  • the server 1100 is used to establish a control terminal as shown in any of FIG. 1, FIG. 2, FIG. 6, or FIG. 11 the connection between the controlled terminals shown in any one, so that the control terminal remotely controls the controlled terminal, and the control terminal and the controlled terminal may be mobile terminals with display units and having the same operation mode, such as Smartphones, tablets, and e-book readers.
  • the server 1100 includes a bus 1105, and a processor 1101, a memory 1102, a transmitter 1103, and a receiver 1104 connected to the bus.
  • the memory 1102 is configured to store a plurality of instructions, where the instructions are configured to be executed by the processor 1101;
  • the processor 1101 is configured to control the receiver 1104 and the transmitter 1103 to establish a control channel between the control terminal and the controlled terminal.
  • the processor 1101 is configured to control the receiver 1104 and the transmitter 1103 to provide address information of the control terminal to the control terminal, and provide address information of the controlled terminal to the controlled terminal. After the control terminal and the controlled terminal exchange address information through the control channel, the control terminal or the controlled terminal according to the address information of the control terminal and the controlled terminal The address information determines a connection path, and the data channel is established according to the connection path, and the control terminal controls the controlled terminal through the control channel and the data channel; or the processor is configured to: Providing the control terminal with the address information of the control terminal and the address information of the controlled terminal, and determining, by the control terminal 4, the connection path according to the address information of the control terminal and the address information of the controlled terminal And establishing the data channel according to the connection path, and the control terminal accesses the controlled terminal through the control channel and the data channel Controlling; or the processor, configured to provide address information of the control terminal and address information of the controlled terminal to the controlled terminal, where the controlled terminal according to the address information of the control terminal The address information of the controlled terminal
  • the server provided by the embodiment of the present invention establishes a control channel and a data channel between the control terminal and the controlled terminal; and the control terminal controls the controlled terminal through the control channel and the data channel, and uses two Independent channel to transmit control information and screen image data between two terminals, to avoid conflicting screen data and operation information in the transmission logic and transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot be timely Controlling the user's operation on the terminal side to respond to the problem of improving the control effect and user experience.
  • FIG. 15 is a block diagram of a server according to another embodiment of the present invention.
  • the server 1200 is configured to establish a control terminal as shown in any of FIG. 1, FIG. 2, FIG. 6, or FIG.
  • the control terminal and the controlled terminal may be mobile terminals with display units and having the same operation mode, Such as smart phones, tablets and e-book readers.
  • the server 1200 includes: a bus 1205, and a processor 1201, a memory 1202, a transmitter 1203, and a receiver 1204 connected to the bus.
  • the memory 1202 is configured to store a plurality of instructions, where the instructions are configured to be executed by the processor 1201;
  • the processor 1201 is configured to control the receiver 1204 and the transmitter 1203 to establish a control channel between the control terminal and the controlled terminal;
  • the receiver 1204 is configured to receive a control channel establishment request sent by the control terminal after the control terminal accesses the server, where the control channel is controlled by the control terminal; 1201, configured to determine whether the controlled terminal has accessed the server, and if the determined result is that the controlled terminal has accessed the server, controlling the receiver 1204 and the transmitter 1203 to establish the Controlling the control channel between the terminal and the controlled terminal.
  • the processor 1201 is configured to: if the determined result is that the controlled terminal does not access the server, control the transmitter 1203 to send an access notification to the controlled terminal, where the access notification is And is used to indicate that the controlled terminal accesses the server.
  • the processor 1201 is configured to control the receiver 1204 and the transmitter 1203 to provide address information of the control terminal to the control terminal, and provide address information of the controlled terminal to the controlled terminal.
  • the control terminal and the controlled terminal exchange address information through the control channel, the control terminal or the controlled terminal according to the address information of the control terminal and the controlled terminal Determining a connection path according to the address information, and establishing the data channel according to the connection path, and controlling, by the control terminal, the controlled terminal by using the control channel and the data channel;
  • the processor configured to provide, to the control terminal, address information of the control terminal and address information of the controlled terminal, where the control terminal 4 uses the address information of the control terminal and the The address information of the controlled terminal determines a connection path, and establishes the data channel according to the connection path, and controls, by the control terminal, the controlled terminal by using the control channel and the data channel; or, the processing And the address information of the control terminal and the address information of the controlled terminal are provided to the controlled terminal, where the controlled terminal according to the address information of the
  • the server provided by the embodiment of the present invention establishes a control channel and a data channel between the control terminal and the controlled terminal; and the control terminal controls the controlled terminal through the control channel and the data channel, and uses two Independent channel to transmit control information and screen image data between two terminals, to avoid conflicting screen data and operation information in the transmission logic and transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot be timely Controlling the user's operation on the terminal side to respond to the problem of improving the control effect and user experience.
  • FIG. 16 is a flowchart of a method for controlling a terminal provided by an embodiment of the present invention. The method may be used in a control terminal as shown in any of FIG. 1 , FIG. 2 , FIG. 6 or FIG. 7 .
  • the controlled terminal is remotely controlled, and the control terminal and the controlled terminal may be mobile terminals with display units and having the same operation mode, such as a smart phone, a tablet computer, and an e-book reader.
  • the method can include:
  • Step 1302 Establish a control channel and a data channel between the controlled terminal and the controlled terminal;
  • Step 1304 Receive screen image data sent by the controlled terminal through the data channel, where the screen image data is used to indicate a screenshot of the controlled terminal.
  • Step 1306 displaying a screenshot of the controlled terminal according to the screen image data
  • Step 1308, generating corresponding operation information according to the operation based on the screenshot
  • Step 1310 The operation information is sent to the controlled terminal through the control channel, and the controlled terminal performs a corresponding control operation according to the operation information.
  • the terminal control method receives the control channel and the data channel between the controlled terminal and the screen image data sent by the controlled terminal through the data channel, and the root Displaying a screenshot of the controlled terminal according to the screen image data, generating corresponding operation information according to the operation based on the screenshot, and transmitting the operation information to the controlled terminal through the control channel, and the controlled terminal performs the corresponding control operation according to the operation information, and uses Two independent channels are used to transmit control information and screen image data between the two terminals, avoiding conflicts between the screen data and the operation information in the transmission logic and the transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot be
  • the problem of responding to the user operation on the control terminal side in time can achieve the purpose of improving the control effect and user experience.
  • FIG. 17 is a flowchart of a method for controlling a terminal according to another embodiment of the present invention.
  • the method may be used in a control terminal as shown in any of FIG. 1, FIG. 2, FIG. 6, or FIG.
  • the controlled terminal is remotely controlled, and the control terminal and the controlled terminal may be mobile terminals with display units and having the same operation mode, such as a smart phone, a tablet computer, and an e-book reader.
  • the method can include:
  • Step 1402 Establish a control channel between the controlled terminal and the controlled terminal;
  • control channel between the controlled terminal and the controlled terminal can be established through the control channel server.
  • Step 1404 Establish a data channel between the controlled terminal and the controlled terminal.
  • the control terminal can establish a data channel with the controlled terminal through the server and the control channel;
  • the control terminal may obtain the address information of the control terminal from the server, where the address information includes a local address, a mapped address of the network address translation, and a relay address of the relay penetration network address translation; the control terminal acquires the server from the server or the controlled terminal.
  • the control terminal determines the connection path according to the address information of the control terminal and the address information of the controlled terminal; and the control terminal establishes the data channel according to the connection path.
  • the control terminal When determining the connection path according to the address information of the control terminal and the address information of the controlled terminal, the control terminal synthesizes the address information of the control terminal and the address information of the controlled terminal into an address pair, and performs connectivity on the address pair. Test, the connection path is determined based on the result of the connectivity test.
  • control terminal and the controlled terminal may directly establish a data channel without passing through the server.
  • control channel and the data channel refer to the description in the embodiment corresponding to FIG. 2, and details are not described herein again.
  • Step 1406 Receive screen image data sent by the controlled terminal through the data channel, the screen Image data is used to indicate a screenshot of the controlled terminal;
  • Step 1408 displaying a screenshot of the controlled terminal according to the screen image data
  • Step 1410 Generate corresponding operation information according to the operation based on the screenshot.
  • Step 1412 The operation information is sent to the controlled terminal through the control channel, and the controlled terminal performs a corresponding control operation according to the operation information.
  • the terminal control method receives the control channel and the data channel between the controlled terminal and the screen image data sent by the controlled terminal through the data channel, and displays the controlled image according to the screen image data.
  • the screenshot of the terminal generates corresponding operation information according to the operation based on the screenshot, and sends the operation information to the controlled terminal through the control channel, and the controlled terminal performs the corresponding control operation according to the operation information, and uses two independent channels to transmit The control information between the two terminals and the screen image data, avoiding the conflict between the screen data and the operation information in the transmission logic and the transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot be timely to the user on the control terminal side.
  • FIG. 18 is a flowchart of a method for controlling a terminal according to an embodiment of the present invention.
  • the method is used to enable a controlled terminal to receive a control terminal in a controlled terminal as shown in FIG. Remote control, the control terminal and the controlled terminal may be mobile terminals with display units and having the same operation mode, such as a smart phone, a tablet computer, and an e-book reader.
  • the method can include:
  • Step 1502 Establish a control channel and a data channel between the control terminal and the control terminal;
  • Step 1504 Obtain screen image data for indicating a screenshot of the controlled terminal.
  • Step 1506 Send the screen image data to the control terminal through the data channel, where the control terminal displays the controlled terminal according to the screen data image. Screenshot of
  • Step 1508 Receive operation information sent by the control terminal through the control channel, where the operation information is information generated by the control terminal according to the operation based on the screenshot;
  • Step 1510 Perform a corresponding control operation according to the operation information.
  • the method provided by the embodiment of the present invention by establishing a control channel and a data channel between the control terminal, acquiring screen image data of the controlled terminal, and transmitting the image to the control terminal through the data channel
  • the screen image data is received, the operation information sent by the control terminal through the control channel is received, and corresponding control operations are performed according to the operation information, and two independent channels are used.
  • Transmitting the control information and the screen image data between the two terminals to avoid conflicts between the screen data and the operation information in the transmission logic and the transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot be timely on the control terminal side.
  • the user's operation responds to the problem of improving control and user experience. Referring to FIG.
  • FIG. 19 it is a flowchart of a method for controlling a terminal according to another embodiment of the present invention.
  • the method is used to enable a controlled terminal to receive a control terminal in a controlled terminal as shown in FIG. 8 to FIG.
  • Remote control the control terminal and the controlled terminal may be mobile terminals with display units and having the same operation mode, such as a smart phone, a tablet computer, and an e-book reader.
  • the method can include:
  • Step 1602 Establish a control channel between the control terminal and the control terminal.
  • Step 1604 establishing a data channel between the control terminal and the control terminal;
  • Step 1606 Obtain screen image data of the controlled terminal according to a specified frame rate.
  • the screen image data is used to indicate a screenshot of the controlled terminal.
  • Step 1608 the screen image data is sent to the control terminal through the data channel, and the control terminal displays a screenshot of the controlled terminal according to the screen data image;
  • Step 1610 Receive operation information sent by the control terminal through the control channel, where the operation information is information generated by the control terminal according to the operation based on the screenshot;
  • Step 1612 Perform a corresponding control operation according to the operation information.
  • the method provided by the embodiment of the present invention by establishing a control channel and a data channel between the control terminal, acquiring screen image data of the controlled terminal, and transmitting the image to the control terminal through the data channel
  • the screen image data is received, the operation information sent by the control terminal through the control channel is received, and corresponding control operations are performed according to the operation information, and two independent channels are used to transmit control information and a screen between the two terminals.
  • the image data avoids the problem that the screenshot of the controlled terminal displayed on the control terminal side cannot be timely responded to the user operation on the control terminal side caused by the conflict between the screen data and the operation information in the transmission logic and the transmission time, thereby improving the control effect.
  • the purpose of the user experience Please refer to FIG.
  • FIG. 20 which is a flowchart of a method for controlling a terminal according to an embodiment of the present invention.
  • the method is used to establish, as shown in any of the servers shown in FIG. 12 to FIG. a control terminal shown in FIG. 7 and a connection between the controlled terminals as shown in any of FIGS. 8 to 11 so that the control terminal can remotely control the controlled terminal, and the control terminal and the controlled terminal can be provided with a display unit.
  • Mobile terminals with the same operating mode such as smart phones, tablets, and e-book readers.
  • the method can include:
  • Step 1702 Establish a control channel between the control terminal and the controlled terminal.
  • Step 1704 the address information of the control terminal is provided to the control terminal, and the address information of the controlled terminal is provided to the controlled terminal, so that the control terminal and the controlled terminal exchange address information through the control channel. Determining, by the control terminal or the controlled terminal, a connection path according to address information of the control terminal and address information of the controlled terminal, and establishing the data channel according to the connection path, and the control terminal passes the control channel and the The data channel controls the controlled terminal;
  • Step 1706 the address information of the control terminal and the address information of the controlled terminal are provided to the control terminal, and the control terminal determines the connection according to the address information of the control terminal and the address information of the controlled terminal.
  • a path and establishing the data channel according to the connection path, and controlling, by the control terminal, the controlled terminal by using the control channel and the data channel;
  • Step 1708 providing the controlled terminal with the address information of the control terminal and the address information of the controlled terminal, and the controlled terminal 4 according to the address information of the control terminal and the controlled terminal
  • the address information determines a connection path, and the data channel is established according to the connection path, and the controlled terminal controls the controlled terminal through the control channel and the data channel.
  • the method provided by the embodiment of the present invention establishes a control channel and a data channel between the control terminal and the controlled terminal; and the control terminal controls the controlled terminal through the control channel and the data channel, and uses two Independent channel to transmit control information and screen image data between two terminals, to avoid conflicting screen data and operation information in the transmission logic and transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot be timely Controlling the user's operation on the terminal side to respond to the problem of improving the control effect and user experience.
  • FIG. 21 is a flowchart of a method for controlling a terminal according to another embodiment of the present invention. The method is used to establish a server as shown in any of FIG. 12 to FIG.
  • control terminal shown in 7 may be mobile terminals with display units and having the same operation mode, such as a smart phone, a tablet computer, and an e-book reader.
  • the method can include:
  • Step 1802 after the control terminal accesses the server, receiving a control channel sent by the control terminal to establish a clear request;
  • Step 1804 it is determined whether the controlled terminal has access to the server; if it proceeds to step 1806, otherwise, proceeds to step 1808;
  • Step 1806 Send an access notification to the controlled terminal, and return to step 1804.
  • Step 1808 establishing the control channel between the control terminal and the controlled terminal
  • Step 1810 Provide the control terminal with address information of the control terminal, and provide address information of the controlled terminal to the controlled terminal.
  • Step 1812 The control terminal is provided with the address information of the control terminal and the address information of the controlled terminal.
  • Step 1814 the address information of the control terminal and the address information of the controlled terminal are provided to the controlled terminal.
  • the method provided by the embodiment of the present invention establishes a control channel and a data channel between the control terminal and the controlled terminal; and the control terminal controls the controlled terminal through the control channel and the data channel, and uses two Independent channel to transmit control information and screen image data between two terminals, to avoid conflicting screen data and operation information in the transmission logic and transmission time, and the screenshot of the controlled terminal displayed on the control terminal side cannot be timely Controlling the user's operation on the terminal side to respond to the problem of improving the control effect and user experience.
  • the embodiment of the present invention provides a system configuration diagram of a terminal control system. Referring to FIG. 22, the terminal control system is used for remote control between a control terminal, a controlled terminal, and a server.
  • the control terminal and the controlled terminal may be Mobile terminals such as smartphones, tablets or e-book readers.
  • the terminal control system can include:
  • Control terminal 001 as shown in Figure 1, 2, 6 or 7, and controlled terminal as shown in any of Figures 8 to 11.
  • the terminal control system controls the terminal to receive the screen image data sent by the controlled terminal through the data channel by establishing a control channel and a data channel between the controlled terminal, and displaying according to the screen image data.
  • a screenshot of the controlled terminal generating corresponding operation information according to the operation based on the screenshot, and transmitting the operation information to the controlled terminal through the control channel, and the controlled terminal performs corresponding control operations according to the operation information, using two independent channels
  • the user's operation responds to the problem, improving the control effect and user experience. It should be noted that, when the control terminal provided by the foregoing embodiment performs remote control on the controlled terminal, only the division of each functional module is used as an example. In actual applications, the foregoing functions may be assigned different functions according to requirements.
  • the module is completed, that is, the internal structure of the terminal is divided into different functional modules to complete all or part of the functions described above.
  • the control terminal, the controlled terminal, and the server provided by the foregoing embodiment are in the same concept as the terminal control method embodiment. For details, refer to the method embodiment, and details are not described herein again.
  • a person skilled in the art may understand that all or part of the steps of implementing the above embodiments may be completed by hardware, or may be instructed by a program to execute related hardware, and the program may be stored in a computer readable storage medium.
  • the storage medium mentioned may be a read only memory, a magnetic disk or an optical disk or the like.

Abstract

本发明公开了一种终端、服务器及终端控制方法,属于移动终端领域。所述终端包括:第一通道建立模块、图像数据接收模块、显示模块、操作信息生成模块以及操作信息发送模块。本发明通过建立与受控终端之间的控制通道和数据通道,接收受控终端通过数据通道发送的屏幕图像数据,根据屏幕图像数据显示受控终端的屏幕截图,根据基于屏幕截图的操作生成相应的操作信息并通过控制通道发送给受控终端,由受控终端根据操作信息执行相应操作,解决了屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而导致的控制终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户操作进行响应的问题,达到提高控制效果和用户体验的目的。

Description

说 明 书 终端、 服务器及终端控制方法 技术领域
本发明涉及移动终端领域, 特别涉及一种终端、 服务器及终端控制方法。 背景技术
得益于电子和通信技术的迅速发展,移动终端的通信和处理能力也越来越 强, 基于移动终端之间的远程控制的应用也得以迅速发展。
在现有的移动终端之间的远程控制中, 控制终端与受控终端首先建立连 接, 受控终端将屏幕数据通过该连接发送给控制终端, 控制终端根据该屏幕数 据在控制终端的屏幕中显示受控终端的屏幕截图, 用户在控制终端的屏幕中对 受控终端的屏幕截图进行触控等操作,控制终端将接收到的操作信息通过该连 接发送给受控终端, 由受控终端根据该操作信息进行相应的操作, 从而达到远 程控制的目的。
在实现本发明的过程中, 发明人发现现有技术至少存在以下问题: 控制终端和受控终端之间通过同一连接进行屏幕数据和操作信息的交互, 屏幕数据和操作信息在传输逻辑和传输时间上存在冲突,从而导致控制终端侧 显示的受控终端的屏幕截图无法及时对控制终端侧的用户操作进行响应, 影响 控制效果和用户体验。 发明内容
为了解决现有技术中屏幕数据和操作信息在传输逻辑和传输时间上存在 冲突,从而导致的控制终端侧显示的受控终端的屏幕截图无法及时对控制终端 侧的用户操作进行响应的问题, 本发明实施例提供了一种终端、 服务器及终端 控制方法。 所述技术方案如下:
第一方面, 提供了一种控制终端, 所述控制终端包括:
第一通道建立模块, 用于建立与受控终端之间的控制通道和数据通道; 图像数据接收模块, 用于接收所述受控终端通过所述数据通道发送的屏幕 图像数据, 所述屏幕图像数据用于指示所述受控终端的屏幕截图; 显示模块, 用于根据所述屏幕图像数据显示所述受控终端的屏幕截图; 操作信息生成模块, 用于根据基于所述屏幕截图的操作生成相应的操作信 息;
操作信息发送模块, 用于将所述操作信息通过所述控制通道发送给所述受 控终端, 由所述受控终端根据所述操作信息执行相应的控制操作。
在第一方面的第一种可能实现方式中, 所述第一通道建立模块, 包括: 第一通道建立子模块, 用于通过所述服务器建立与所述受控终端之间的控 制通道;
第二通道建立子模块, 用于通过所述^^务器和所述控制通道建立与所述受 控终端之间的数据通道。
结合第一方面的第一种可能实现方式,在第一方面的第二种可能实现方式 中, 所述第二通道建立子模块, 包括:
第一地址获取单元, 用于从所述服务器获取所述控制终端的地址信息, 所 述地址信息包括本地地址、 网络地址转换的映射地址和中继穿透网络地址转换 的中继地址;
第二地址获取单元, 用于从所述服务器或者所述受控终端获取所述受控终 端的地址信息;
第一路径确定单元, 用于根据所述控制终端的地址信息和所述受控终端的 地址信息确定连接路径;
第一建立单元, 用于根据所述连接路径建立所述数据通道。
结合第一方面、第一方面的第一种可能实现方式或者第一方面的第二种可 能实现方式, 在第一方面的第三种可能实现方式中, 所述操作信息包括触控信 息、 按键信息或者语音信息中的至少一种, 所述操作信息生成模块, 包括: 监听子模块, 用于当所述操作信息为触控信息时, 监听所述操作对应的触 控事件;
第一生成子模块, 用于根据所述触控事件生成所述操作信息;
第一按键类型确定子模块, 用于当所述操作信息为按键信息时, 确定所述 操作对应的按键类型;
第二生成子模块, 用于生成包含所述按键类型对应的标识的所述操作信 息;
语音识别子模块, 用于当所述操作信息为语音信息时, 将所述操作对应的 语音识别为文本;
第二生成子模块, 用于提取所述文本中包含的控制指令, 生成包含所述控 制指令对应的标识的所述操作信息。
结合第一方面的第三种可能实现方式,在第一方面的第四种可能实现方式 中, 所述第一生成子模块, 包括: 第一生成单元或者第二生成单元;
所述第一生成单元, 用于将所述触控事件序列化为字节流, 生成包含有所 述字节流的所述操作信息;
所述第二生成单元, 用于提取所述触控事件的关键信息, 将所述关键信息 编码为指定格式文件, 生成包含所述指定格式文件的所述操作信息, 所述关键 信息包括事件类型、 触控坐标和 /或触控力度。
结合第一方面的第三种可能实现方式,在第一方面的第四种可能实现方式 中, 所述第一路径确定单元包括:
合成子单元, 用于将所述控制终端的地址信息和所述受控终端的地址信息 合成为地址对;
测试子单元, 用于对所述地址对进行连通性测试;
建立子单元, 用于根据所述连通性测试的结果确定所述连接路径。
第二方面, 提供了一种控制终端, 所述控制终端包括: 总线, 以及连接到 所述总线的处理器、 存储器、 发射器和接收器。 其中, 所述存储器用于存储若 干个指令, 所述若干个指令被配置成由所述处理器执行;
所述处理器, 用于控制所述接收器和所述发射器, 建立与受控终端之间的 控制通道和数据通道;
所述接收器, 用于接收所述受控终端通过所述数据通道发送的屏幕图像数 据, 所述屏幕图像数据用于指示所述受控终端的屏幕截图;
所述处理器, 用于根据所述屏幕图像数据在显示设备中显示所述受控终端 的屏幕截图, 根据基于所述屏幕截图的操作生成相应的操作信息;
所述处理器, 用于控制所述发射器将所述操作信息通过所述控制通道发送 给所述受控终端, 由所述受控终端根据所述操作信息执行相应的控制操作。
在第二方面的第一种可能实现方式中, 所述处理器, 用于控制所述接收器 和所述发射器, 通过所述服务器建立与所述受控终端之间的控制通道;
所述处理器, 用于控制所述接收器和所述发射器, 通过所述^^务器和所述 控制通道建立与所述受控终端之间的数据通道。 结合第二方面的第一种可能实现方式,在第二方面的第二种可能实现方式 中, 所述处理器, 用于控制所述接收器和所述发射器, 从所述服务器获取所述 控制终端的地址信息, 所述地址信息包括本地地址、 网络地址转换的映射地址 和中继穿透网络地址转换的中继地址;
所述处理器, 用于控制所述接收器和所述发射器, 从所述服务器或者所述 受控终端获取所述受控终端的地址信息;
所述处理器, 用于才艮据所述控制终端的地址信息和所述受控终端的地址信 息确定连接路径;
所述处理器, 用于控制所述接收器和所述发射器, 根据所述连接路径建立 所述数据通道。
结合第二方面、第二方面的第一种可能实现方式或者第二方面的第二种可 能实现方式, 在第二方面的第三种可能实现方式中, 所述操作信息包括触控信 息、 按键信息或者语音信息中的至少一种;
所述处理器, 用于当所述操作信息为触控信息时, 监听所述操作对应的触 控事件, 根据所述触控事件生成所述操作信息;
所述处理器, 用于当所述操作信息为按键信息时, 确定所述操作对应的按 键类型, 生成包含所述按键类型对应的标识的所述操作信息;
所述处理器, 用于当所述操作信息为语音信息时, 将所述操作对应的语音 识别为文本, 提取所述文本中包含的控制指令, 生成包含所述控制指令对应的 标识的所述操作信息。
结合第二方面的第三种可能实现方式,在第二方面的第四种可能实现方式 中, 所述处理器, 用于将所述触控事件序列化为字节流, 生成包含有所述字节 流的所述操作信息;
或者
所述处理器, 用于提取所述触控事件的关键信息, 将所述关键信息编码为 指定格式文件, 生成包含所述指定格式文件的所述操作信息, 所述关键信息包 括事件类型、 触控坐标和 /或触控力度。
结合第二方面的第二种可能实现方式,在第二方面的第五种可能实现方式 中, 所述处理器, 用于将所述控制终端的地址信息和所述受控终端的地址信息 合成为地址对, 对所述地址对进行连通性测试, 根据所述连通性测试的结果确 定所述连接路径。 第三方面, 提供了一种受控终端, 所述受控终端包括:
第二通道建立模块, 用于建立与控制终端之间的控制通道和数据通道; 图像数据获取模块, 用于获取用于指示所述受控终端的屏幕截图的屏幕图 像数据;
图像数据发送模块, 用于通过所述数据通道向所述控制终端发送所述屏幕 图像数据, 由所述控制终端根据所述屏幕数据图像显示所述受控终端的屏幕截 图;
操作信息接收模块, 用于接收所述控制终端通过所述控制通道发送的操作 信息, 所述操作信息为所述控制终端根据基于所述屏幕截图的操作生成的信 息;
执行模块, 用于根据所述操作信息执行相应的控制操作。
在第三方面的第一种可能实现方式中, 所述第二通道建立模块, 包括: 第三通道建立子模块, 用于通过所述服务器建立与所述控制终端之间的控 制通道;
第四通道建立子模块, 用于通过所述服务器和所述控制通道建立与所述控 制终端之间的数据通道。
结合第三方面的第一种可能实现方式,在第三方面的第二种可能实现方式 中, 所述第四通道建立子模块, 包括:
第三地址获取单元, 用于从所述服务器获取所述受控终端的地址信息, 所 述地址信息包括本地地址、 网络地址转换的映射地址和中继穿透网络地址转换 的中继地址;
第四地址获取单元, 用于从所述服务器或者所述控制终端获取所述控制终 端的地址信息;
第二路径确定单元, 用于根据所述控制终端的地址信息和所述受控终端的 地址信息确定连接路径;
第二建立单元, 用于根据所述连接路径建立所述数据通道。
结合第三方面、第三方面的第一种可能实现方式或者第三方面的第二种可 能实现方式, 在第三方面的第三种可能实现方式中, 所述操作信息包括触控信 息、 按键信息或者语音信息中的至少一种, 所述执行模块, 包括:
事件还原子模块, 用于当所述操作信息为触控信息时, 根据所述控制信息 还原所述触控操作对应的触控事件; 第一执行子模块, 用于根据所述触控事件执行所述控制操作; 第二按键类型确定子模块, 用于当所述操作信息为按键信息时, 根据所述 操作信息中包含的标识确定所述按键操作对应的按键类型;
第二执行子模块, 用于根据所述按键类型执行所述控制操作;
指令确定子模块, 用于当所述操作信息为语音信息时, 根据所述操作信息 中包含的标识确定所述语音操作对应的控制指令;
第三执行子模块, 用于根据所述控制指令执行所述控制操作。
结合第三方面的第三种可能实现方式,在第三方面的第四种可能实现方式 中, 所述事件还原子模块, 包括: 第一还原单元或者第二还原单元;
所述第一还原单元, 用于对所述操作信息中包含的字节流进行反序列化, 以还原所述触控事件;
所述第一还原单元, 用于从所述操作信息中包含的指定格式文件中提取所 述触控事件的关键信息, 根据所述关键信息还原所述触控事件, 所述关键信息 包括事件类型、 触控坐标和 /或触控力度。
第四方面, 提供了一种受控终端, 所述受控终端包括: 总线, 以及连接到 所述总线的处理器、 存储器、 发射器和接收器。 其中, 所述存储器用于存储若 干个指令, 所述若干个指令被配置成由所述处理器执行;
所述处理器, 用于控制所述接收器和所述发射器, 建立与控制终端之间的 控制通道和数据通道;
所述处理器, 用于获取用于指示所述受控终端的屏幕截图的屏幕图像数 据;
所述处理器, 用于控制所述发射器, 通过所述数据通道向所述控制终端发 送所述屏幕图像数据, 由所述控制终端根据所述屏幕数据图像显示所述受控终 端的屏幕截图;
所述接收器, 用于接收所述控制终端通过所述控制通道发送的操作信息, 所述操作信息为所述控制终端根据基于所述屏幕截图的操作生成的信息; 所述处理器, 用于根据所述操作信息执行相应的控制操作。
在第四方面的第一种可能实现方式中,
所述处理器, 用于控制所述接收器和所述发射器, 通过所述^)良务器建立与 所述控制终端之间的控制通道;
所述处理器, 用于控制所述接收器和所述发射器, 通过所述^^务器和所述 控制通道建立与所述控制终端之间的数据通道。
结合第四方面的第一种可能实现方式,在第四方面的第二种可能实现方式 中, 所述处理器, 用于控制所述接收器和所述发射器, 从所述服务器获取所述 受控终端的地址信息, 所述地址信息包括本地地址、 网络地址转换的映射地址 和中继穿透网络地址转换的中继地址;
所述处理器, 用于控制所述接收器和所述发射器, 从所述服务器或者所述 控制终端获取所述控制终端的地址信息;
所述处理器, 用于才艮据所述控制终端的地址信息和所述受控终端的地址信 息确定连接路径;
所述处理器, 用于控制所述接收器和所述发射器, 根据所述连接路径建立 所述数据通道。
结合第四方面、第四方面的第一种可能实现方式或者第四方面的第二种可 能实现方式, 在第四方面的第三种可能实现方式中, 所述操作信息包括触控信 息、 按键信息或者语音信息中的至少一种;
所述处理器, 用于当所述操作信息为触控信息时, 根据所述控制信息还原 所述触控操作对应的触控事件, 根据所述触控事件执行所述控制操作;
所述处理器, 用于当所述操作信息为按键信息时, 根据所述操作信息中包 含的标识确定所述按键操作对应的按键类型,根据所述按键类型执行所述控制 操作;
所述处理器, 用于当所述操作信息为语音信息时, 才艮据所述操作信息中包 含的标识确定所述语音操作对应的控制指令,根据所述控制指令执行所述控制 操作。
结合第四方面的第三种可能实现方式,在第四方面的第四种可能实现方式 中, 所述处理器, 用于对所述操作信息中包含的字节流进行反序列化, 以还原 所述触控事件;
或者,
所述处理器, 用于从所述操作信息中包含的指定格式文件中提取所述触控 事件的关键信息, 根据所述关键信息还原所述触控事件, 所述关键信息包括事 件类型、 触控坐标和 /或触控力度。
第五方面, 提供一种服务器, 所述服务器包括:
控制通道建立模块, 用于建立控制终端与受控终端之间的控制通道; 第一地址提供模块, 用于向所述控制终端提供所述控制终端的地址信息, 并向所述受控终端提供所述受控终端的地址信息,使所述控制终端和所述受控 终端通过所述控制通道进行地址信息的交换后, 由所述控制终端或者所述受控 终端根据所述控制终端的地址信息和所述受控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通过所述控制通道和所 述数据通道对所述受控终端进行控制;
第二地址提供模块, 向所述控制终端提供所述控制终端的地址信息和所述 受控终端的地址信息, 由所述控制终端 4艮据所述控制终端的地址信息和所述受 控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所 述控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制; 第三地址提供模块, 向所述受控终端提供所述控制终端的地址信息和所述 受控终端的地址信息, 由所述受控终端 4艮据所述控制终端的地址信息和所述受 控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所 述控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制。
在第五方面的第一种可能实现方式中, 所述控制通道建立模块, 包括: 请求接收子模块, 用于在所述控制终端接入所述服务器之后, 接收所述控 制终端发送的控制通道建立请求;
判断子模块, 用于判断所述受控终端是否已经接入所述服务器; 通道建立子模块, 用于若所述判断子模块的判断结果为所述受控终端已经 接入所述服务器, 则建立所述控制终端与所述受控终端之间的所述控制通道。
结合第五方面的第一种可能实现方式,在第五方面的第二种可能实现方式 中, 所述控制通道建立模块还包括:
通知子模块, 用于若所述判断子模块的判断结果为所述受控终端未接入所 述服务器, 则向所述受控终端发送接入通知, 所述接入通知用于指示所述受控 终端接入所述服务器。
第六方面, 提供了一种服务器, 所述服务器包括: 总线, 以及连接到所述 总线的处理器、 存储器、 发射器和接收器。 其中, 所述存储器用于存储若干个 指令, 所述若干个指令被配置成由所述处理器执行;
所述处理器, 用于控制所述接收器和所述发射器建立控制终端与受控终端 之间的控制通道;
所述处理器, 用于控制所述接收器和所述发射器向所述控制终端提供所述 控制终端的地址信息, 并向所述受控终端提供所述受控终端的地址信息, 使所 述控制终端和所述受控终端通过所述控制通道进行地址信息的交换后, 由所述 控制终端或者所述受控终端根据所述控制终端的地址信息和所述受控终端的 地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终 端通过所述控制通道和所述数据通道对所述受控终端进行控制; 或者, 所述处 理器, 用于向所述控制终端提供所述控制终端的地址信息和所述受控终端的地 址信息, 由所述控制终端根据所述控制终端的地址信息和所述受控终端的地址 信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通 过所述控制通道和所述数据通道对所述受控终端进行控制;或者,所述处理器, 用于向所述受控终端提供所述控制终端的地址信息和所述受控终端的地址信 息, 由所述受控终端 4艮据所述控制终端的地址信息和所述受控终端的地址信息 确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通过所 述控制通道和所述数据通道对所述受控终端进行控制。
在第六方面的第一种可能实现方式中, 所述接收器, 用于在所述控制终端 接入所述服务器之后, 接收所述控制终端发送的控制通道建立请求;
所述处理器, 用于判断所述受控终端是否已经接入所述服务器, 若判断结 果为所述受控终端已经接入所述服务器, 则控制所述接收器和所述发射器建立 所述控制终端与所述受控终端之间的所述控制通道。
结合第六方面的第一种可能实现方式,在第六方面的第二种可能实现方式 中, 所述处理器, 用于若判断结果为所述受控终端未接入所述服务器, 则控制 所述发射器向所述受控终端发送接入通知, 所述接入通知用于指示所述受控终 端接入所述服务器。
第七方面, 提供了一种终端控制方法, 用于控制终端中, 所述方法包括: 建立与受控终端之间的控制通道和数据通道;
接收所述受控终端通过所述数据通道发送的屏幕图像数据, 所述屏幕图像 数据用于指示所述受控终端的屏幕截图;
根据所述屏幕图像数据显示所述受控终端的屏幕截图;
根据基于所述屏幕截图的操作生成相应的操作信息;
将所述操作信息通过所述控制通道发送给所述受控终端, 由所述受控终端 根据所述操作信息执行相应的控制操作。
在第七方面的第一种可能实现方式中, 所述建立与受控终端之间的控制通 道和数据通道, 包括:
通过所述服务器建立与所述受控终端之间的控制通道;
通过所述服务器和所述控制通道建立与所述受控终端之间的数据通道。 结合第七方面的第一种可能实现方式,在第七方面的第二种可能实现方式 中, 所述通过所述服务器和所述控制通道建立与所述受控终端之间的数据通 道, 包括:
从所述服务器获取所述控制终端的地址信息, 所述地址信息包括本地地 址、 网络地址转换的映射地址和中继穿透网络地址转换的中继地址;
从所述服务器或者所述受控终端获取所述受控终端的地址信息;
根据所述控制终端的地址信息和所述受控终端的地址信息确定连接路径; 根据所述连接路径建立所述数据通道。
结合第七方面、第七方面的第一种可能实现方式或者第七方面的第二种可 能实现方式, 在第七方面的第三种可能实现方式中, 所述操作信息包括触控信 息、 按键信息或者语音信息中的至少一种, 所述根据基于所述屏幕截图的操作 生成操作信息, 包括:
当所述操作信息为触控信息时, 监听所述操作对应的触控事件, 根据所述 触控事件生成所述操作信息;
当所述操作信息为按键信息时, 确定所述操作对应的按键类型, 生成包含 所述按键类型对应的标识的所述操作信息;
当所述操作信息为语音信息时, 将所述操作对应的语音识别为文本, 提取 所述文本中包含的控制指令, 生成包含所述控制指令对应的标识的所述操作信 息。
结合第七方面的第三种可能实现方式,在第七方面的第四种可能实现方式 中, 所述根据所述触控事件生成所述操作信息, 包括:
将所述触控事件序列化为字节流, 生成包含有所述字节流的所述操作信 息;
或者, 提取所述触控事件的关键信息, 将所述关键信息编码为指定格式文 件,生成包含所述指定格式文件的所述操作信息,所述关键信息包括事件类型、 触控坐标和 /或触控力度。
结合第七方面的第三种可能实现方式,在第七方面的第四种可能实现方式 中, 所述根据所述控制终端的地址信息和所述受控终端的地址信息确定连接路 径, 包括:
将所述控制终端的地址信息和所述受控终端的地址信息合成为地址对, 对 所述地址对进行连通性测试, 根据所述连通性测试的结果确定所述连接路径。
第八方面, 提供了一种终端控制方法, 用于受控终端中, 所述方法包括: 建立与控制终端之间的控制通道和数据通道;
获取用于指示所述受控终端的屏幕截图的屏幕图像数据;
通过所述数据通道向所述控制终端发送所述屏幕图像数据, 由所述控制终 端根据所述屏幕数据图像显示所述受控终端的屏幕截图;
接收所述控制终端通过所述控制通道发送的操作信息, 所述操作信息为所 述控制终端根据基于所述屏幕截图的操作生成的信息;
根据所述操作信息执行相应的控制操作。
在第八方面的第一种可能实现方式中, 所述建立与控制终端之间的控制通 道和数据通道, 包括:
通过所述服务器建立与所述控制终端之间的控制通道;
通过所述服务器和所述控制通道建立与所述控制终端之间的数据通道。 结合第八方面的第一种可能实现方式,在第八方面的第二种可能实现方式 中, 所述根据所述服务器和所述控制通道建立与所述控制终端之间的数据通 道, 包括:
从所述服务器获取所述受控终端的地址信息, 所述地址信息包括本地地 址、 网络地址转换的映射地址和中继穿透网络地址转换的中继地址;
从所述服务器或者所述控制终端获取所述控制终端的地址信息; 根据所述控制终端的地址信息和所述受控终端的地址信息确定连接路径; 根据所述连接路径建立所述数据通道。
结合第八方面、第八方面的第一种可能实现方式或者第八方面的第二种可 能实现方式, 在第八方面的第三种可能实现方式中, 所述操作信息包括触控信 息、 按键信息或者语音信息中的至少一种, 所述根据所述操作信息执行相应的 控制操作, 包括:
当所述操作信息为触控信息时,根据所述操作信息还原所述操作对应的触 控事件, 根据所述触控事件执行所述控制操作;
当所述操作信息为按键信息时,根据所述操作信息中包含的标识确定所述 操作对应的按键类型, 根据所述按键类型执行所述控制操作; 当所述操作信息为语音信息时,根据所述操作信息中包含的标识确定所述 操作对应的控制指令, 根据所述控制指令执行所述控制操作。
结合第八方面的第三种可能实现方式,在第八方面的第四种可能实现方式 中, 所述根据所述控制信息还原所述触控操作对应的触控事件, 包括:
对所述操作信息中包含的字节流进行反序列化, 以还原所述触控事件; 或者,从所述操作信息中包含的指定格式文件中提取所述触控事件的关键 信息, 根据所述关键信息还原所述触控事件, 所述关键信息包括事件类型、 触 控坐标和 /或触控力度。
第九方面, 提供了一种终端控制方法, 用于服务器中, 所述方法包括: 建立控制终端与受控终端之间的控制通道;
向所述控制终端提供所述控制终端的地址信息, 并向所述受控终端提供所 述受控终端的地址信息,使所述控制终端和所述受控终端通过所述控制通道进 行地址信息的交换后, 由所述控制终端或者所述受控终端根据所述控制终端的 地址信息和所述受控终端的地址信息确定连接路径, 并根据连接路径建立所述 数据通道, 并由所述控制终端通过所述控制通道和所述数据通道对所述受控终 端进行控制; 或者, 向所述控制终端提供所述控制终端的地址信息和所述受控 终端的地址信息, 由所述控制终端 4艮据所述控制终端的地址信息和所述受控终 端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控 制终端通过所述控制通道和所述数据通道对所述受控终端进行控制; 或者, 向 所述受控终端提供所述控制终端的地址信息和所述受控终端的地址信息, 由所 述受控终端根据所述控制终端的地址信息和所述受控终端的地址信息确定连 接路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通过所述控制 通道和所述数据通道对所述受控终端进行控制。
在第九方面的第一种可能实现方式中, 所述建立控制终端与受控终端之间 的控制通道, 包括:
在所述控制终端接入所述服务器之后,接收所述控制终端发送的控制通道 建立请求;
判断所述受控终端是否已经接入所述服务器;
若判断结果为所述受控终端已经接入所述服务器, 则建立所述控制终端与 所述受控终端之间的所述控制通道。
结合第九方面的第一种可能实现方式,在第九方面的第二种可能实现方式 中, 所述方法还包括:
若判断结果为所述受控终端未接入所述服务器, 则向所述受控终端发送接 入通知, 所述接入通知用于指示所述受控终端接入所述服务器。
本发明实施例提供的技术方案带来的有益效果是:
通过建立与受控终端之间的控制通道和数据通道,接收受控终端通过数据 通道发送的屏幕图像数据, 根据屏幕图像数据显示受控终端的屏幕截图, 根据 基于屏幕截图的操作生成相应的操作信息,将操作信息通过控制通道发送给受 控终端, 由受控终端根据操作信息执行相应的控制操作, 使用两个独立的通道 来传输两个终端之间的控制信息和屏幕图像数据,避免屏幕数据和操作信息在 传输逻辑和传输时间上存在冲突而导致的控制终端侧显示的受控终端的屏幕 截图无法及时对控制终端侧的用户操作进行响应的问题, 达到提高控制效果和 用户体验的目的。 附图说明
为了更清楚地说明本发明实施例中的技术方案, 下面将对实施例描述中所 需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图 1是本发明一个实施例提供的控制终端的结构示意图;
图 2是本发明另一实施例提供的控制终端的结构示意图;
图 3是本发明另一实施例提供的触控坐标映射示意图;
图 4是本发明另一实施例提供的远程控制操作示意图;
图 5是本发明另一实施例提供的远程涂鸦操作示意图;
图 6是本发明一个实施例提供的控制终端的框图;
图 7是本发明另一实施例提供的控制终端的框图;
图 8是本发明一个实施例提供的受控终端的结构示意图;
图 9是本发明另一实施例提供的受控终端的结构示意图;
图 10是本发明一个实施例提供的受控终端的框图;
图 11是本发明另一实施例提供的受控终端的框图;
图 12是本发明一个实施例提供的服务器的结构示意图;
图 13是本发明另一实施例提供的服务器的结构示意图; 图 14是本发明一个实施例提供的服务器的框图;
图 15是本发明另一实施例提供的服务器的框图;
图 16是本发明一个实施例提供的终端控制方法的方法流程图;
图 17是本发明另一实施例提供的终端控制方法的方法流程图;
图 18是本发明一个实施例提供的终端控制方法的方法流程图;
图 19是本发明另一实施例提供的终端控制方法的方法流程图;
图 20是本发明一个实施例提供的终端控制方法的方法流程图;
图 21是本发明另一实施例提供的终端控制方法的方法流程图;
图 22是本发明一个实施例提供的终端控制系统的系统构成图。 具体实施方式
为使本发明的目的、 技术方案和优点更加清楚, 下面将结合附图对本发明 实施方式作进一步地详细描述。 请参考图 1, 其示出了本发明一个实施例提供的控制终端的结构示意图, 该控制终端用于对受控终端进行远程控制, 该控制终端和受控终端可以是带有 显示单元, 且具有相同的操作模式的移动终端, 比如智能手机、 平板电脑以及 电子书阅读器等。 该控制终端可以包括:
第一通道建立模块 101,用于建立与受控终端之间的控制通道和数据通道; 图像数据接收模块 102, 用于接收所述受控终端通过所述数据通道, 以指 定帧率发送的屏幕图像数据, 所述屏幕图像数据用于指示所述受控终端的屏幕 截图;
显示模块 103,用于根据所述屏幕图像数据显示所述受控终端的屏幕截图; 操作信息生成模块 104, 用于根据基于所述屏幕截图的操作生成相应的操 作信息;
操作信息发送模块 105, 用于将所述操作信息通过所述控制通道发送给所 述受控终端, 由所述受控终端根据所述操作信息执行相应的控制操作。
综上所述, 本发明实施例提供的控制终端, 建立与受控终端之间的控制通 道和数据通道, 接收受控终端通过数据通道发送的屏幕图像数据, 根据屏幕图 像数据显示受控终端的屏幕截图,根据基于屏幕截图的操作生成相应的操作信 息, 将操作信息通过控制通道发送给受控终端, 由受控终端根据操作信息执行 相应的控制操作,使用两个独立的通道来传输两个终端之间的控制信息和屏幕 图像数据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而导致 的控制终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户操作 进行响应的问题, 达到提高控制效果和用户体验的目的。 请参考图 2, 其示出了本发明另一实施例提供的控制终端的结构示意图, 该控制终端用于对受控终端进行远程控制, 该控制终端和受控终端可以是带有 显示单元, 且具有相同的操作模式的移动终端, 比如智能手机、 平板电脑以及 电子书阅读器等。 该控制终端可以包括:
第一通道建立模块 201,用于建立与受控终端之间的控制通道和数据通道; 其中, 所述第一通道建立模块 201, 包括:
第一通道建立子模块 2011,用于通过所述服务器建立与所述受控终端之间 的控制通道;
其中, 服务器可以按照功能划分为连接服务器、 控制通道服务器和数据通 道服务器三个部分。 控制终端和受控终端在初始时刻接入连接服务器, 并通过 心跳连接的方式维持在线。
在实际应用中, 该连接服务器、 控制通道服务器和数据通道服务器可以集 成为同一个服务器实体。
用户想要在控制终端中对受控终端进行控制时, 可以通过控制通道服务器 建立与受控终端之间的控制通道, 其具体的建立流程可以包括如下步骤:
1 )控制终端接入控制通道服务器;
以控制终端为智能手机八, 受控终端为智能手机 B为例, 用户在智能手机 A上开启远程控制功能后, 智能手机 A即与控制通道服务器建立连接。
2 )控制终端向控制通道服务器发送控制通道建立请求;
其中, 该控制通道建立请求用于指示控制通道服务器建立该控制终端和受 控终端之间的控制通道。
用户在智能手机 A中选择智能手机 B为控制对象后, 智能手机 A向控制 通道服务器发送控制通道建立请求, 该控制通道建立请求中包含有智能手机 B 的标识, 以便控制通道服务器确定智能手机 A所请求的控制对象。
3 )若被控终端已经接入控制通道服务器, 则控制通道服务器建立该控制 通道; 控制通道服务器首先判断智能手机 B是否已经接入该控制通道服务器。如 果智能手机 B 已经与控制通道服务器建立连接, 则直接建立智能手机 A和智 能手机 B之间的控制通道。
4 )若被控终端未接入控制通道服务器, 则控制通道服务器向受控终端发 送接入通知;
如果控制通道服务器判断出智能手机 B尚未接入, 则向智能手机 B发送 接入通知, 指示该智能手机 B接入控制通道服务器。
5 ) 受控终端根据该接入通知接入控制通道服务器;
智能手机 B接收到该接入通知后, 即发起接入流程, 以接入该控制通道服 务器。
6 )控制通道服务器建立该控制通道。
控制通道服务器在确认智能手机 B根据该接入通知接入成功后,建立该控 制通道。
需要说明的是, 按照上述步骤建立的控制通道, 以控制通道服务器为中继 进行信息的转发。 同时, 由于经过控制通道发送的控制信令数据量较小, 且对 数据传输的可靠性以及准确性的要求较高, 因此, 该控制通道基于可靠的 TCP 协议建立。
第二通道建立子模块 2012,用于通过所述服务器和所述控制通道建立与所 述受控终端之间的数据通道。
其中, 所述第二通道建立子模块 2012, 包括:
第一地址获取单元 2012a, 用于从所述服务器获取所述控制终端的地址信 息, 所述地址信息包括本地地址、 网络地址转换的映射地址和中继穿透网络地 址转换的中继地址;
第二地址获取单元 2012b, 用于从所述服务器或者所述受控终端获取所述 受控终端的地址信息;
其中, 控制终端可以从服务器获取受控终端的地址信息, 也可以通过控制 通道从受控终端获取该受控终端的地址信息。控制终端可以向服务器发送收集 该受控终端的地址信息的请求,并接收服务器反馈的该受控终端的地址;或者, 控制终端也可以通过已经建立的控制通道向受控终端请求该受控终端的地址 信息。
第一路径确定单元 2012c, 用于根据所述控制终端的地址信息和所述受控 终端的地址信息确定连接路径;
第一建立单元 2012d, 用于根据所述连接路径建立所述数据通道。
所述第一路径确定单元 2012c包括:
合成子单元 2012cl,用于将所述控制终端的地址信息和所述受控终端的地 址信息合成为地址对;
测试子单元 2012c2, 用于对所述地址对进行连通性测试;
建立子单元 2012c3, 用于根据所述连通性测试的结果确定所述连接路径。 以控制终端和受控终端通过该服务器和该控制通道进行地址信息的获取 和交换, 并根据双方的地址信息进行数据通道的建立, 数据通道可以由控制终 端或者受控终端发起建立, 控制终端主动发起数据通道的建立为例, 其具体流 程可以如下:
1 )控制终端通过控制通道向受控终端发起数据通道建立指令;
智能手机 A通过以控制通道服务器为中继的控制通道向智能手机 B发送 数据通道建立指令。
2 )控制终端从数据通道服务器获取该控制终端的地址信息;
智能手机 A向数据通道服务器发送地址收集请求,数据通道服务器根据该 地址收集请求将智能手机 A的地址信息返回给智能手机 A。该地址信息可以包 括三类, 分别为智能手机的本地地址、 NAT ( Network Address Translation, 网 络地址转换 )公网映射地址和 TURN ( Traversal Using Relays around NAT, 中 继穿透 NAT ) 的中继地址等。
3 ) 受控终端从数据通道服务器获取该受控终端的地址信息;
同样的, 智能手机 B在接收到数据通道建立指令后, 也向数据通道服务器 发送地址收集请求,数据通道服务器根据该地址收集请求将智能手机 B的地址 信息返回给智能手机 B。
4 )控制终端通过控制通道从受控终端获取受控终端的地址信息; 智能手机 A接收智能手机 B通过控制通道发送的, 该智能手机 B的地址 信息。
5 )控制终端根据控制终端的地址信息和受控终端的地址信息确定连接路 径;
智能手机 A将自身的三类地址与智能手机 B的三类地址合成地址对, 对 合成获得的地址对进行连通性测试,根据连通性测试的结果确定最优的路径作 为连接路径。
6 )控制终端通过确定的连接路径建立数据通道。
控制终端也可以直接从服务器获取受控终端的地址信息, 比如, 控制终端 可以向服务器发送收集受控终端的地址信息的请求,服务器将受控终端的地址 信息发送给控制终端, 由控制终端根据自身的地址信息和受控终端的地址信息 确定连接路径并建立数据通道。
或者, 上述数据通道的建立过程也可以由受控终端发起, 其建立流程与上 述过程类似。
需要说明的是, 该数据通道可以通过中继方式进行建立, 也可以通过直连 方式建立, 比如, 当控制终端和受控终端之间可以通过无线局域网或者蓝牙等 进行直接连接时, 可以通过直连方式建立该数据通道; 当控制终端和受控终端 之间只能通过互联网络建立连接时, 可以建立以服务器为中继的数据通道。
此外, 由于图像信息数据量较大, 且对传输的可靠性以及准确性的要求不 高, 可允许一定的丟包, 因此, 该数据通道可以基于 UDP ( User Data Protocol, 用户数据报协议)协议建立。
上述控制通道和数据通道的建立过程都需要通过服务器进行中继,在实际 应用中, 也可以不通过服务器, 直接建立控制通道和 /或数据通道。
比如, 当控制终端和受控终端处于同一无线局域网或者处于蓝牙连接范围 内时, 可以通过无线局域网或者蓝牙直接建立该控制通道和该数据通道, 不需 要经过服务器进行中继转发。
或者, 当控制终端和受控终端处于同一无线局域网或者处于蓝牙连接范围 内时, 可以通过无线局域网或者蓝牙直接建立该控制通道, 并通过服务器建立 该数据通道。
或者, 当控制终端和受控终端处于同一无线局域网或者处于蓝牙连接范围 内时, 可以通过服务器建立该控制通道, 并通过无线局域网或者蓝牙直接建立 该数据通道。
图像数据接收模块 202, 用于接收所述受控终端通过所述数据通道发送的 屏幕图像数据;
受控终端屏幕点亮时, 可以按照指定的帧率抓取屏幕图像数据, 该指定帧 率可以是一个固定的帧率,比如,受控终端可以设置该指定帧率为固定的 30FPS ( Frames Per Second,每秒传输帧数), 即每秒抓取 30帧屏幕图像的图像数据; 或者, 受控终端也可以根据屏幕显示的内容动态设定指定帧率, 比如, 当屏幕 中显示的内容为静态的页面时, 可以为该指定帧率设置一个较低的数值 (比如
10 ), 当屏幕中显示的内容为动态的视频时, 可以为该指定帧率设置一个较高 的数值 (比如 60 )。
数据通道建立起来后,受控终端就可以进行图像和 /或音频等媒体数据的传 输。 受控终端将按照指定帧率抓取的屏幕图像数据进行编码 (比如按照 H.264 方式进行编码)后, 通过数据通道传输到控制终端。
显示模块 203,用于根据所述屏幕图像数据显示所述受控终端的屏幕截图; 智能手机 A接收到智能手机 B通过数据通道发送的屏幕图像数据后, 以 合适的分辨率在屏幕中显示智能手机 B的屏幕截图。
操作信息生成模块 204, 用于根据基于所述屏幕截图的操作生成相应的操 作信息;
其中,所述操作信息包括触控信息、按键信息或者语音信息中的至少一种, 所述操作信息生成模块 204包括:
监听子模块 2041,用于当所述操作信息为触控信息时,监听所述操作对应 的触控事件;
第一生成子模块 2042, 用于根据所述触控事件生成所述操作信息; 第一按键类型确定子模块 2043,用于当所述操作信息为按键信息时,确定 所述操作对应的按键类型;
第二生成子模块 2044,用于生成包含所述按键类型对应的标识的所述操作 信息;
语音识别子模块 2045,用于当所述操作信息为语音信息时,将所述操作对 应的语音识别为文本;
第二生成子模块 2046,用于提取所述文本中包含的控制指令,生成包含所 述控制指令对应的标识的所述操作信息。
所述第一生成子模块 2042, 包括: 第一生成单元 2042a或者第二生成单元 2042b;
所述第一生成单元 2042a, 用于将所述触控事件序列化为字节流, 生成包 含有所述字节流的所述操作信息;
所述第二生成单元 2042b, 用于提取所述触控事件的关键信息, 将所述关 键信息编码为指定格式文件, 生成包含所述指定格式文件的所述操作信息, 所 述关键信息包括事件类型、 触控坐标和 /或触控力度。
操作信息发送模块 205, 用于将所述操作信息通过所述控制通道发送给所 述受控终端, 由所述受控终端根据所述操作信息执行相应的控制操作。
以智能手机为例,用户在智能手机 A中的操作可以分为触控操作、按键操 作以及语音操作, 对应生成的操作信息分别为触控信息、 按键信息以及语音信 息, 其处理方法分别如下:
1 )对于触控信息, 当用户在智能手机 A侧基于智能手机 B的屏幕截图进 行触控操作, 比如进行滑屏、 点击、 长按或者手势等操作时, 智能手机 A对生 成的触控事件 MotionEvent进行序列化为字节流并发送出去, 智能手机 B对字 节流进行反序列化, 还原触控事件。 或者, 智能手机 A提取触控事件里面的关 键信息 (包括事件类型、 触控坐标、 触控力度等), 将关键信息编码为 xml或 json等格式的文件。 智能手机 B根据 xml或 json等格式的文件提取关键信息, 并据以还原触控事件。 智能手机 B根据还原的触控事件执行相应的控制操作。
以 xml格式为例, 编码后的文件可以如下:
<?xml version 1.0" encoding="UTF-8" ?>
<motionevent>
<surfacex>1080.0</surfacex>
<surfacey>1519.0</surfacey>
<extra> 122.0</extra>
<action>0</ action>
<pointlist><point><pointx>563.0</pointxxpointy>764.0</pointyx/point></ pointlistxpressure>0.31764707 </pressure>
<size〉0.0</size〉
<metastate>0</metastate>
<buttonstate>0</buttonstate>
<xprecision>l .0</xprecision>
<yprecision>l .0</yprecision>
<edgeflags〉0</edgeflags〉
<source>4098</source>
<flags>0</flags>
</motionevent> 控制终端显示受控终端的屏幕截图时,在控制终端中显示的屏幕截图的分 辨率与受控终端实际显示的屏幕图像的分辨率通常并不一致, 相应的, 用户在 控制终端中基于受控终端的屏幕截图进行触控操作时, 生成的触控事件中包含 的触控坐标与该触控操作映射在受控终端实际屏幕图像中的坐标也不一致, 对 此,控制终端首先需要将原始的触控事件中的触控坐标转化为映射在受控终端 的屏幕中的映射坐标, 使用该映射坐标替换原始的触控事件中的触控坐标, 再 根据替换映射坐标后的触控事件生成触控信息。 具体的, 受控终端可以通过控 制通道将受控终端的分辨率发送给控制终端,控制终端根据屏幕截图的显示区 域坐标,原始的触控事件中的触控坐标以及受控终端的屏幕分辨率确定该映射 坐标。
或者, 上述坐标转化的步骤也可以由受控终端来完成, 即控制终端不对原 始的触控事件进行处理, 直接生成触控信息, 受控终端通过控制通道获取控制 终端中的屏幕截图的显示区域坐标,从触控信息中提取原始的触控事件中的触 控坐标, 并根据该屏幕截图的显示区域坐标、 提取出的触控坐标以及受控终端 自身的屏幕分辨率确定该映射坐标。
以上述坐标转化步骤由控制终端完成为例,请参考图 3所示的触控坐标映 射示意图, 其中, 智能手机 A与智能手机 B建立控制通道和数据通道后, 智 能手机 A接收智能手机 B的屏幕图像数据, 在智能手机 A屏幕中的截图显示 区域显示该智能手机 B的屏幕截图, 该截图显示区域为智能手机 A的屏幕中 的一部分, 用户在智能手机 A屏幕中的截图显示区域进行触控操作时,生成的 原始触控事件中包含的触控坐标(x, y )为触控点在智能手机 A的屏幕中的坐 标, 智能手机 A监控到该原始的触控事件后,将该原始的触控事件中的触控坐 标(x, y )替换为其映射在受控终端的屏幕中的映射坐标(x, y ), 根据替换 触控坐标后的触控事件生成触控信息, 比如, 对替换触控坐标后的触控事件进 行序列化, 或者, 将映射坐标(x', y )作为关键信息进行提取并编码。
用户可以通过触控操作在控制终端中对受控终端进行控制, 比如, 请参考 图 4所示的远程控制操作示意图, 智能手机 A与智能手机 B建立控制通道和 数据通道后,智能手机 A接收智能手机 B的屏幕图像数据,并显示智能手机 B 的屏幕截图, 该屏幕截图为智能手机 B的主界面截图, 该屏幕截图中包含各个 应用程序的图标, 智能手机 A侧的用户点击该屏幕截图中某一应用程序(程序 名为 "XYZ" ) 的图标区域时, 智能手机 A根据触控点的坐标确定该触控点映 射在智能手机 B中的映射坐标,并将该映射坐标和触控类型编码为触控信息并 发送给智能手机 B, 智能手机 B根据该触控信息还原触控事件, 根据该触控事 件打开应用程序 XYZ。 进一步的, 智能手机 Β打开应用程序 ΧΥΖ并显示其应 用程序界面后,用户在智能手机 Α中点击该应用程序界面的截图中的功能按键 (比如进入次级页面或者退出应用程序等等)对应的位置时, 智能手机 B可以 根据该功能按键对该应用程序进行控制。
或者, 用户也可以通过触控操作在受控终端中进行远程屏幕涂鸦, 比如, 请参考图 5所示的远程涂鸦操作示意图, 其中, 智能手机 A与智能手机 B建 立控制通道和数据通道后, 智能手机 B打开涂鸦面板, 智能手机 A接收智能 手机 B的屏幕图像数据, 并显示该涂鸦面板的截图, 智能手机 A侧的用户在 该涂鸦面板的截图中进行滑动操作,智能手机 A根据滑动操作划过的轨迹上的 各个坐标确定映射在智能手机 B中的各个映射坐标,并将该各个映射坐标和触 控类型编码为触控信息并发送给智能手机 B,智能手机 B根据该触控信息还原 触控事件,根据该触控事件在智能手机 B显示的涂鸦面板中显示该滑动操作的 轨迹图案。
2)对于按键信息, 智能手机 A可以对按键事件(比如返回键、 home键、 菜 单键、 音量键等所有物理按键或虚拟按键)进行编码, 将每一种按键类型定义 唯一的标识, 智能手机 A将按键事件对应的按键类型编码为标识发送到智能手 机:^ 智能手机 B根据标识还原为相应的按键事件。智能手机 B按照还原的按 键事件执行相应的控制操作。
3)对于语音信息, 智能手机 A首先将语音转为为文字, 提取文字中的控制 指令, 为每一种控制指令定义唯一的标识, 智能手机 A将语音编码为标识发送 到智能手机 B, 智能手机 B根据标识还原相应控制指令。 比如, 用户对智能手 机 A输入 "打电话" 声音, 智能手机 A将 "打电话" 编码为唯一标识并发送 到智能手机 B, 智能手机 B将该唯一标识识别为 "打电话" 的指令。 智能手机 B根据识别出的指令进行相应的控制操作。
综上所述, 本发明实施例提供的控制终端, 通过建立与受控终端之间的控 制通道和数据通道, 接收受控终端通过数据通道发送的屏幕图像数据, 根据屏 幕图像数据显示受控终端的屏幕截图,根据基于屏幕截图的操作生成相应的操 作信息, 将操作信息通过控制通道发送给受控终端, 由受控终端根据操作信息 执行相应的控制操作,使用两个独立的通道来传输两个终端之间的控制信息和 屏幕图像数据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而 导致的控制终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户 操作进行响应的问题, 达到提高控制效果和用户体验的目的。 请参考图 6, 其示出了本发明一个实施例提供的控制终端的框图。 该控制 终端 300可以用于对受控终端进行远程控制, 该控制终端和受控终端可以是带 有显示单元, 且具有相同的操作模式的移动终端, 比如智能手机、 平板电脑以 及电子书阅读器等。该控制终端 300可以包括: 总线 305, 以及连接到总线 305 的处理器 301、 存储器 302、 发射器 303和接收器 304。 其中, 存储器 302用于 存储若干个指令, 该若干个指令被配置成由处理器 301执行;
所述处理器 301, 用于控制所述接收器 304和所述发射器 303, 建立与受 控终端之间的控制通道和数据通道;
所述接收器 304, 用于接收所述受控终端通过所述数据通道发送的屏幕图 像数据, 所述屏幕图像数据用于指示所述受控终端的屏幕截图;
所述处理器 301, 用于根据所述屏幕图像数据在显示设备中显示所述受控 终端的屏幕截图, 根据基于所述屏幕截图的操作生成相应的操作信息;
所述处理器 301, 用于控制所述发射器 303将所述操作信息通过所述控制 通道发送给所述受控终端, 由所述受控终端根据所述操作信息执行相应的控制 操作。
综上所述, 本发明实施例提供的控制终端, 通过建立与受控终端之间的控 制通道和数据通道, 接收受控终端通过数据通道发送的屏幕图像数据, 根据屏 幕图像数据显示受控终端的屏幕截图,根据基于屏幕截图的操作生成相应的操 作信息, 将操作信息通过控制通道发送给受控终端, 由受控终端根据操作信息 执行相应的控制操作,使用两个独立的通道来传输两个终端之间的控制信息和 屏幕图像数据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而 导致的控制终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户 操作进行响应的问题, 达到提高控制效果和用户体验的目的。 请参考图 7, 其示出了本发明另一实施例提供的控制终端的框图。 该控制 终端 400可以用于对受控终端进行远程控制, 该控制终端和受控终端可以是带 有显示单元, 且具有相同的操作模式的移动终端, 比如智能手机、 平板电脑以 及电子书阅读器等。该控制终端 400可以包括: 总线 405, 以及连接到总线 405 的处理器 401、 存储器 402、 发射器 403和接收器 404。 其中, 存储器 402用于 存储若干个指令, 该若干个指令被配置成由处理器 401执行;
所述处理器 401, 用于控制所述接收器 404和所述发射器 403, 建立与受 控终端之间的控制通道和数据通道;
所述处理器 401, 用于控制所述接收器 404和所述发射器 403, 通过所述 服务器建立与所述受控终端之间的控制通道;
所述处理器 401, 用于控制所述接收器 404和所述发射器 403, 通过所述 服务器和所述控制通道建立与所述受控终端之间的数据通道。
具体的, 在建立数据通道时, 所述处理器 401, 用于控制所述接收器 404 和所述发射器 403, 从所述服务器获取所述控制终端的地址信息, 所述地址信 息包括本地地址、 网络地址转换的映射地址和中继穿透网络地址转换的中继地 址;
所述处理器 401, 用于控制所述接收器 404和所述发射器 403, 从所述服 务器或者所述受控终端获取所述受控终端的地址信息;
所述处理器 401, 用于根据所述控制终端的地址信息和所述受控终端的地 址信息确定连接路径;
所述处理器 401, 用于控制所述接收器 404和所述发射器 403, 根据所述 连接路径建立所述数据通道。
其中, 在确定连接路径时, 所述处理器 401, 用于将所述控制终端的地址 信息和所述受控终端的地址信息合成为地址对, 对所述地址对进行连通性测 试, 根据所述连通性测试的结果确定所述连接路径。
该控制通道和数据通道的建立流程可以如图 2对应实施例中的描述, 此处 不再赘述。
所述接收器 404, 用于接收所述受控终端通过所述数据通道发送的屏幕图 像数据, 所述屏幕图像数据用于指示所述受控终端的屏幕截图;
所述处理器 401, 用于根据所述屏幕图像数据在显示设备中显示所述受控 终端的屏幕截图, 根据基于所述屏幕截图的操作生成相应的操作信息;
其中,所述操作信息包括触控信息、按键信息或者语音信息中的至少一种; 所述处理器 401, 用于当所述操作信息为触控信息时, 监听所述操作对应的触 控事件, 根据所述触控事件生成所述操作信息; 所述处理器 401, 用于当所述操作信息为按键信息时, 确定所述操作对应 的按键类型, 生成包含所述按键类型对应的标识的所述操作信息;
所述处理器 401, 用于当所述操作信息为语音信息时, 将所述操作对应的 语音识别为文本, 提取所述文本中包含的控制指令, 生成包含所述控制指令对 应的标识的所述操作信息。
在根据所述触控事件生成所述操作信息时, 所述处理器 401, 用于将所述 触控事件序列化为字节流, 生成包含有所述字节流的所述操作信息; 或者, 所 述处理器 401, 用于提取所述触控事件的关键信息, 将所述关键信息编码为指 定格式文件, 生成包含所述指定格式文件的所述操作信息, 所述关键信息包括 事件类型、 触控坐标和 /或触控力度。
触控信息的生成步骤请参见图 2对应实施例中的描述, 此处不再赘述。 所述处理器 401, 用于控制所述发射器 403将所述操作信息通过所述控制 通道发送给所述受控终端, 由所述受控终端根据所述操作信息执行相应的控制 操作。
综上所述, 本发明实施例提供的控制终端, 通过建立与受控终端之间的控 制通道和数据通道, 接收受控终端通过数据通道发送的屏幕图像数据, 根据屏 幕图像数据显示受控终端的屏幕截图,根据基于屏幕截图的操作生成相应的操 作信息, 将操作信息通过控制通道发送给受控终端, 由受控终端根据操作信息 执行相应的控制操作,使用两个独立的通道来传输两个终端之间的控制信息和 屏幕图像数据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而 导致的控制终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户 操作进行响应的问题, 达到提高控制效果和用户体验的目的。 请参考图 8, 其示出了本发明一个实施例提供的受控终端的结构示意图, 该受控终端用于接收如图 1、 图 2、 图 6或图 7任一所示的控制终端的远程控 制, 该控制终端和受控终端可以是带有显示单元, 且具有相同的操作模式的移 动终端, 比如智能手机、平板电脑以及电子书阅读器等。该受控终端可以包括: 第二通道建立模块 501,用于建立与控制终端之间的控制通道和数据通道; 图像数据获取模块 502, 用于获取用于指示所述受控终端的屏幕截图的屏 幕图像数据;
图像数据发送模块 503, 用于通过所述数据通道向所述控制终端发送所述 屏幕图像数据, 由所述控制终端根据所述屏幕数据图像显示所述受控终端的屏 幕截图;
操作信息接收模块 504, 用于接收所述控制终端通过所述控制通道发送的 操作信息, 所述操作信息为所述控制终端根据基于所述屏幕截图的操作生成的 信息;
执行模块 505, 用于根据所述操作信息执行相应的控制操作。
综上所述, 本发明实施例提供的受控终端, 通过建立与控制终端之间的控 制通道和数据通道; 获取所述受控终端的屏幕图像数据并通过所述数据通道向 所述控制终端发送所述屏幕图像数据,接收所述控制终端通过所述控制通道发 送的操作信息, 并根据所述操作信息执行相应的控制操作, 使用两个独立的通 道来传输两个终端之间的控制信息和屏幕图像数据,避免屏幕数据和操作信息 在传输逻辑和传输时间上存在冲突而导致的控制终端侧显示的受控终端的屏 幕截图无法及时对控制终端侧的用户操作进行响应的问题, 达到提高控制效果 和用户体验的目的。
请参考图 9, 其示出了本发明另一实施例提供的受控终端的结构示意图, 该受控终端用于接收如图 1、 图 2、 图 6或图 7任一所示的控制终端的远程控 制, 该控制终端和受控终端可以是带有显示单元, 且具有相同的操作模式的移 动终端, 比如智能手机、平板电脑以及电子书阅读器等。该受控终端可以包括: 第二通道建立模块 601,用于建立与控制终端之间的控制通道和数据通道; 其中, 所述第二通道建立模块 601, 包括:
第三通道建立子模块 6011,用于通过所述服务器建立与所述控制终端之间 的控制通道;
第四通道建立子模块 6012,用于通过所述服务器和所述控制通道建立与所 述控制终端之间的数据通道。
其中, 所述第四通道建立子模块 6012, 包括:
第三地址获取单元 6012a, 用于从所述服务器获取所述受控终端的地址信 息, 所述地址信息包括本地地址、 网络地址转换的映射地址和中继穿透网络地 址转换的中继地址;
第四地址获取单元 6012b, 用于从所述服务器或者所述控制终端获取所述 控制终端的地址信息; 第二路径确定单元 6012c, 用于根据所述控制终端的地址信息和所述受控 终端的地址信息确定连接路径;
第二建立单元 6012d, 用于根据所述连接路径建立所述数据通道。
在根据该控制终端的地址信息和该受控终端的地址信息确定连接路径时, 受控终端将该控制终端的地址信息和该受控终端的地址信息合成为地址对, 对 该地址对进行连通性测试, 根据该连通性测试的结果确定该连接路径。
以控制终端和受控终端通过该服务器和该控制通道进行地址信息的获取 和交换, 并根据双方的地址信息进行数据通道的建立, 数据通道可以由控制终 端或者受控终端发起建立, 控制终端主动发起数据通道的建立为例, 其具体流 程可以如下:
1 )控制终端通过控制通道向受控终端发起数据通道建立指令;
智能手机 A通过以控制通道服务器为中继的控制通道向智能手机 B发送 数据通道建立指令。
2 )控制终端从数据通道服务器获取该控制终端的地址信息;
智能手机 A向数据通道服务器发送地址收集请求,数据通道服务器根据该 地址收集请求将智能手机 A的地址信息返回给智能手机 A。该地址信息可以包 括三类, 分别为智能手机的本地地址、 NAT ( Network Address Translation, 网 络地址转换 )公网映射地址和 TURN ( Traversal Using Relays around NAT, 中 继穿透 NAT ) 的中继地址等。
3 ) 受控终端从数据通道服务器获取该受控终端的地址信息;
同样的, 智能手机 B在接收到数据通道建立指令后, 也向数据通道服务器 发送地址收集请求,数据通道服务器根据该地址收集请求将智能手机 B的地址 信息返回给智能手机 B。
4 ) 受控终端通过控制通道从控制终端获取控制终端的地址信息; 智能手机 A将自身的地址信息通过控制通道发送给智能手机 B。
5 ) 受控终端根据控制终端的地址信息和受控终端的地址信息确定连接路 径;
智能手机 B同样将自身的三类地址与智能手机 A的三类地址合成地址对, 对合成获得的地址对进行连通性测试,根据连通性测试的结果确定最优的路径 作为连接路径。
6 ) 受控终端通过确定的连接路径建立数据通道。 控制终端也可以直接从服务器获取受控终端的地址信息, 比如, 控制终端 可以向服务器发送收集受控终端的地址信息的请求,服务器将受控终端的地址 信息发送给控制终端, 由控制终端根据自身的地址信息和受控终端的地址信息 确定连接路径并建立数据通道。
图像数据获取模块 602, 用于获取用于指示所述受控终端的屏幕截图的屏 幕图像数据;
图像数据发送模块 603, 用于通过所述数据通道向所述控制终端发送所述 屏幕图像数据, 由所述控制终端根据所述屏幕数据图像显示所述受控终端的屏 幕截图;
操作信息接收模块 604, 用于接收所述控制终端通过所述控制通道发送的 操作信息, 所述操作信息为所述控制终端根据基于所述屏幕截图的操作生成的 信息;
执行模块 605, 用于根据所述操作信息执行相应的控制操作。
其中,所述操作信息包括触控信息、按键信息或者语音信息中的至少一种, 所述执行模块 605, 包括:
事件还原子模块 6051,用于当所述操作信息为触控信息时,根据所述控制 信息还原所述触控操作对应的触控事件;
第一执行子模块 6052, 用于根据所述触控事件执行所述控制操作; 第二按键类型确定子模块 6053,用于当所述操作信息为按键信息时,根据 所述操作信息中包含的标识确定所述按键操作对应的按键类型;
第二执行子模块 6054, 用于根据所述按键类型执行所述控制操作; 指令确定子模块 6055,用于当所述操作信息为语音信息时,根据所述操作 信息中包含的标识确定所述语音操作对应的控制指令;
第三执行子模块 6056, 用于根据所述控制指令执行所述控制操作。
所述事件还原子模块, 包括: 第一还原单元 6051a 或者第二还原单元
6051b;
所述第一还原单元 6051a, 用于对所述操作信息中包含的字节流进行反序 列化, 以还原所述触控事件;
所述第二还原单元 6051b, 用于从所述操作信息中包含的指定格式文件中 提取所述触控事件的关键信息, 根据所述关键信息还原所述触控事件, 所述关 键信息包括事件类型、 触控坐标和 /或触控力度。 其中, 受控终端接收控制终端的具体过程请参考图 2对应的实施例中的描 述, 此处不再赘述。
综上所述, 本发明实施例提供的受控终端, 通过建立与控制终端之间的控 制通道和数据通道; 获取所述受控终端的屏幕图像数据并通过所述数据通道向 所述控制终端发送所述屏幕图像数据,接收所述控制终端通过所述控制通道发 送的操作信息, 并根据所述操作信息执行相应的控制操作, 使用两个独立的通 道来传输两个终端之间的控制信息和屏幕图像数据,避免屏幕数据和操作信息 在传输逻辑和传输时间上存在冲突而导致的控制终端侧显示的受控终端的屏 幕截图无法及时对控制终端侧的用户操作进行响应的问题, 达到提高控制效果 和用户体验的目的。
请参考图 10,其示出了本发明一个实施例提供的受控终端的框图。该受控 终端 700用于接收如图 1、 图 2、 图 6或图 7任一所示的控制终端的远程控制, 该控制终端和受控终端可以是带有显示单元, 且具有相同的操作模式的移动终 端, 比如智能手机、平板电脑以及电子书阅读器等。该受控终端 700可以包括: 总线 705, 以及连接到总线 705的处理器 701、存储器 702、发射器 703和接收 器 704。 其中, 存储器 702用于存储若干个指令, 该若干个指令被配置成由处 理器 701执行;
所述处理器 701, 用于控制所述接收器 704和所述发射器 703, 建立与控 制终端之间的控制通道和数据通道;
所述处理器 701, 用于获取用于指示所述受控终端的屏幕截图的屏幕图像 数据;
所述处理器 701, 用于控制所述发射器 703, 通过所述数据通道向所述控 制终端发送所述屏幕图像数据, 由所述控制终端根据所述屏幕数据图像显示所 述受控终端的屏幕截图;
所述接收器 704, 用于接收所述控制终端通过所述控制通道发送的操作信 息, 所述操作信息为所述控制终端根据基于所述屏幕截图的操作生成的信息; 所述处理器 701, 用于根据所述操作信息执行相应的控制操作。
综上所述, 本发明实施例提供的受控终端, 通过建立与控制终端之间的控 制通道和数据通道; 获取所述受控终端的屏幕图像数据并通过所述数据通道向 所述控制终端发送所述屏幕图像数据,接收所述控制终端通过所述控制通道发 送的操作信息, 并根据所述操作信息执行相应的控制操作, 使用两个独立的通 道来传输两个终端之间的控制信息和屏幕图像数据,避免屏幕数据和操作信息 在传输逻辑和传输时间上存在冲突而导致的控制终端侧显示的受控终端的屏 幕截图无法及时对控制终端侧的用户操作进行响应的问题, 达到提高控制效果 和用户体验的目的。 请参考图 11, 其示出了本发明另一实施例提供的受控终端的框图。该受控 终端 800用于接收如图 1、 图 2、 图 6或图 7任一所示的控制终端的远程控制, 该控制终端和受控终端可以是带有显示单元, 且具有相同的操作模式的移动终 端, 比如智能手机、平板电脑以及电子书阅读器等。该受控终端 800可以包括: 总线 805, 以及连接到总线 805的处理器 801、存储器 802、发射器 803和接收 器 804。 其中, 存储器 802用于存储若干个指令, 该若干个指令被配置成由处 理器 801执行;
所述处理器 801, 用于控制所述接收器 804和所述发射器 803, 建立与控 制终端之间的控制通道和数据通道;
所述处理器 801, 用于控制所述接收器 804和所述发射器 803, 通过所述 服务器建立与所述控制终端之间的控制通道;
所述处理器 801, 用于控制所述接收器 804和所述发射器 803, 通过所述 服务器和所述控制通道建立与所述控制终端之间的数据通道。
在建立所述数据通道时, 所述处理器 801, 用于控制所述接收器 804和所 述发射器 803, 从所述服务器获取所述受控终端的地址信息, 所述地址信息包 括本地地址、 网络地址转换的映射地址和中继穿透网络地址转换的中继地址; 所述处理器 801, 用于控制所述接收器 804和所述发射器 803, 从所述服 务器或者所述控制终端获取所述控制终端的地址信息;
所述处理器 801, 用于 4艮据所述控制终端的地址信息和所述受控终端的地 址信息确定连接路径;
所述处理器 801, 用于控制所述接收器 804和所述发射器 803, 4艮据所述 连接路径建立所述数据通道。
所述处理器 801, 用于获取用于指示所述受控终端的屏幕截图的屏幕图像 数据;
所述处理器 801, 用于控制所述发射器 803, 通过所述数据通道向所述控 制终端发送所述屏幕图像数据, 由所述控制终端根据所述屏幕数据图像显示所 述受控终端的屏幕截图;
所述接收器 804, 用于接收所述控制终端通过所述控制通道发送的操作信 息, 所述操作信息为所述控制终端根据基于所述屏幕截图的操作生成的信息; 所述处理器 801, 用于根据所述操作信息执行相应的控制操作。
所述操作信息包括触控信息、 按键信息或者语音信息中的至少一种; 在执 行控制操作时, 所述处理器 801, 用于当所述操作信息为触控信息时, 根据所 述控制信息还原所述触控操作对应的触控事件,根据所述触控事件执行所述控 制操作;
在根据控制信息还原触控操作对应的触控事件时, 所述处理器 801, 用于 对所述操作信息中包含的字节流进行反序列化, 以还原所述触控事件; 或者, 所述处理器 801, 用于从所述操作信息中包含的指定格式文件中提取所述触控 事件的关键信息, 根据所述关键信息还原所述触控事件, 所述关键信息包括事 件类型、 触控坐标和 /或触控力度。
所述处理器 801, 用于当所述操作信息为按键信息时, 根据所述操作信息 中包含的标识确定所述按键操作对应的按键类型,根据所述按键类型执行所述 控制操作。
所述处理器 801, 用于当所述操作信息为语音信息时, 根据所述操作信息 中包含的标识确定所述语音操作对应的控制指令,根据所述控制指令执行所述 控制操作。
综上所述, 本发明实施例提供的受控终端, 通过建立与控制终端之间的控 制通道和数据通道; 获取所述受控终端的屏幕图像数据并通过所述数据通道向 所述控制终端发送所述屏幕图像数据,接收所述控制终端通过所述控制通道发 送的操作信息, 并根据所述操作信息执行相应的控制操作, 使用两个独立的通 道来传输两个终端之间的控制信息和屏幕图像数据,避免屏幕数据和操作信息 在传输逻辑和传输时间上存在冲突而导致的控制终端侧显示的受控终端的屏 幕截图无法及时对控制终端侧的用户操作进行响应的问题, 达到提高控制效果 和用户体验的目的。
请参考图 12,其示出了本发明一个实施例提供的服务器的结构示意图,该 服务器用于建立如图 1、 图 2、 图 6或图 7任一所示的控制终端和如图 8至 11 任一所示的受控终端之间的连接, 以便控制终端对受控终端进行远程控制, 该 控制终端和受控终端可以是带有显示单元, 且具有相同的操作模式的移动终 端, 比如智能手机、 平板电脑以及电子书阅读器等。 该服务器可以包括:
控制通道建立模块 901, 用于建立控制终端与受控终端之间的控制通道; 第一地址提供模块 902, 用于向所述控制终端提供所述控制终端的地址信 息, 并向所述受控终端提供所述受控终端的地址信息, 使所述控制终端和所述 受控终端通过所述控制通道进行地址信息的交换后, 由所述控制终端或者所述 受控终端根据所述控制终端的地址信息和所述受控终端的地址信息确定连接 路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通过所述控制通 道和所述数据通道对所述受控终端进行控制;
第二地址提供模块 903, 用于向所述控制终端提供所述控制终端的地址信 息和所述受控终端的地址信息, 由所述控制终端 4艮据所述控制终端的地址信息 和所述受控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通 道, 并由所述控制终端通过所述控制通道和所述数据通道对所述受控终端进行 控制;
第三地址提供模块 904, 用于向所述受控终端提供所述控制终端的地址信 息和所述受控终端的地址信息, 由所述受控终端 4艮据所述控制终端的地址信息 和所述受控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通 道, 并由所述控制终端通过所述控制通道和所述数据通道对所述受控终端进行 控制。
综上所述, 本发明实施例提供的服务器, 通过建立控制终端与受控终端之 间的控制通道和数据通道; 并由控制终端通过控制通道和数据通道对受控终端 进行控制,使用两个独立的通道来传输两个终端之间的控制信息和屏幕图像数 据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而导致的控制 终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户操作进行响 应的问题, 达到提高控制效果和用户体验的目的。 请参考图 13,其示出了本发明另一实施例提供的服务器的结构示意图,该 服务器用于建立如图 1、 图 2、 图 6或图 7任一所示的控制终端和如图 8至 11 任一所示的受控终端之间的连接, 以便控制终端对受控终端进行远程控制, 该 控制终端和受控终端可以是带有显示单元, 且具有相同的操作模式的移动终 端, 比如智能手机、 平板电脑以及电子书阅读器等。 该服务器可以包括: 控制通道建立模块 1001, 用于建立控制终端与受控终端之间的控制通道; 其中, 所述控制通道建立模块 1001, 包括:
请求接收子模块 10011, 用于在所述控制终端接入所述服务器之后, 接收 所述控制终端发送的控制通道建立请求;
判断子模块 10012, 用于判断所述受控终端是否已经接入所述服务器; 通道建立子模块 10013, 用于若所述判断子模块 10012的判断结果为所述 受控终端已经接入所述服务器, 则建立所述控制终端与所述受控终端之间的所 述控制通道。
所述控制通道建立模块 1001还包括:
通知子模块 10014, 用于若所述判断子模块 10012的判断结果为所述受控 终端未接入所述服务器, 则向所述受控终端发送接入通知, 所述接入通知用于 指示所述受控终端接入所述服务器。
第一地址提供模块 1002,用于向所述控制终端提供所述控制终端的地址信 息, 并向所述受控终端提供所述受控终端的地址信息, 使所述控制终端和所述 受控终端通过所述控制通道进行地址信息的交换后, 由所述控制终端或者所述 受控终端根据所述控制终端的地址信息和所述受控终端的地址信息确定连接 路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通过所述控制通 道和所述数据通道对所述受控终端进行控制;
第二地址提供模块 1003,用于向所述控制终端提供所述控制终端的地址信 息和所述受控终端的地址信息, 由所述控制终端 4艮据所述控制终端的地址信息 和所述受控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通 道, 并由所述控制终端通过所述控制通道和所述数据通道对所述受控终端进行 控制;
第三地址提供模块 1004,用于向所述受控终端提供所述控制终端的地址信 息和所述受控终端的地址信息, 由所述受控终端 4艮据所述控制终端的地址信息 和所述受控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通 道, 并由所述控制终端通过所述控制通道和所述数据通道对所述受控终端进行 控制。
控制通道和数据通道的建立以及控制终端通过控制通道和数据通道对受 控终端进行控制的过程请参考图 2所示实施例中的描述, 此处不再赘述。 综上所述, 本发明实施例提供的服务器, 通过建立控制终端与受控终端之 间的控制通道和数据通道; 并由控制终端通过控制通道和数据通道对受控终端 进行控制,使用两个独立的通道来传输两个终端之间的控制信息和屏幕图像数 据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而导致的控制 终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户操作进行响 应的问题, 达到提高控制效果和用户体验的目的。 请参考图 14,其示出了本发明一个实施例提供的服务器的框图,该服务器 1100用于建立如图 1、 图 2、 图 6或图 7任一所示的控制终端和如图 8至 11任 一所示的受控终端之间的连接, 以便控制终端对受控终端进行远程控制, 该控 制终端和受控终端可以是带有显示单元, 且具有相同的操作模式的移动终端, 比如智能手机、平板电脑以及电子书阅读器等。该服务器 1100包括:总线 1105, 以及连接到所述总线的处理器 1101、存储器 1102、发射器 1103和接收器 1104。 其中, 所述存储器 1102用于存储若干个指令, 所述若干个指令被配置成由所 述处理器 1101执行;
所述处理器 1101,用于控制所述接收器 1104和所述发射器 1103建立控制 终端与受控终端之间的控制通道;
所述处理器 1101,用于控制所述接收器 1104和所述发射器 1103向所述控 制终端提供所述控制终端的地址信息, 并向所述受控终端提供所述受控终端的 地址信息,使所述控制终端和所述受控终端通过所述控制通道进行地址信息的 交换后, 由所述控制终端或者所述受控终端根据所述控制终端的地址信息和所 述受控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并 由所述控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制; 或者, 所述处理器, 用于向所述控制终端提供所述控制终端的地址信息和所述 受控终端的地址信息, 由所述控制终端 4艮据所述控制终端的地址信息和所述受 控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所 述控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制; 或 者, 所述处理器, 用于向所述受控终端提供所述控制终端的地址信息和所述受 控终端的地址信息, 由所述受控终端根据所述控制终端的地址信息和所述受控 终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述 控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制。 综上所述, 本发明实施例提供的服务器, 通过建立控制终端与受控终端之 间的控制通道和数据通道; 并由控制终端通过控制通道和数据通道对受控终端 进行控制,使用两个独立的通道来传输两个终端之间的控制信息和屏幕图像数 据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而导致的控制 终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户操作进行响 应的问题, 达到提高控制效果和用户体验的目的。 请参考图 15,其示出了本发明另一实施例提供的服务器的框图,该服务器 1200用于建立如图 1、 图 2、 图 6或图 7任一所示的控制终端和如图 8至 11 任一所示的受控终端之间的连接, 以便控制终端对受控终端进行远程控制, 该 控制终端和受控终端可以是带有显示单元, 且具有相同的操作模式的移动终 端, 比如智能手机、 平板电脑以及电子书阅读器等。 该服务器 1200 包括: 总 线 1205, 以及连接到所述总线的处理器 1201、存储器 1202、发射器 1203和接 收器 1204。 其中, 所述存储器 1202用于存储若干个指令, 所述若干个指令被 配置成由所述处理器 1201执行;
所述处理器 1201,用于控制所述接收器 1204和所述发射器 1203建立控制 终端与受控终端之间的控制通道;
在控制终端与受控终端之间的控制通道时,所述接收器 1204,用于在所述 控制终端接入所述服务器之后, 接收所述控制终端发送的控制通道建立请求; 所述处理器 1201,用于判断所述受控终端是否已经接入所述服务器,若判 断结果为所述受控终端已经接入所述服务器, 则控制所述接收器 1204和所述 发射器 1203建立所述控制终端与所述受控终端之间的所述控制通道。
所述处理器 1201,用于若判断结果为所述受控终端未接入所述^^务器, 则 控制所述发射器 1203向所述受控终端发送接入通知, 所述接入通知用于指示 所述受控终端接入所述服务器。
所述处理器 1201,用于控制所述接收器 1204和所述发射器 1203向所述控 制终端提供所述控制终端的地址信息, 并向所述受控终端提供所述受控终端的 地址信息,使所述控制终端和所述受控终端通过所述控制通道进行地址信息的 交换后, 由所述控制终端或者所述受控终端根据所述控制终端的地址信息和所 述受控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并 由所述控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制; 或者, 所述处理器, 用于向所述控制终端提供所述控制终端的地址信息和所述 受控终端的地址信息, 由所述控制终端 4艮据所述控制终端的地址信息和所述受 控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所 述控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制; 或 者, 所述处理器, 用于向所述受控终端提供所述控制终端的地址信息和所述受 控终端的地址信息, 由所述受控终端根据所述控制终端的地址信息和所述受控 终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述 控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制。
其中,控制通道和数据通道的建立以及控制终端通过控制通道和数据通道 对受控终端进行控制的过程请参考图 2所示实施例中的描述, 此处不再赘述。
综上所述, 本发明实施例提供的服务器, 通过建立控制终端与受控终端之 间的控制通道和数据通道; 并由控制终端通过控制通道和数据通道对受控终端 进行控制,使用两个独立的通道来传输两个终端之间的控制信息和屏幕图像数 据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而导致的控制 终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户操作进行响 应的问题, 达到提高控制效果和用户体验的目的。 请参考图 16,其示出了本发明一个实施例提供的终端控制方法的方法流程 图, 该方法可以用于在如图 1、 图 2、 图 6或者图 7任一所示的控制终端中对 受控终端进行远程控制, 该控制终端和受控终端可以是带有显示单元, 且具有 相同的操作模式的移动终端, 比如智能手机、 平板电脑以及电子书阅读器等。 该方法可以包括:
步骤 1302, 建立与受控终端之间的控制通道和数据通道;
步骤 1304,接收该受控终端通过该数据通道发送的屏幕图像数据,该屏幕 图像数据用于指示该受控终端的屏幕截图;
步骤 1306, 根据该屏幕图像数据显示该受控终端的屏幕截图;
步骤 1308, 根据基于该屏幕截图的操作生成相应的操作信息;
步骤 1310,将该操作信息通过该控制通道发送给该受控终端, 由该受控终 端根据该操作信息执行相应的控制操作。
综上所述, 本发明实施例提供的终端控制方法, 通过建立与受控终端之间 的控制通道和数据通道, 接收受控终端通过数据通道发送的屏幕图像数据, 根 据屏幕图像数据显示受控终端的屏幕截图,根据基于屏幕截图的操作生成相应 的操作信息, 将操作信息通过控制通道发送给受控终端, 由受控终端根据操作 信息执行相应的控制操作,使用两个独立的通道来传输两个终端之间的控制信 息和屏幕图像数据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲 突而导致的控制终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的 用户操作进行响应的问题, 达到提高控制效果和用户体验的目的。 请参考图 17,其示出了本发明另一实施例提供的终端控制方法的方法流程 图, 该方法可以用于在如图 1、 图 2、 图 6或者图 7任一所示的控制终端中对 受控终端进行远程控制, 该控制终端和受控终端可以是带有显示单元, 且具有 相同的操作模式的移动终端, 比如智能手机、 平板电脑以及电子书阅读器等。 该方法可以包括:
步骤 1402, 建立与受控终端之间的控制通道;
用户想要在控制终端中对受控终端进行控制时, 可以通过控制通道服务器 建立与受控终端之间的控制通道。
或者, 也可以不通过服务器, 控制终端与受控终端直接建立控制通道。 步骤 1404, 建立与受控终端之间的数据通道;
控制终端可以通过该服务器和该控制通道建立与受控终端之间的数据通 道;
控制终端可以从该服务器获取该控制终端的地址信息, 该地址信息包括本 地地址、 网络地址转换的映射地址和中继穿透网络地址转换的中继地址; 控制 终端从服务器或者受控终端获取该受控终端的地址信息; 控制终端根据该控制 终端的地址信息和该受控终端的地址信息确定连接路径; 控制终端根据该连接 路径建立该数据通道。
在根据该控制终端的地址信息和该受控终端的地址信息确定连接路径时, 控制终端将该控制终端的地址信息和该受控终端的地址信息合成为地址对, 对 该地址对进行连通性测试, 根据该连通性测试的结果确定该连接路径。
或者, 也可以不通过服务器, 控制终端与受控终端直接建立数据通道。 其中,控制通道和数据通道的建立流程可以参见图 2对应的实施例中的描 述, 此处不再赘述。
步骤 1406,接收该受控终端通过该数据通道发送的屏幕图像数据,该屏幕 图像数据用于指示该受控终端的屏幕截图;
步骤 1408, 根据该屏幕图像数据显示该受控终端的屏幕截图;
步骤 1410, 根据基于该屏幕截图的操作生成相应的操作信息;
操作信息的生成流程可以参见图 2对应的实施例中的描述,此处不再赘述。 步骤 1412,将该操作信息通过该控制通道发送给该受控终端, 由该受控终 端根据该操作信息执行相应的控制操作。
综上所述, 本发明实施例提供的终端控制方法, 通过建立与受控终端之间 的控制通道和数据通道, 接收受控终端通过数据通道发送的屏幕图像数据, 根 据屏幕图像数据显示受控终端的屏幕截图,根据基于屏幕截图的操作生成相应 的操作信息, 将操作信息通过控制通道发送给受控终端, 由受控终端根据操作 信息执行相应的控制操作,使用两个独立的通道来传输两个终端之间的控制信 息和屏幕图像数据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲 突而导致的控制终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的 用户操作进行响应的问题, 达到提高控制效果和用户体验的目的。 请参考图 18,其示出了本发明一个实施例提供的终端控制方法的方法流程 图, 该方法用于在如图 8至 11 所示的受控终端中, 使受控终端接收控制终端 的远程控制, 该控制终端和受控终端可以是带有显示单元, 且具有相同的操作 模式的移动终端, 比如智能手机、 平板电脑以及电子书阅读器等。 该方法可以 包括:
步骤 1502, 建立与控制终端之间的控制通道和数据通道;
步骤 1504, 获取用于指示该受控终端的屏幕截图的屏幕图像数据; 步骤 1506,通过该数据通道向该控制终端发送该屏幕图像数据, 由该控制 终端根据该屏幕数据图像显示该受控终端的屏幕截图;
步骤 1508,接收该控制终端通过该控制通道发送的操作信息,该操作信息 为该控制终端根据基于该屏幕截图的操作生成的信息;
步骤 1510, 根据该操作信息执行相应的控制操作。
综上所述, 本发明实施例提供的方法, 通过建立与控制终端之间的控制通 道和数据通道; 获取所述受控终端的屏幕图像数据并通过所述数据通道向所述 控制终端发送所述屏幕图像数据,接收所述控制终端通过所述控制通道发送的 操作信息, 并根据所述操作信息执行相应的控制操作, 使用两个独立的通道来 传输两个终端之间的控制信息和屏幕图像数据,避免屏幕数据和操作信息在传 输逻辑和传输时间上存在冲突而导致的控制终端侧显示的受控终端的屏幕截 图无法及时对控制终端侧的用户操作进行响应的问题, 达到提高控制效果和用 户体验的目的。 请参考图 19,其示出了本发明另一实施例提供的终端控制方法的方法流程 图, 该方法用于在如图 8至 11 所示的受控终端中, 使受控终端接收控制终端 的远程控制, 该控制终端和受控终端可以是带有显示单元, 且具有相同的操作 模式的移动终端, 比如智能手机、 平板电脑以及电子书阅读器等。 该方法可以 包括:
步骤 1602, 建立与控制终端之间的控制通道;
步骤 1604, 建立与控制终端之间的数据通道;
该控制通道和数据通道的建立过程请参见图 2对应的实施例中的描述, 此 处不再赘述。
步骤 1606, 按照指定帧率获取该受控终端的屏幕图像数据;
其中, 该屏幕图像数据用于指示该受控终端的屏幕截图。
步骤 1608,通过该数据通道向该控制终端发送该屏幕图像数据, 由该控制 终端根据该屏幕数据图像显示该受控终端的屏幕截图;
步骤 1610,接收该控制终端通过该控制通道发送的操作信息,该操作信息 为该控制终端根据基于该屏幕截图的操作生成的信息;
步骤 1612, 根据该操作信息执行相应的控制操作。
控制终端生成并发送操作信息的流程, 以及受控终端根据操作信息执行相 应的控制操作的流程请参见图 2对应的实施例中的描述, 此处不再赘述。
综上所述, 本发明实施例提供的方法, 通过建立与控制终端之间的控制通 道和数据通道; 获取所述受控终端的屏幕图像数据并通过所述数据通道向所述 控制终端发送所述屏幕图像数据,接收所述控制终端通过所述控制通道发送的 操作信息, 并根据所述操作信息执行相应的控制操作, 使用两个独立的通道来 传输两个终端之间的控制信息和屏幕图像数据,避免屏幕数据和操作信息在传 输逻辑和传输时间上存在冲突而导致的控制终端侧显示的受控终端的屏幕截 图无法及时对控制终端侧的用户操作进行响应的问题, 达到提高控制效果和用 户体验的目的。 请参考图 20,其示出了本发明一个实施例提供的终端控制方法的方法流程 图, 该方法用于在如图 12至 15任一所示的服务器中建立如图 1、 2、 6或 7所 示的控制终端以及如图 8至 11任一所示的受控终端之间的连接, 以便控制终 端对受控终端进行远程控制, 该控制终端和受控终端可以是带有显示单元, 且 具有相同的操作模式的移动终端, 比如智能手机、 平板电脑以及电子书阅读器 等。 该方法可以包括:
步骤 1702, 建立控制终端与受控终端之间的控制通道;
步骤 1704, 向该控制终端提供该控制终端的地址信息, 并向该受控终端提 供该受控终端的地址信息,使该控制终端和该受控终端通过该控制通道进行地 址信息的交换后, 由所述控制终端或者所述受控终端根据该控制终端的地址信 息和该受控终端的地址信息确定连接路径, 并根据连接路径建立该数据通道, 并由该控制终端通过该控制通道和该数据通道对该受控终端进行控制;
步骤 1706,向所述控制终端提供所述控制终端的地址信息和所述受控终端 的地址信息, 由所述控制终端根据所述控制终端的地址信息和所述受控终端的 地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终 端通过所述控制通道和所述数据通道对所述受控终端进行控制;
步骤 1708,向所述受控终端提供所述控制终端的地址信息和所述受控终端 的地址信息, 由所述受控终端 4艮据所述控制终端的地址信息和所述受控终端的 地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终 端通过所述控制通道和所述数据通道对所述受控终端进行控制。
综上所述, 本发明实施例提供的方法, 通过建立控制终端与受控终端之间 的控制通道和数据通道; 并由控制终端通过控制通道和数据通道对受控终端进 行控制, 使用两个独立的通道来传输两个终端之间的控制信息和屏幕图像数 据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而导致的控制 终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户操作进行响 应的问题, 达到提高控制效果和用户体验的目的。 请参考图 21,其示出了本发明另一实施例提供的终端控制方法的方法流程 图, 该方法用于在如图 12至 15任一所示的服务器中建立如图 1、 2、 6或 7所 示的控制终端以及如图 8至 11任一所示的受控终端之间的连接, 以便控制终 端对受控终端进行远程控制, 该控制终端和受控终端可以是带有显示单元, 且 具有相同的操作模式的移动终端, 比如智能手机、 平板电脑以及电子书阅读器 等。 该方法可以包括:
步骤 1802,在控制终端接入该服务器之后,接收该控制终端发送的控制通 道建立清求;
步骤 1804, 判断受控终端是否已经接入该服务器; 若是进入步骤 1806, 否则, 进入步骤 1808;
步骤 1806, 向该受控终端发送接入通知, 返回步骤 1804
步骤 1808, 建立该控制终端与该受控终端之间的该控制通道;
其中,服务器建立控制终端和受控终端之间的控制通道的具体流程请参考 图 2所示的实施例中的描述, 此处不再赘述。
步骤 1810, 向该控制终端提供该控制终端的地址信息, 并向该受控终端提 供该受控终端的地址信息;
步骤 1812, 向控制终端提供控制终端的地址信息和受控终端的地址信息; 步骤 1814, 向受控终端提供控制终端的地址信息和受控终端的地址信息。 服务器向控制终端和 /或受控终端提供地址信息, 以便控制终端和 /或受控 终端建立数据通道的流程, 以及控制终端通过控制通道和数据通道对受控终端 进行远程控制的流程请参考图 2所示的实施例中的描述, 此处不再赘述。
综上所述, 本发明实施例提供的方法, 通过建立控制终端与受控终端之间 的控制通道和数据通道; 并由控制终端通过控制通道和数据通道对受控终端进 行控制, 使用两个独立的通道来传输两个终端之间的控制信息和屏幕图像数 据,避免屏幕数据和操作信息在传输逻辑和传输时间上存在冲突而导致的控制 终端侧显示的受控终端的屏幕截图无法及时对控制终端侧的用户操作进行响 应的问题, 达到提高控制效果和用户体验的目的。 本发明实施例提供了一种终端控制系统的系统构成图,参见图 22,该终端 控制系统用于在控制终端、 被控终端以及服务器之间进行远程控制, 该控制终 端和被控终端可以是智能手机、 平板电脑或者电子书阅读器等移动终端。 该终 端控制系统可以包括:
如图 1、 2、 6或 7所示的控制终端 001、 如图 8至 11任一所示的受控终端
002以及如图 12至 15任一所示的服务器 003。 综上所述, 本发明实施例提供的终端控制系统, 控制终端通过建立与受控 终端之间的控制通道和数据通道,接收受控终端通过数据通道发送的屏幕图像 数据, 根据屏幕图像数据显示受控终端的屏幕截图, 根据基于屏幕截图的操作 生成相应的操作信息, 将操作信息通过控制通道发送给受控终端, 由受控终端 根据操作信息执行相应的控制操作,使用两个独立的通道来传输两个终端之间 的控制信息和屏幕图像数据,避免屏幕数据和操作信息在传输逻辑和传输时间 上存在冲突而导致的控制终端侧显示的受控终端的屏幕截图无法及时对控制 终端侧的用户操作进行响应的问题, 达到提高控制效果和用户体验的目的。 需要说明的是: 上述实施例提供的控制终端在对受控终端进行远程控制 时, 仅以上述各功能模块的划分进行举例说明, 实际应用中, 可以根据需要而 将上述功能分配由不同的功能模块完成, 即将终端的内部结构划分成不同的功 能模块, 以完成以上描述的全部或者部分功能。 另外, 上述实施例提供的控制 终端、 受控终端和服务器与终端控制方法实施例属于同一构思, 其具体实现过 程详见方法实施例, 这里不再赘述。
上述本发明实施例序号仅仅为了描述, 不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通 过硬件来完成, 也可以通过程序来指令相关的硬件完成, 所述的程序可以存储 于一种计算机可读存储介质中, 上述提到的存储介质可以是只读存储器, 磁盘 或光盘等。
以上所述仅为本发明的较佳实施例, 并不用以限制本发明, 凡在本发明的 精神和原则之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的 保护范围之内。

Claims

权 利 要 求 书
1、 一种控制终端, 其特征在于, 所述控制终端包括:
第一通道建立模块, 用于建立与受控终端之间的控制通道和数据通道; 图像数据接收模块, 用于接收所述受控终端通过所述数据通道发送的屏幕 图像数据, 所述屏幕图像数据用于指示所述受控终端的屏幕截图;
显示模块, 用于根据所述屏幕图像数据显示所述受控终端的屏幕截图; 操作信息生成模块, 用于根据基于所述屏幕截图的操作生成相应的操作信 息;
操作信息发送模块, 用于将所述操作信息通过所述控制通道发送给所述受 控终端, 由所述受控终端根据所述操作信息执行相应的控制操作。
2、根据权利要求 1所述的控制终端, 其特征在于, 所述第一通道建立模块, 包括:
第一通道建立子模块, 用于通过所述服务器建立与所述受控终端之间的控 制通道;
第二通道建立子模块, 用于通过所述服务器和所述控制通道建立与所述受 控终端之间的数据通道。
3、 根据权利要求 2所述的控制终端, 其特征在于, 所述第二通道建立子模 块, 包括:
第一地址获取单元, 用于从所述服务器获取所述控制终端的地址信息, 所 述地址信息包括本地地址、 网络地址转换的映射地址和中继穿透网络地址转换 的中继地址;
第二地址获取单元, 用于从所述服务器或者所述受控终端获取所述受控终 端的地址信息;
第一路径确定单元, 用于根据所述控制终端的地址信息和所述受控终端的 地址信息确定连接路径;
第一建立单元, 用于根据所述连接路径建立所述数据通道。
4、 根据权利要求 1至 3任一所述的控制终端, 其特征在于, 所述操作信息 包括触控信息、 按键信息或者语音信息中的至少一种, 所述操作信息生成模块, 包括:
监听子模块, 用于当所述操作信息为触控信息时, 监听所述操作对应的触 控事件;
第一生成子模块, 用于根据所述触控事件生成所述操作信息;
第一按键类型确定子模块, 用于当所述操作信息为按键信息时, 确定所述 操作对应的按键类型;
第二生成子模块, 用于生成包含所述按键类型对应的标识的所述操作信息; 语音识别子模块, 用于当所述操作信息为语音信息时, 将所述操作对应的 语音识别为文本;
第二生成子模块, 用于提取所述文本中包含的控制指令, 生成包含所述控 制指令对应的标识的所述操作信息。
5、 根据权利要求 4所述的控制终端, 其特征在于, 所述第一生成子模块, 包括: 第一生成单元或者第二生成单元;
所述第一生成单元, 用于将所述触控事件序列化为字节流, 生成包含有所 述字节流的所述操作信息;
所述第二生成单元, 用于提取所述触控事件的关键信息, 将所述关键信息 编码为指定格式文件, 生成包含所述指定格式文件的所述操作信息, 所述关键 信息包括事件类型、 触控坐标和 /或触控力度。
6、 根据权利要求 3所述的控制终端, 其特征在于, 所述第一路径确定单元 包括:
合成子单元, 用于将所述控制终端的地址信息和所述受控终端的地址信息 合成为地址对;
测试子单元, 用于对所述地址对进行连通性测试;
建立子单元, 用于根据所述连通性测试的结果确定所述连接路径。
7、 一种控制终端, 其特征在于, 所述控制终端包括: 总线, 以及连接到所 述总线的处理器、 存储器、 发射器和接收器。 其中, 所述存储器用于存储若干 个指令, 所述若干个指令被配置成由所述处理器执行; 所述处理器, 用于控制所述接收器和所述发射器, 建立与受控终端之间的 控制通道和数据通道;
所述接收器, 用于接收所述受控终端通过所述数据通道发送的屏幕图像数 据, 所述屏幕图像数据用于指示所述受控终端的屏幕截图;
所述处理器, 用于根据所述屏幕图像数据在显示设备中显示所述受控终端 的屏幕截图, 根据基于所述屏幕截图的操作生成相应的操作信息;
所述处理器, 用于控制所述发射器将所述操作信息通过所述控制通道发送 给所述受控终端, 由所述受控终端根据所述操作信息执行相应的控制操作。
8、 根据权利要求 7所述的控制终端, 其特征在于,
所述处理器, 用于控制所述接收器和所述发射器, 通过所述服务器建立与 述受控终端之间的控制通道;
所述处理器, 用于控制所述接收器和所述发射器, 通过所述服务器和所述 制通道建立与所述受控终端之间的数据通道。
9、 根据权利要求 8所述的控制终端, 其特征在于,
所述处理器, 用于控制所述接收器和所述发射器, 从所述服务器获取所述 控制终端的地址信息, 所述地址信息包括本地地址、 网络地址转换的映射地址 和中继穿透网络地址转换的中继地址;
所述处理器, 用于控制所述接收器和所述发射器, 从所述服务器或者所述 受控终端获取所述受控终端的地址信息;
所述处理器, 用于根据所述控制终端的地址信息和所述受控终端的地址信 息确定连接路径;
所述处理器, 用于控制所述接收器和所述发射器, 根据所述连接路径建立 所述数据通道。
10、 根据权利要求 7至 9任一所述的控制终端, 其特征在于, 所述操作信 息包括触控信息、 按键信息或者语音信息中的至少一种;
所述处理器, 用于当所述操作信息为触控信息时, 监听所述操作对应的触 控事件, 根据所述触控事件生成所述操作信息;
所述处理器, 用于当所述操作信息为按键信息时, 确定所述操作对应的按 键类型, 生成包含所述按键类型对应的标识的所述操作信息;
所述处理器, 用于当所述操作信息为语音信息时, 将所述操作对应的语音 识别为文本, 提取所述文本中包含的控制指令, 生成包含所述控制指令对应的 标识的所述操作信息。
11、 根据权利要求 10所述的控制终端, 其特征在于,
所述处理器, 用于将所述触控事件序列化为字节流, 生成包含有所述字节 流的所述操作信息;
或者
所述处理器, 用于提取所述触控事件的关键信息, 将所述关键信息编码为 指定格式文件, 生成包含所述指定格式文件的所述操作信息, 所述关键信息包 括事件类型、 触控坐标和 /或触控力度。
12、 根据权利要求 9所述的控制终端, 其特征在于,
所述处理器, 用于将所述控制终端的地址信息和所述受控终端的地址信息 合成为地址对, 对所述地址对进行连通性测试, 根据所述连通性测试的结果确 定所述连接路径。
13、 一种受控终端, 其特征在于, 所述受控终端包括:
第二通道建立模块, 用于建立与控制终端之间的控制通道和数据通道; 图像数据获取模块, 用于获取用于指示所述受控终端的屏幕截图的屏幕图 像数据;
图像数据发送模块, 用于通过所述数据通道向所述控制终端发送所述屏幕 图像数据, 由所述控制终端根据所述屏幕数据图像显示所述受控终端的屏幕截 图;
操作信息接收模块, 用于接收所述控制终端通过所述控制通道发送的操作 信息, 所述操作信息为所述控制终端根据基于所述屏幕截图的操作生成的信息; 执行模块, 用于根据所述操作信息执行相应的控制操作。
14、 根据权利要求 13所述的受控终端, 其特征在于, 所述第二通道建立模 块, 包括: 第三通道建立子模块, 用于通过所述服务器建立与所述控制终端之间的控 制通道;
第四通道建立子模块, 用于通过所述服务器和所述控制通道建立与所述控 制终端之间的数据通道。
15、 根据权利要求 14所述的受控终端, 其特征在于, 所述第四通道建立子 模块, 包括:
第三地址获取单元, 用于从所述服务器获取所述受控终端的地址信息, 所 述地址信息包括本地地址、 网络地址转换的映射地址和中继穿透网络地址转换 的中继地址;
第四地址获取单元, 用于从所述服务器或者所述控制终端获取所述控制终 端的地址信息;
第二路径确定单元, 用于根据所述控制终端的地址信息和所述受控终端的 地址信息确定连接路径;
第二建立单元, 用于根据所述连接路径建立所述数据通道。
16、 根据权利要求 13至 15任一所述的受控终端, 其特征在于, 所述操作 信息包括触控信息、 按键信息或者语音信息中的至少一种, 所述执行模块, 包 括:
事件还原子模块, 用于当所述操作信息为触控信息时, 根据所述控制信息 还原所述触控操作对应的触控事件;
第一执行子模块, 用于根据所述触控事件执行所述控制操作;
第二按键类型确定子模块, 用于当所述操作信息为按键信息时, 根据所述 操作信息中包含的标识确定所述按键操作对应的按键类型;
第二执行子模块, 用于根据所述按键类型执行所述控制操作;
指令确定子模块, 用于当所述操作信息为语音信息时, 根据所述操作信息 中包含的标识确定所述语音操作对应的控制指令;
第三执行子模块, 用于根据所述控制指令执行所述控制操作。
17、根据权利要求 16所述的受控终端, 其特征在于, 所述事件还原子模块, 包括: 第一还原单元或者第二还原单元; 所述第一还原单元, 用于对所述操作信息中包含的字节流进行反序列化, 以还原所述触控事件;
所述第一还原单元, 用于从所述操作信息中包含的指定格式文件中提取所 述触控事件的关键信息, 根据所述关键信息还原所述触控事件, 所述关键信息 包括事件类型、 触控坐标和 /或触控力度。
18、 一种受控终端, 其特征在于, 所述受控终端包括: 总线, 以及连接到 所述总线的处理器、 存储器、 发射器和接收器。 其中, 所述存储器用于存储若 干个指令, 所述若干个指令被配置成由所述处理器执行;
所述处理器, 用于控制所述接收器和所述发射器, 建立与控制终端之间的 控制通道和数据通道;
所述处理器, 用于获取用于指示所述受控终端的屏幕截图的屏幕图像数据; 所述处理器, 用于控制所述发射器, 通过所述数据通道向所述控制终端发 送所述屏幕图像数据, 由所述控制终端根据所述屏幕数据图像显示所述受控终 端的屏幕截图;
所述接收器, 用于接收所述控制终端通过所述控制通道发送的操作信息, 所述操作信息为所述控制终端根据基于所述屏幕截图的操作生成的信息;
所述处理器, 用于根据所述操作信息执行相应的控制操作。
19、 根据权利要求 18所述的受控终端, 其特征在于,
所述处理器, 用于控制所述接收器和所述发射器, 通过所述服务器建立与 所述控制终端之间的控制通道;
所述处理器, 用于控制所述接收器和所述发射器, 通过所述服务器和所述 控制通道建立与所述控制终端之间的数据通道。
20、 根据权利要求 19所述的受控终端, 其特征在于,
所述处理器, 用于控制所述接收器和所述发射器, 从所述服务器获取所述 受控终端的地址信息, 所述地址信息包括本地地址、 网络地址转换的映射地址 和中继穿透网络地址转换的中继地址;
所述处理器, 用于控制所述接收器和所述发射器, 从所述服务器或者所述 控制终端获取所述控制终端的地址信息; 所述处理器, 用于根据所述控制终端的地址信息和所述受控终端的地址信 息确定连接路径;
所述处理器, 用于控制所述接收器和所述发射器, 根据所述连接路径建立 所述数据通道。
21、 根据权利要求 18至 20任一所述的受控终端, 其特征在于, 所述操作 信息包括触控信息、 按键信息或者语音信息中的至少一种;
所述处理器, 用于当所述操作信息为触控信息时, 根据所述控制信息还原 所述触控操作对应的触控事件, 根据所述触控事件执行所述控制操作;
所述处理器, 用于当所述操作信息为按键信息时, 根据所述操作信息中包 含的标识确定所述按键操作对应的按键类型, 根据所述按键类型执行所述控制 操作;
所述处理器, 用于当所述操作信息为语音信息时, 根据所述操作信息中包 含的标识确定所述语音操作对应的控制指令, 根据所述控制指令执行所述控制 操作。
22、 根据权利要求 21所述的受控终端, 其特征在于,
所述处理器, 用于对所述操作信息中包含的字节流进行反序列化, 以还原 所述触控事件;
或者,
所述处理器, 用于从所述操作信息中包含的指定格式文件中提取所述触控 事件的关键信息, 根据所述关键信息还原所述触控事件, 所述关键信息包括事 件类型、 触控坐标和 /或触控力度。
23、 一种服务器, 其特征在于, 所述服务器包括:
控制通道建立模块, 用于建立控制终端与受控终端之间的控制通道; 第一地址提供模块, 用于向所述控制终端提供所述控制终端的地址信息, 并向所述受控终端提供所述受控终端的地址信息, 使所述控制终端和所述受控 终端通过所述控制通道进行地址信息的交换后, 由所述控制终端或者所述受控 终端根据所述控制终端的地址信息和所述受控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通过所述控制通道和所 述数据通道对所述受控终端进行控制;
第二地址提供模块, 向所述控制终端提供所述控制终端的地址信息和所述 受控终端的地址信息, 由所述控制终端根据所述控制终端的地址信息和所述受 控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所 述控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制;
第三地址提供模块, 向所述受控终端提供所述控制终端的地址信息和所述 受控终端的地址信息, 由所述受控终端根据所述控制终端的地址信息和所述受 控终端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所 述控制终端通过所述控制通道和所述数据通道对所述受控终端进行控制。
24、根据权利要求 23所述的服务器, 其特征在于, 所述控制通道建立模块, 包括:
请求接收子模块, 用于在所述控制终端接入所述服务器之后, 接收所述控 制终端发送的控制通道建立请求;
判断子模块, 用于判断所述受控终端是否已经接入所述服务器;
通道建立子模块, 用于若所述判断子模块的判断结果为所述受控终端已经 接入所述服务器, 则建立所述控制终端与所述受控终端之间的所述控制通道。
25、 根据权利要求 24所述的服务器, 其特征在于, 所述控制通道建立模块 还包括:
通知子模块, 用于若所述判断子模块的判断结果为所述受控终端未接入所 述服务器, 则向所述受控终端发送接入通知, 所述接入通知用于指示所述受控 终端接入所述服务器。
26、 一种服务器, 其特征在于, 所述服务器包括: 总线, 以及连接到所述 总线的处理器、 存储器、 发射器和接收器。 其中, 所述存储器用于存储若干个 指令, 所述若干个指令被配置成由所述处理器执行;
所述处理器, 用于控制所述接收器和所述发射器建立控制终端与受控终端 之间的控制通道;
所述处理器, 用于控制所述接收器和所述发射器向所述控制终端提供所述 控制终端的地址信息, 并向所述受控终端提供所述受控终端的地址信息, 使所 述控制终端和所述受控终端通过所述控制通道进行地址信息的交换后, 由所述 控制终端或者所述受控终端根据所述控制终端的地址信息和所述受控终端的地 址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终端 通过所述控制通道和所述数据通道对所述受控终端进行控制; 或者, 所述处理 器, 用于向所述控制终端提供所述控制终端的地址信息和所述受控终端的地址 信息, 由所述控制终端根据所述控制终端的地址信息和所述受控终端的地址信 息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通过 所述控制通道和所述数据通道对所述受控终端进行控制; 或者, 所述处理器, 用于向所述受控终端提供所述控制终端的地址信息和所述受控终端的地址信 息, 由所述受控终端根据所述控制终端的地址信息和所述受控终端的地址信息 确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通过所 述控制通道和所述数据通道对所述受控终端进行控制。
27、 根据权利要求 26所述的服务器, 其特征在于,
所述接收器, 用于在所述控制终端接入所述服务器之后, 接收所述控制终 端发送的控制通道建立请求;
所述处理器, 用于判断所述受控终端是否已经接入所述服务器, 若判断结 果为所述受控终端已经接入所述服务器, 则控制所述接收器和所述发射器建立 所述控制终端与所述受控终端之间的所述控制通道。
28、 根据权利要求 27所述的服务器, 其特征在于,
所述处理器, 用于若判断结果为所述受控终端未接入所述服务器, 则控制 所述发射器向所述受控终端发送接入通知, 所述接入通知用于指示所述受控终 端接入所述服务器。
29、 一种终端控制方法, 用于控制终端中, 其特征在于, 所述方法包括: 建立与受控终端之间的控制通道和数据通道;
接收所述受控终端通过所述数据通道发送的屏幕图像数据, 所述屏幕图像 数据用于指示所述受控终端的屏幕截图;
根据所述屏幕图像数据显示所述受控终端的屏幕截图;
根据基于所述屏幕截图的操作生成相应的操作信息; 将所述操作信息通过所述控制通道发送给所述受控终端, 由所述受控终端 根据所述操作信息执行相应的控制操作。
30、 根据权利要求 29所述的方法, 其特征在于, 所述建立与受控终端之间 的控制通道和数据通道, 包括:
通过所述服务器建立与所述受控终端之间的控制通道;
通过所述服务器和所述控制通道建立与所述受控终端之间的数据通道。
31、 根据权利要求 30所述的方法, 其特征在于, 所述通过所述服务器和所 述控制通道建立与所述受控终端之间的数据通道, 包括:
从所述服务器获取所述控制终端的地址信息, 所述地址信息包括本地地址、 网络地址转换的映射地址和中继穿透网络地址转换的中继地址;
从所述服务器或者所述受控终端获取所述受控终端的地址信息;
根据所述控制终端的地址信息和所述受控终端的地址信息确定连接路径; 根据所述连接路径建立所述数据通道。
32、 根据权利要求 29至 31任一所述的方法, 其特征在于, 所述操作信息 包括触控信息、 按键信息或者语音信息中的至少一种, 所述根据基于所述屏幕 截图的操作生成操作信息, 包括:
当所述操作信息为触控信息时, 监听所述操作对应的触控事件, 根据所述 触控事件生成所述操作信息;
当所述操作信息为按键信息时, 确定所述操作对应的按键类型, 生成包含 所述按键类型对应的标识的所述操作信息;
当所述操作信息为语音信息时, 将所述操作对应的语音识别为文本, 提取 所述文本中包含的控制指令, 生成包含所述控制指令对应的标识的所述操作信 息。
33、 根据权利要求 32所述的方法, 其特征在于, 所述根据所述触控事件生 成所述操作信息, 包括:
将所述触控事件序列化为字节流, 生成包含有所述字节流的所述操作信息; 或者, 提取所述触控事件的关键信息, 将所述关键信息编码为指定格式文 件, 生成包含所述指定格式文件的所述操作信息, 所述关键信息包括事件类型、 触控坐标和 /或触控力度。
34、 根据权利要求 31所述的方法, 其特征在于, 所述根据所述控制终端的 地址信息和所述受控终端的地址信息确定连接路径, 包括:
将所述控制终端的地址信息和所述受控终端的地址信息合成为地址对, 对 所述地址对进行连通性测试, 根据所述连通性测试的结果确定所述连接路径。
35、 一种终端控制方法, 用于受控终端中, 其特征在于, 所述方法包括: 建立与控制终端之间的控制通道和数据通道;
获取用于指示所述受控终端的屏幕截图的屏幕图像数据;
通过所述数据通道向所述控制终端发送所述屏幕图像数据, 由所述控制终 端根据所述屏幕数据图像显示所述受控终端的屏幕截图;
接收所述控制终端通过所述控制通道发送的操作信息, 所述操作信息为所 述控制终端根据基于所述屏幕截图的操作生成的信息;
根据所述操作信息执行相应的控制操作。
36、 根据权利要求 35所述的方法, 其特征在于, 所述建立与控制终端之间 的控制通道和数据通道, 包括:
通过所述服务器建立与所述控制终端之间的控制通道;
通过所述服务器和所述控制通道建立与所述控制终端之间的数据通道。
37、 根据权利要求 36所述的方法, 其特征在于, 所述根据所述服务器和所 述控制通道建立与所述控制终端之间的数据通道, 包括:
从所述服务器获取所述受控终端的地址信息, 所述地址信息包括本地地址、 网络地址转换的映射地址和中继穿透网络地址转换的中继地址;
从所述服务器或者所述控制终端获取所述控制终端的地址信息;
根据所述控制终端的地址信息和所述受控终端的地址信息确定连接路径; 根据所述连接路径建立所述数据通道。
38、 根据权利要求 35至 37任一所述的方法, 其特征在于, 所述操作信息 包括触控信息、 按键信息或者语音信息中的至少一种, 所述根据所述操作信息 执行相应的控制操作, 包括:
当所述操作信息为触控信息时, 根据所述操作信息还原所述操作对应的触 控事件, 根据所述触控事件执行所述控制操作;
当所述操作信息为按键信息时, 根据所述操作信息中包含的标识确定所述 操作对应的按键类型, 根据所述按键类型执行所述控制操作;
当所述操作信息为语音信息时, 根据所述操作信息中包含的标识确定所述 操作对应的控制指令, 根据所述控制指令执行所述控制操作。
39、 根据权利要求 38所述的方法, 其特征在于, 所述根据所述控制信息还 原所述触控操作对应的触控事件, 包括:
对所述操作信息中包含的字节流进行反序列化, 以还原所述触控事件; 或者, 从所述操作信息中包含的指定格式文件中提取所述触控事件的关键 信息, 根据所述关键信息还原所述触控事件, 所述关键信息包括事件类型、 触 控坐标和 /或触控力度。
40、 一种终端控制方法, 用于服务器中, 其特征在于, 所述方法包括: 建立控制终端与受控终端之间的控制通道;
向所述控制终端提供所述控制终端的地址信息, 并向所述受控终端提供所 述受控终端的地址信息, 使所述控制终端和所述受控终端通过所述控制通道进 行地址信息的交换后, 由所述控制终端或者所述受控终端根据所述控制终端的 地址信息和所述受控终端的地址信息确定连接路径, 并根据连接路径建立所述 数据通道, 并由所述控制终端通过所述控制通道和所述数据通道对所述受控终 端进行控制; 或者, 向所述控制终端提供所述控制终端的地址信息和所述受控 终端的地址信息, 由所述控制终端根据所述控制终端的地址信息和所述受控终 端的地址信息确定连接路径, 并根据连接路径建立所述数据通道, 并由所述控 制终端通过所述控制通道和所述数据通道对所述受控终端进行控制; 或者, 向 所述受控终端提供所述控制终端的地址信息和所述受控终端的地址信息, 由所 述受控终端根据所述控制终端的地址信息和所述受控终端的地址信息确定连接 路径, 并根据连接路径建立所述数据通道, 并由所述控制终端通过所述控制通 道和所述数据通道对所述受控终端进行控制。
41、 根据权利要求 40所述的方法, 其特征在于, 所述建立控制终端与受控 终端之间的控制通道, 包括:
在所述控制终端接入所述服务器之后, 接收所述控制终端发送的控制通道 建立请求;
判断所述受控终端是否已经接入所述服务器;
若判断结果为所述受控终端已经接入所述服务器, 则建立所述控制终端与 所述受控终端之间的所述控制通道。
42、 根据权利要求 41所述的方法, 其特征在于, 所述方法还包括: 若判断结果为所述受控终端未接入所述服务器, 则向所述受控终端发送接 入通知, 所述接入通知用于指示所述受控终端接入所述服务器。
PCT/CN2014/083643 2014-08-04 2014-08-04 终端、服务器及终端控制方法 WO2016019495A1 (zh)

Priority Applications (8)

Application Number Priority Date Filing Date Title
AU2014403138A AU2014403138B2 (en) 2014-08-04 2014-08-04 Terminal, server, and terminal control method
US15/501,698 US9961210B2 (en) 2014-08-04 2014-08-04 Terminal, server, and terminal control method
EP14899294.4A EP3163972B1 (en) 2014-08-04 2014-08-04 Terminal, server, and terminal control method
PCT/CN2014/083643 WO2016019495A1 (zh) 2014-08-04 2014-08-04 终端、服务器及终端控制方法
BR112017002073-4A BR112017002073B1 (pt) 2014-08-04 2014-08-04 Terminal de controle, servidor e método de controle de terminal
KR1020177004664A KR101842559B1 (ko) 2014-08-04 2014-08-04 단말기, 서버, 및 단말기 제어 방법
CN201480046287.XA CN105493621B (zh) 2014-08-04 2014-08-04 终端、服务器及终端控制方法
JP2017506374A JP6368033B2 (ja) 2014-08-04 2014-08-04 端末、サーバ、および端末制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2014/083643 WO2016019495A1 (zh) 2014-08-04 2014-08-04 终端、服务器及终端控制方法

Publications (1)

Publication Number Publication Date
WO2016019495A1 true WO2016019495A1 (zh) 2016-02-11

Family

ID=55262979

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/083643 WO2016019495A1 (zh) 2014-08-04 2014-08-04 终端、服务器及终端控制方法

Country Status (8)

Country Link
US (1) US9961210B2 (zh)
EP (1) EP3163972B1 (zh)
JP (1) JP6368033B2 (zh)
KR (1) KR101842559B1 (zh)
CN (1) CN105493621B (zh)
AU (1) AU2014403138B2 (zh)
BR (1) BR112017002073B1 (zh)
WO (1) WO2016019495A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112306610A (zh) * 2020-11-02 2021-02-02 北京字节跳动网络技术有限公司 终端控制方法、装置和电子设备
CN112346799A (zh) * 2020-10-14 2021-02-09 视联动力信息技术股份有限公司 一种终端控制方法、装置、电子设备及存储介质

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104657211A (zh) * 2015-02-03 2015-05-27 百度在线网络技术(北京)有限公司 一种用于操作对应设备上目标应用的方法与设备
CN105338399A (zh) * 2015-10-29 2016-02-17 小米科技有限责任公司 图像获取方法及装置
CN108228125A (zh) * 2017-12-29 2018-06-29 广州酷狗计算机科技有限公司 智能设备的远程控制方法及系统
CN109683780A (zh) * 2018-12-26 2019-04-26 上海司南卫星导航技术股份有限公司 控制移动终端的方法、系统和被控终端
CN109803452A (zh) * 2019-03-14 2019-05-24 李清庭 受控装置、方法及系统
CN110300031B (zh) * 2019-07-12 2021-12-07 中国电信集团工会上海市委员会 一种网关设备的远程管理系统
CN113157231A (zh) * 2019-09-18 2021-07-23 华为技术有限公司 一种数据传输的方法及相关设备
CN110602805B (zh) * 2019-09-30 2021-06-15 联想(北京)有限公司 信息处理方法、第一电子设备和计算机系统
CN112351093A (zh) * 2020-10-30 2021-02-09 深圳Tcl新技术有限公司 截屏图像共享方法、装置、设备及计算机可读存储介质
CN112714272A (zh) * 2020-12-14 2021-04-27 深圳市鹏创软件有限公司 设备间控制方法、终端和计算机可读存储介质
CN112788193A (zh) * 2020-12-30 2021-05-11 北京达佳互联信息技术有限公司 图像传输方法、装置、电子设备及存储介质
CN114845035B (zh) * 2021-01-30 2024-04-26 华为技术有限公司 一种分布式拍摄方法,电子设备及介质
CN113542488B (zh) * 2021-06-30 2024-03-15 青岛海信移动通信技术有限公司 采用终端设备控制受控终端的方法、设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009135312A1 (en) * 2008-05-08 2009-11-12 Unify4Life Corporation Remote control system and method
CN102378257A (zh) * 2010-08-10 2012-03-14 华宝通讯股份有限公司 具有遥控功能的无线通信系统及其无线通信模块
CN103336677A (zh) * 2013-06-25 2013-10-02 北京小米科技有限责任公司 一种向显示设备输出图像的方法、装置和系统
CN103366659A (zh) * 2012-03-26 2013-10-23 联想(北京)有限公司 显示控制方法及相关设备
CN103874228A (zh) * 2012-12-11 2014-06-18 联想(北京)有限公司 无线数据通道建立方法、电子设备、服务器和系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2367727B (en) * 2000-10-07 2002-10-09 Complementary Tech Ltd Communications with remote embedded applications
US7206548B1 (en) * 2004-10-29 2007-04-17 Sprint Spectrum L.P. Method and system for network-based remote control and testing of wireless communication devices
JP4894449B2 (ja) * 2006-10-17 2012-03-14 日本電気株式会社 携帯端末の遠隔操作方法、携帯端末及びプログラム
US20090077184A1 (en) 2007-09-18 2009-03-19 Martin John Brewer Remote Control of Mobile Terminal via Remote Control Proxy and SMS
KR101542744B1 (ko) * 2009-03-18 2015-08-10 삼성전자주식회사 네트워크에서 피제어장치를 제어하는 방법 및 그 장치
KR101602461B1 (ko) * 2009-09-22 2016-03-15 삼성전자주식회사 디스플레이 장치 및 휴대폰의 제어방법
KR101595762B1 (ko) 2009-11-10 2016-02-22 삼성전자주식회사 휴대 단말기의 원격 제어 방법 및 이를 위한 시스템
CN101883317A (zh) * 2010-05-18 2010-11-10 中兴通讯股份有限公司 移动终端及用户位置通知方法
TWM410273U (en) 2010-12-08 2011-08-21 Elitegroup Computer Sys Co Ltd Control transfer apparatus and control transfer system
US8769039B2 (en) * 2011-01-21 2014-07-01 Kaseya International Limited Method and apparatus of performing remote computer file exchange
CN103563346B (zh) * 2011-03-31 2017-10-24 索尼移动通信公司 用于建立通信会话的系统和方法
JP5951938B2 (ja) * 2011-05-25 2016-07-13 株式会社オプティム 端末のリモートシステム、リモート操作方法
BR112014014114A2 (pt) * 2012-01-17 2017-06-13 Ericsson Telefon Ab L M travessia de nat com base em ice
US20130244730A1 (en) * 2012-03-06 2013-09-19 Industry-University Cooperation Foundation Hanyang University User terminal capable of sharing image and method for controlling the same
US20130308628A1 (en) * 2012-05-15 2013-11-21 Viber Media, Inc. Nat traversal for voip
CN102710869A (zh) 2012-06-29 2012-10-03 北京德天泉机电设备有限公司 一种基于智能手机的远程控制系统
KR101422808B1 (ko) 2012-09-21 2014-08-14 주식회사 팬택 드로잉 화면 공유 서비스의 제공 장치 및 방법과 이를 위한 휴대 단말
US9609386B2 (en) * 2012-12-18 2017-03-28 Rentak Corporation System and methods for analyzing content engagement in conjunction with social media
US9432330B2 (en) * 2013-05-29 2016-08-30 Huawei Technologies Co., Ltd. Data interaction method, apparatus, and system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009135312A1 (en) * 2008-05-08 2009-11-12 Unify4Life Corporation Remote control system and method
CN102378257A (zh) * 2010-08-10 2012-03-14 华宝通讯股份有限公司 具有遥控功能的无线通信系统及其无线通信模块
CN103366659A (zh) * 2012-03-26 2013-10-23 联想(北京)有限公司 显示控制方法及相关设备
CN103874228A (zh) * 2012-12-11 2014-06-18 联想(北京)有限公司 无线数据通道建立方法、电子设备、服务器和系统
CN103336677A (zh) * 2013-06-25 2013-10-02 北京小米科技有限责任公司 一种向显示设备输出图像的方法、装置和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3163972A4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112346799A (zh) * 2020-10-14 2021-02-09 视联动力信息技术股份有限公司 一种终端控制方法、装置、电子设备及存储介质
CN112306610A (zh) * 2020-11-02 2021-02-02 北京字节跳动网络技术有限公司 终端控制方法、装置和电子设备

Also Published As

Publication number Publication date
AU2014403138A1 (en) 2017-02-23
BR112017002073A2 (pt) 2018-07-03
US9961210B2 (en) 2018-05-01
KR101842559B1 (ko) 2018-03-27
KR20170032445A (ko) 2017-03-22
EP3163972A4 (en) 2017-06-21
BR112017002073B1 (pt) 2023-02-07
US20170230510A1 (en) 2017-08-10
JP6368033B2 (ja) 2018-08-01
EP3163972B1 (en) 2020-02-05
EP3163972A1 (en) 2017-05-03
AU2014403138B2 (en) 2018-05-17
CN105493621B (zh) 2019-08-20
JP2017531353A (ja) 2017-10-19
CN105493621A (zh) 2016-04-13

Similar Documents

Publication Publication Date Title
WO2016019495A1 (zh) 终端、服务器及终端控制方法
US11451619B2 (en) App remote control method and related devices
WO2022062623A1 (zh) 远程控制方法、装置、设备、存储介质及系统
US10606367B2 (en) Command relay device, system and method for providing remote assistance/remote control
WO2014067256A1 (zh) 一种遥控方法、智能终端及智能遥控系统
CN108027725B (zh) 指导终端设备操作的方法、装置和设备
US20190051147A1 (en) Remote control method, apparatus, terminal device, and computer readable storage medium
RU2609147C2 (ru) Способ и устройство для передачи изображений
US20230138804A1 (en) Enhanced video call method and system, and electronic device
US20140361991A1 (en) Method and electronic device for controlling mouse module
US20230333803A1 (en) Enhanced Screen Sharing Method and System, and Electronic Device
CN114489350B (zh) 一种输入法调用方法及相关设备
CN111414097A (zh) 一种交互方法、交互系统和显示设备
CN114035721A (zh) 触控屏显示方法、装置及存储介质
CN106354254B (zh) 智能路由器的沉浸式交互方法及装置
CN105229997A (zh) 通信终端和通信方法
US10929703B2 (en) Method apparatus and program product for enabling two or more electronic devices to perform operations based on a common subject
JP5321247B2 (ja) シンクライアントシステム、シンクライアントシステムの制御方法、シンクライアント端末の制御プログラム及びサーバの制御プログラム
CN113038251B (zh) 一种控制方法和控制装置
CN112714272A (zh) 设备间控制方法、终端和计算机可读存储介质
KR20140020641A (ko) 터치이벤트 기반의 드로잉 채팅 방법, 그리고 터치이벤트 기반의 드로잉 채팅 프로그램을 기록한 컴퓨터로 판독가능한 기록매체
CN116954809B (zh) 基于安卓设备的远程控制方法、装置、系统及电子设备
KR101407939B1 (ko) 터치이벤트 기반의 드로잉 회의 방법, 그리고 터치이벤트 기반의 드로잉 회의 프로그램을 기록한 컴퓨터로 판독가능한 기록매체
CN106033246B (zh) 一种数据传输方法及电子设备
CN112162494A (zh) 一种智能手机系统的远程虚拟控制仿真方法及装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201480046287.X

Country of ref document: CN

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

Ref document number: 14899294

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2014899294

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014899294

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2017506374

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15501698

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20177004664

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2014403138

Country of ref document: AU

Date of ref document: 20140804

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112017002073

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 112017002073

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20170131