WO2018223598A1 - 一种远程调试方法、机顶盒和服务器 - Google Patents

一种远程调试方法、机顶盒和服务器 Download PDF

Info

Publication number
WO2018223598A1
WO2018223598A1 PCT/CN2017/110066 CN2017110066W WO2018223598A1 WO 2018223598 A1 WO2018223598 A1 WO 2018223598A1 CN 2017110066 W CN2017110066 W CN 2017110066W WO 2018223598 A1 WO2018223598 A1 WO 2018223598A1
Authority
WO
WIPO (PCT)
Prior art keywords
top box
server
ssh
set top
remote
Prior art date
Application number
PCT/CN2017/110066
Other languages
English (en)
French (fr)
Inventor
曹黎
Original Assignee
深圳市创维软件有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳市创维软件有限公司 filed Critical 深圳市创维软件有限公司
Publication of WO2018223598A1 publication Critical patent/WO2018223598A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N17/00Diagnosis, testing or measuring for television systems or their details
    • H04N17/04Diagnosis, testing or measuring for television systems or their details for receivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Definitions

  • the present disclosure relates to the field of remote debugging techniques, for example, to a remote debugging method, a set top box, and a server.
  • Terminal devices such as digital set-top boxes and financial intelligent terminals have been widely used in people's daily work and life.
  • the operator of the terminal device When a user uses such a terminal device to have a problem of failure, the operator of the terminal device usually chooses to communicate with the user through the telephone, and guides the user through the telephone, so that the user attempts to debug the fault by various methods.
  • the operator of the terminal device usually chooses to communicate with the user through the telephone, and guides the user through the telephone, so that the user attempts to debug the fault by various methods.
  • due to Users have different levels of education and limited patience, so it is time-consuming and labor-intensive to solve the problem in this way; or choose to send maintenance personnel to provide on-site troubleshooting services, but such on-site service, labor and time costs are high;
  • the user is allowed to send the faulty terminal equipment directly to the designated repair center for maintenance and debugging, and the transportation cost is also high, and the time is also delayed, which seriously affects the user experience.
  • the existing remote debugging tool for Android-based smart devices is android debug bridge (adb), but abd is not really a remote debugging tool, because abd can only be limited to internal debugging of the internal network.
  • abd can only be limited to internal debugging of the internal network.
  • the set-top box in the user's home fails, if you use adb for debugging, you can only choose to send a technician to provide on-site service. That is to say, the debugging computer with the abd installed is connected to the set-top box on the same local area network, and then the adj is used to debug the set-top box.
  • the use of adb for debugging is limited by the network properties, and maintenance personnel are required to provide on-site debugging services.
  • the present disclosure provides a method for debugging a set top box, a set top box, and a server to implement remote debugging in a true sense.
  • a remote debugging method is applied to a set top box, and the set top box is set in a remote intranet, and the package is include:
  • a remote debugging method is applied to a server, and the server is disposed in a remote external network, including:
  • a set top box disposed in a remote intranet, comprising:
  • One or more first processors are One or more first processors
  • a first storage device for storing one or more programs
  • the one or more first processors When the one or more programs are executed by the one or more first processors, the one or more first processors implement the remote debugging method provided by the aforementioned first aspect.
  • a server that is installed in a remote external network including:
  • One or more second processors are One or more second processors.
  • a second storage device for storing one or more programs
  • the one or more second processors implement the remote debugging method provided by the aforementioned second aspect.
  • the embodiment of the present invention further provides a computer readable storage medium storing computer executable instructions for performing the method of any of the above.
  • the embodiment of the invention solves the problem that the remote external network server can be remotely debugged without first accessing the internal network.
  • the technical problem of the set-top box of the network realizes the technical effect of the remote debugging set-top box in the true sense, and brings convenient, real-time, high-efficiency and low-cost service experience for users, after-sales personnel and technicians.
  • FIG. 1 is a flowchart of a remote debugging method provided by an embodiment
  • FIG. 2 is a flowchart of a remote debugging method provided by an embodiment
  • FIG. 3 is a flowchart of a remote debugging method according to an embodiment
  • FIG. 5 is a schematic structural diagram of a set top box according to an embodiment
  • FIG. 6 is a schematic structural diagram of a server according to an embodiment.
  • the embodiment of the invention provides a method for debugging a set top box, a set top box and a server, which solves the technical problem that the remote external network server can remotely debug the set top box of the internal network without first accessing the internal network, and realizes the remote sense in the true sense. Debug the technical effects of the set-top box.
  • FIG. 1 is a flowchart of a remote debugging method provided by an embodiment.
  • the method in this embodiment may be applicable to a scenario for remotely debugging a set top box in a remote intranet.
  • the method may be performed by a set top box in a remote external network, such as As shown in FIG. 1, the method provided in this embodiment may include the following steps:
  • step 110 an SSH connection is established with the server based on the SSH protocol, and the server is set in a remote external network.
  • the set top box is in the remote intranet, and the remote controller used with the set top box is provided with a shortcut key for enabling remote debugging.
  • the set top box fails (non-boot failure)
  • the set top box is powered on.
  • the set-top box starts the remote debugging service, and establishes an SSH connection with the server set in the remote external network based on the SSH protocol and the IP address of the server.
  • the remote debugging requires root authority, it is preferable to integrate the function module for starting the remote debugging into the internal system of the set top box, so that the user can activate the remote debugging service by pressing the shortcut key of the remote debugging, or
  • the remote debugging service can also be enabled in other ways.
  • step 120 a debug command sent by the server is received and executed.
  • the server can send a debug command (such as an input keyevent KEYCODE_POWER command) to the set top box through a conventional serial port debugging tool (such as a serial port debugging assistant), and the set top box receives and executes the debug command.
  • a debug command such as an input keyevent KEYCODE_POWER command
  • a conventional serial port debugging tool such as a serial port debugging assistant
  • step 130 during execution of the debug command, the output data of the set top box is periodically collected in accordance with a preset period.
  • the preset period is preferably 100 ms
  • the output data of the set top box is preferably a screenshot picture, and may also include a real-time log file.
  • the set-top box intercepts the playback screen of the set-top box every 100 ms, obtains a screen capture picture, and obtains a log file.
  • the set top box enables the remote mapping service in addition to the remote debugging service, and the set top box executes the remote mapping service every once preset time (for example, 100ms). Take screenshots and grab the log files.
  • step 140 based on the SSH connection, the output data is sent to the server, so that the remote server performs subsequent debugging operations according to the output data.
  • the set top box sends the collected output data to the remote server in real time through the scp (secure copy) command based on the SSH protocol, and the server may further send the received output data to the web client of the technician.
  • the technician can directly view the screen capture image and the log data through the web client, and the screen capture image is played together to be the playback screen of the set top box.
  • the technician analyzes the fault of the set top box according to the playback screen, and performs subsequent debugging operations according to the situation.
  • the technician can also input debugging instructions (such as input keyevent KEYCODE_POWER command) through the web client, and then transmit it to the server and then send it to the set-top box; the technician can also access the webpage.
  • debugging instructions such as input keyevent KEYCODE_POWER command
  • the client maps some commonly used buttons such as up, down, left, right, confirmation, numeric keys and other input commands into shortcut buttons.
  • the technician only needs to click the button on the web client, and the web client sends an input analog button command to the client.
  • the server is connected to the set-top box based on the SSH protocol, so the set-top box directly executes the command and executes the remote control of the set-top box.
  • the external network server establishes an SSH connection with the set top box to be debugged in the internal network based on the SSH protocol, so that the set top box in the inner network can receive the debugging instruction issued by the external network server; and, in debugging During the process, the set top box output data is periodically sent to the set top box.
  • the remote external network server enables the server to perform subsequent debugging operations according to the output data to smoothly complete remote debugging of the set top box.
  • the remote external network server can remotely debug the set-top box of the internal network without first accessing the internal network, realizing the technical effect of the remote debugging set-top box in a true sense, and bringing convenience to users, after-sales personnel and technicians. Real-time, efficient, low-cost service experience.
  • FIG. 2 is a flowchart of a remote debugging method according to an embodiment.
  • the first SSH client and the first SSH server are set up on the set top box.
  • the establishing an SSH connection with the server includes:
  • the first SSH server receives the connection establishment request from the receiving server and establishes an SSH connection with the server.
  • the remote debugging method provided in this embodiment may include the following steps:
  • step 210 an SSH reverse tunnel is established with the server by the first SSH client based on the SSH protocol.
  • the establishing an SSH reverse tunnel with the server by using the first SSH client includes:
  • the first port of the set top box is mirrored to the second port of the server through the first SSH client.
  • the IP address of the set top box in the remote intranet is 172.28.253.155, including 22 ports (ie, the first port), and the IP address of the server in the remote external network is 192.168.2.230, including the port 19998 (ie, the second port) ), the server has a second SSH client and a second SSH server.
  • the set-top box initiates an SSH connection to the second SSH server of the server through the first SSH client, establishes an SSH reverse tunnel, and forwards the server's 19998 port to the set-top box through port forwarding.
  • the port, the 22-port of the set-top box is mirrored to the port of port 19998.
  • the first SSH client of the set-top box sends an SSH command to the server: ssh-R19998:localhost:22 root@192.168.2.230, including:
  • the set-top box enters the serial port of the server, and an SSH reverse tunnel is established to implement the connection from the set-top box to the server.
  • step 220 based on the SSH reverse tunnel, the first SSH server receives the connection establishment request sent by the server, and establishes an SSH connection with the server.
  • the second SSH client of the server initiates an SSH command to the first SSH server of the set top box: ssh localhost-p 19998, including:
  • ECDSA Key fingerprint is bd:81:5a:58:21:58:c2:1c:b5:df:6a:39:f8:4b:75:4a.
  • the 22-port connection of the server to the set-top box is established, and the server can directly debug the set-top box by the serial port to realize the connection of the server to the set-top box.
  • step 230 the debug instructions sent by the server are received and executed.
  • step 240 during execution of the debug command, the output data of the set top box is periodically collected in accordance with a preset period.
  • step 250 based on the SSH connection, the output data is sent to the server, so that the remote server performs subsequent debugging operations according to the output data.
  • the external network server establishes an SSH tunnel and an SSH connection with the set top box to be debugged in the internal network based on the SSH protocol, so that the set top box in the inner network can receive the debugging instruction issued by the external network server;
  • the set-top box periodically sends the output data of the set-top box to the remote external network server, so that the server can perform the subsequent debugging operation according to the output data, so as to successfully complete the remote debugging of the set-top box.
  • the remote external network server can remotely debug the set-top box of the internal network without first accessing the internal network, realizing the technical effect of the remote debugging set-top box in a true sense, and bringing convenience to users, after-sales personnel and technicians. Real-time, efficient, low-cost service experience.
  • FIG. 3 is a flowchart of a remote debugging method provided by an embodiment.
  • the method in this embodiment may be applicable to a scenario for remotely debugging a set top box in a remote intranet.
  • the method may be performed by a server in a remote external network.
  • the method provided in this embodiment may include the following steps:
  • step 310 an SSH connection is established with the set top box based on the SSH protocol, and the set top box is set in the remote intranet.
  • the set top box is in the remote intranet, and the remote controller used with the set top box is provided with a shortcut key for enabling remote debugging.
  • the set top box fails (non-boot failure)
  • the set top box is powered on.
  • the set-top box starts the remote debugging service, and based on the SSH protocol and the IP address of the server, sends a connection connection request to the server set in the remote external network, and the server responds to the request to establish an SSH connection with the set-top box.
  • the remote debugging requires root authority, it is preferable to integrate the function module of the set-top box side to enable remote debugging into the internal system of the set-top box, so that the user can activate the remote debugging service by pressing the shortcut key of the remote debugging. Or you can enable remote debugging services in other ways.
  • step 320 a debug command is sent to the set top box to cause the set top box to periodically collect the output data of the set top box during execution of the debug command.
  • the server can send a debug command (such as an input keyevent KEYCODE_POWER command) to the set top box through a conventional serial port debugging tool (such as a serial port debugging assistant), and the set top box receives and executes the debug command.
  • a debug command such as an input keyevent KEYCODE_POWER command
  • a conventional serial port debugging tool such as a serial port debugging assistant
  • the preset period is preferably 100 ms
  • the output data of the set top box is preferably a screenshot image, and may also include a real-time log file.
  • the set-top box takes a screen shot of the set-top box's playback screen every 100ms, obtains a screen capture picture, and obtains a log file.
  • the set top box enables the remote mapping service in addition to the remote debugging service, and the set top box executes the remote mapping service every once preset time (for example, 100ms). Take screenshots and grab the log files.
  • step 330 based on the SSH connection, the output data is acquired from the set top box, and subsequent debugging operations are performed according to the output data.
  • the set top box sends the output data collected by the scp (secure copy) command to the remote server in real time according to the SSH protocol, and the server receives the output data, and the server may further send the received output data to the technician.
  • the web client enables the technician to directly view the screen capture image and log data through the web client, and the screen capture image is played together to be the playback screen of the set top box.
  • the technician analyzes the fault of the set top box according to the playback screen, and according to the situation, Follow-up debugging operations.
  • the technician can also input debugging instructions (such as input keyevent KEYCODE_POWER command) through the web client, and then transmit it to the server and then send it to the set-top box; the technician can also access the webpage.
  • debugging instructions such as input keyevent KEYCODE_POWER command
  • the client maps some commonly used buttons such as up, down, left, right, confirmation, numeric keys and other input commands into shortcut buttons.
  • the technician only needs to click the button on the web client, and the web client sends an input analog button command to the client.
  • the server is connected to the set-top box based on the SSH protocol, so the set-top box directly executes the command and executes the remote control of the set-top box.
  • the external network server establishes an SSH connection with the set top box to be debugged in the internal network based on the SSH protocol, so that the set top box in the inner network can receive the debugging instruction issued by the external network server; and, in debugging During the process, the set top box outputs data to the remote external network server periodically through the set top box, so that the server can perform subsequent debugging operations according to the output data to smoothly complete the remote debugging of the set top box.
  • the remote external network server can remotely debug the set-top box of the internal network without first accessing the internal network, realizing the technical effect of the remote debugging set-top box in a true sense, and bringing convenience to users, after-sales personnel and technicians. Real-time, efficient, low-cost service experience.
  • FIG. 4 is a flowchart of a remote debugging method provided by another embodiment.
  • a second SSH client and a second SSH server are configured on the server.
  • the establishing an SSH connection with the set top box includes:
  • the second client Based on the SSH reverse tunnel, the second client sends a connection establishment request to the set top box to establish an SSH connection with the set top box.
  • the remote debugging method provided in this embodiment may include the following steps:
  • step 410 an SSH reverse tunnel is established with the set top box by using the second SSH server based on the SSH protocol.
  • the SSH reverse tunnel is established between the second SSH server and the set top box, including:
  • the IP address of the set top box in the remote intranet is 172.28.253.155, including 22 ports (ie, the first port), and the IP address of the server in the remote external network is 192.168.2.230, including the port 19998 (ie, the second port) ), the server has a second SSH client and a second SSH server.
  • the set-top box initiates an SSH connection to the second SSH server of the server through the first SSH client, establishes an SSH reverse tunnel, and forwards the server's 19998 port to the set-top box through port forwarding.
  • the port, the 22-port of the set-top box is mirrored to the port of port 19998.
  • the first SSH client of the set-top box sends an SSH command to the server: ssh-R19998:localhost:22root@192.168.2.230, including:
  • the set-top box enters the serial port of the server, and an SSH reverse tunnel is established to implement the connection from the set-top box to the server.
  • step 420 based on the SSH reverse tunnel, the second client sends a connection establishment request to the set top box to establish an SSH connection with the set top box.
  • the second SSH client of the server goes to the top of the set.
  • the first SSH server of the box initiates an SSH command: ssh localhost-p 19998, including:
  • ECDSA Key fingerprint is bd:81:5a:58:21:58:c2:1c:b5:df:6a:39:f8:4b:75:4a.
  • the 22-port connection of the server to the set-top box is established, and the server can directly debug the set-top box by the serial port to realize the connection of the server to the set-top box.
  • step 430 a debug command is sent to the set top box to cause the set top box to periodically collect the output data of the set top box during execution of the debug command.
  • step 440 based on the SSH connection, the output data is acquired from the set top box, and subsequent debugging operations are performed according to the output data.
  • the external network server establishes an SSH tunnel and an SSH connection with the set top box to be debugged in the internal network based on the SSH protocol, so that the set top box in the inner network can receive the debugging instruction issued by the external network server;
  • the set-top box is periodically sent through the set-top box.
  • the output data is sent to the remote external network server, so that the server can perform subsequent debugging operations according to the output data to smoothly complete the remote debugging of the set top box.
  • the remote external network server can remotely debug the set-top box of the internal network without first accessing the internal network, realizing the technical effect of the remote debugging set-top box in a true sense, and bringing convenience to users, after-sales personnel and technicians. Real-time, efficient, low-cost service experience.
  • FIG. 5 is a schematic structural diagram of a set top box according to an embodiment.
  • FIG. 5 illustrates a block diagram of an exemplary set top box 512 suitable for use in implementing embodiments of the present invention.
  • set top box 512 is embodied in the form of a universal set top box device.
  • the components of set top box 512 may include, but are not limited to, one or more first processors or first processing unit 516, system memory 528, and bus 518 that connects different system components, including system memory 528 and first processing unit 516.
  • the program when one or more programs included in the set top box 512 are executed by the one or more first processors or the first processing unit 516, the program performs the following operations:
  • the server is disposed in the remote external network; receiving and executing the debugging instruction sent by the server; during the execution of the debugging instruction, periodically collecting the preset according to a preset period Output data of the set top box; based on the SSH connection, sending the output data to the server, so that the remote server performs subsequent debugging operations according to the output data.
  • Bus 518 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a first processor, or a local bus using any of a variety of bus structures.
  • these architectures include, but are not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MAC) bus, an Enhanced ISA Bus, a Video Electronics Standards Association (VESA) local bus, and peripheral component interconnects ( PCI) bus.
  • ISA Industry Standard Architecture
  • MAC Micro Channel Architecture
  • VESA Video Electronics Standards Association
  • PCI peripheral component interconnects
  • Set top box 512 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by set top box 512, including volatile and non-volatile media, removable and non-removable media.
  • System memory 528 can include computer system readable media in the form of volatile memory, such as random access memory (RAM) 530 and/or cache memory 532.
  • Set top box 512 may further include other removable/non-removable, volatile/non-volatile computer system storage media.
  • storage system 34 can be used to read and write non-removable, non-volatile magnetic media (not shown in FIG. 5, commonly referred to as a "hard disk drive").
  • a disk drive for reading and writing to a removable non-volatile disk such as a "floppy disk”
  • a removable non-volatile disk such as a CD-ROM, DVD-ROM
  • each drive can be coupled to bus 518 via one or more data medium interfaces.
  • Memory 528 can include at least one program product having a set (e.g., at least one) of program modules configured to perform the functions of various embodiments of the present invention.
  • Programs/utilities 540 having one or more sets of program modules 542, which may be stored, for example, in memory 528, such program modules 542 include, but are not limited to, an operating system, one or more applications, other program modules, and program data, Implementations of the network environment may be included in each or some of these examples.
  • Program module 542 typically performs the functions and/or methods of embodiments of the present invention.
  • the set top box 512 can also be in communication with one or more external devices 514 (e.g., pointing device, display 524, etc.), and can also be in communication with one or more devices that enable a user to interact with the set top box 512, and/or with the set top box 512. Any device (eg, a network card, modem, etc.) capable of communicating with one or more other computing devices communicates. This communication can take place via an input/output (I/O) interface 522. Also, set top box 512 can also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and/or a public network, such as the Internet) via network adapter 520.
  • networks e.g., a local area network (LAN), a wide area network (WAN), and/or a public network, such as the Internet
  • network adapter 520 communicates with other modules of set top box 512 via bus 518. It should be understood that although not shown in the figures, other hardware and/or software modules may be utilized in connection with set top box 512, including but not limited to: microcode, device drivers, redundant first processing units, external disk drive arrays, RAID systems, tapes. Drives and data backup storage systems, etc.
  • the first processing unit 516 is configured to perform various functional applications and data processing by running a program stored in the system memory 528, for example, implementing the remote debugging method provided by the embodiments of the present invention.
  • FIG. 6 is a schematic structural diagram of a server according to an embodiment.
  • FIG. 6 shows a block diagram of an exemplary server 612 suitable for use in implementing embodiments of the present invention.
  • server 612 is represented in the form of a general purpose computing device.
  • the components of server 612 may include, but are not limited to, one or more second processors or second processing units 616, system memory 628, and a bus 618 that connects different system components, including system memory 628 and second processing unit 616.
  • the program when one or more programs included in the server 612 are executed by the one or more second processors or the second processing unit 616, the program performs the following operations:
  • the set top box is disposed in the remote intranet; and sending a debugging instruction to the set top box, so that the set top box periodically collects the output of the set top box during execution of the debugging instruction Data; based on the SSH connection, acquiring the output data from the set top box, and performing a subsequent debugging operation according to the output data.
  • a computer readable storage medium storing computer executable instructions for performing the method of any of the above.
  • the foregoing embodiment method can be implemented by means of software plus a necessary general hardware platform, and of course, by hardware.
  • the technical solution of the embodiment of the present invention may be embodied in the form of a software product stored in a storage medium (such as a ROM/RAM, a magnetic disk, an optical disk), including instructions for making one
  • the terminal device (which may be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) performs the method described in the embodiments of the present invention.
  • the method for debugging a set top box, the set top box and the server of the present disclosure solves the technical problem that the remote external network server can remotely debug the set top box of the internal network without first accessing the internal network, and realizes the technology of remotely debugging the set top box in a true sense. effect.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施例公开了一种远程调试方法、机顶盒和服务器,其中,方法包括:基于SSH协议,与服务器建立SSH连接,所述服务器设置于远程的外网中;接收并执行所述服务器发送的调试指令;在执行所述调试指令期间,按照预设周期,周期性地采集所述机顶盒的输出数据;基于所述SSH连接,发送所述输出数据给所述服务器,使远程服务器根据所述输出数据,执行后续调试操作。解决了远程外网服务器无需先接入到内网,即可远程调试内网的机顶盒的技术问题,实现真正意义上的远程调试机顶盒的技术效果,为用户、售后人员和技术人员带来便捷、实时、高效、低成本的服务体验。

Description

一种远程调试方法、机顶盒和服务器 技术领域
本公开涉及远程调试技术领域,例如涉及一种远程调试方法、机顶盒和服务器。
背景技术
数字机顶盒、金融智能终端机等终端设备,已经广泛地应用于人们的日常工作生活中。
当用户使用这类终端设备出现故障问题时,该终端设备的运营商通常选择通过电话与用户进行故障沟通,通过电话指导用户,让用户尝试用各种其指导的方法进行故障调试,但是,由于用户的受教育程度各有不同,而且耐性有限,所以通过这种方式解决故障问题费时费力;或者选择派遣维护人员提供上门故障调试服务,但是这样的上门服务,人力和时间成本很高;又或者选择让用户直接将故障终端设备寄到指定维修中心进行维修调试,而这样运输成本也很高,而且时间上也有延误,严重影响用户体验。
现有的针对基于安卓操作系统的智能设备的远程调试工具为调试桥(android debug bridge,adb),但是abd并不是真正意义上的远程调试工具,因为abd只能局限于内网的内部调试。例如,当用户家中的机顶盒出现故障,如果利用adb进行调试,只能选择派技术人员提供上门服务。即先将安装有abd的调试用电脑与机顶盒连接在同一局域网,然后再利用adb对机顶盒进行调试。利用adb进行调试,受网络属性的局限性,且需要维护人员提供上门调试服务。
发明内容
本公开提供一种调试机顶盒的方法、机顶盒和服务器,实现真正意义上的远程调试。
一种远程调试方法,应用于机顶盒,所述机顶盒设置于远程的内网中,包 括:
基于SSH协议,与服务器建立SSH连接,所述服务器设置于远程的外网中;
接收并执行所述服务器发送的调试指令;
在执行所述调试指令期间,按照预设周期,周期性地采集所述机顶盒的输出数据;
基于所述SSH连接,发送所述输出数据给所述服务器,使远程服务器根据所述输出数据,执行后续调试操作。
一种远程调试方法,应用于服务器,所述服务器设置于远程的外网中,包括:
基于SSH协议,与机顶盒建立SSH连接,所述机顶盒设置于远程的内网中;
向所述机顶盒发送调试指令,使所述机顶盒在执行所述调试指令期间,周期性地采集所述机顶盒的输出数据;
基于所述SSH连接,从所述机顶盒获取所述输出数据,根据所述输出数据,执行后续调试操作。
一种机顶盒,设置于远程的内网中,包括:
一个或多个第一处理器;
第一存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个第一处理器执行,使得所述一个或多个第一处理器实现前述第一方面提供的远程调试方法。
一种服务器,设置于远程的外网中,包括:
一个或多个第二处理器;
第二存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个第二处理器执行,使得所述一个或多个第二处理器实现前述第二方面提供的远程调试方法。
本发明实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述任一项的方法。
本发明实施例解决了远程外网服务器无需先接入到内网,即可远程调试内 网的机顶盒的技术问题,实现真正意义上的远程调试机顶盒的技术效果,为用户、售后人员和技术人员带来便捷、实时、高效、低成本的服务体验。
附图说明
图1是一实施例提供的远程调试方法的流程图;
图2是一实施例提供的远程调试方法的流程图;
图3是一实施例提供的远程调试方法的流程图;
图4是另一实施例提供的远程调试方法的流程图;
图5是一实施例提供的机顶盒的结构示意图;
图6是一实施例提供的服务器的结构示意图。
具体实施方式
本发明提供实施例提供了一种调试机顶盒的方法、机顶盒和服务器,解决了远程外网服务器无需先接入到内网,即可远程调试内网的机顶盒的技术问题,实现真正意义上的远程调试机顶盒的技术效果。
图1是一实施例提供的远程调试方法的流程图,本实施例中的方法可适用于对远程的内网中机顶盒进行远程调试的场景,该方法可由远程的外网中机顶盒来执行,如图1所示,本实施例提供的方法可以包括如下步骤:
在步骤110中,基于SSH协议,与服务器建立SSH连接,服务器设置于远程的外网中。
在一个实施例中,机顶盒在远程的内网中,与机顶盒配合使用的遥控器设置有开启远程调试的快捷键,当机顶盒出现故障(非开机故障),用户有远程调试需求时,在机顶盒开机后按下开启远程调试的快捷键,机顶盒启动远程调试服务,基于SSH协议以及服务器的IP地址,与设置于远程的外网中的服务器建立SSH连接。
需要说明的是,由于远程调试需要root权限,优选的,将实现启动远程调试的功能模块集成到机顶盒的内部系统中,使得用户只需按下远程调试的快捷键即可启用远程调试服务,或者也可以通过其他方式启用远程调试服务。
在步骤120中,接收并执行服务器发送的调试指令。
在一个实施例中,服务器可以通过常规的串口调试工具(如串口调试助手)向机顶盒发送调试指令(如input keyevent KEYCODE_POWER指令),机顶盒接收并执行该调试指令。
在步骤130中,在执行调试指令期间,按照预设周期,周期性地采集机顶盒的输出数据。
在一个实施例中,预设周期优选为100ms,机顶盒的输出数据优选为截屏图片,还可以包括实时日志文件。机顶盒在执行调试指令期间,每隔100ms对机顶盒的播放画面进行截屏,获得截屏图片,并获得日志文件。
示例性的,在前述按下开启远程调试的快捷键时,机顶盒除了启用远程调试服务外,还同时启用远程传图服务,机顶盒通过远程传图服务,每隔预设时长(如100ms)执行一次截屏抓图操作,并抓取日志文件。
在步骤140中,基于SSH连接,发送输出数据给服务器,使远程服务器根据输出数据,执行后续调试操作。
在一个实施例中,机顶盒基于SSH协议,通过scp(secure copy)命令实时将每次采集到的输出数据发送给远程的服务器,服务器可以进一步将接收的输出数据发送给技术人员的网页客户端,使得技术人员可以通过网页客户端直接看到截屏图片和日志数据,将截屏图片连成一起播放就是机顶盒的播放画面,技术人员根据播放画面分析机顶盒的故障,根据情况执行后续调试操作。
技术人员通过网页客户端除了可以查看机顶盒的截屏图片和日志数据外,还可以通过网页客户端输入调试指令(如input keyevent KEYCODE_POWER指令),传输到服务器后再发送到机顶盒;技术人员还可以在网页客户端将一些常用按键比如上、下、左、右、确认、数字键等input命令映射成快捷按钮,技术人员只需要点网页客户端上的按钮,网页客户端就会发送input模拟按键命令给服务器,而服务器与机顶盒基于SSH协议相连,所以机顶盒直接收到命令后执行,实现对机顶盒的远程遥控。
综上,在本发明实施例中,通过采取外网服务器基于SSH协议与内网中待调试的机顶盒建立SSH连接,使得内网中的机顶盒可以接收外网服务器发出的调试指令;并且,在调试过程中,通过机顶盒周期性地发送机顶盒输出数据给 远程外网服务器,使得服务器根据输出数据可以更好地执行后续调试操作,以顺利完成对机顶盒的远程调试。解决了远程外网服务器无需先接入到内网,即可远程调试内网的机顶盒的技术问题,实现真正意义上的远程调试机顶盒的技术效果,为用户、售后人员和技术人员带来便捷、实时、高效、低成本的服务体验。
图2是一实施例提供的远程调试方法的流程图,本实施例在上述实施例的基础上,可选的,机顶盒上搭建有第一SSH客户端和第一SSH服务端;
所述与服务器建立SSH连接包括:
通过第一SSH客户端与服务器建立SSH反向隧道;
基于SSH反向隧道,通过第一SSH服务端,接收服务器发出的建立连接请求,与服务器建立SSH连接。
基于上述优化,如图2所示,本实施例提供的远程调试方法,可以包括如下步骤:
在步骤210中,基于SSH协议,通过第一SSH客户端与服务器建立SSH反向隧道。
优选的,所述通过第一SSH客户端与服务器建立SSH反向隧道,包括:
根据服务器的IP地址,通过第一SSH客户端,将机顶盒的第一端口镜像到服务器的第二端口上。
在一个实施例中,远程内网中机顶盒的IP地址为172.28.253.155,包括22端口(即第一端口),远程外网中服务器的IP地址为192.168.2.230,包括19998端口(即第二端口),服务器上相应搭建有第二SSH客户端和第二SSH服务端。在机顶盒开机后启动远程调试服务时,机顶盒通过第一SSH客户端主动向服务器的第二SSH服务端发起SSH连接,建立SSH反向隧道,通过端口转发,将服务器的19998端口转发到机顶盒的22端口,即机顶盒的22端口镜像到服务器的19998端口上。机顶盒的第一SSH客户端向服务器发出SSH命令:ssh-R19998:localhost:22 root@192.168.2.230,包括:
root@RD2test:~#ssh-R 19998:localhost:22 root@192.168.2.230
root@19192.168.2.230’s password:
welcome to ubuntu 12.04 LTS(GNU/Linux 3.2.0-32-generic x86_64)
*Documentation:https://help.ubuntu.com/
New release’14.04.1 LTS’available.
Run’do-release-upgrade’to upgrade to it.
Last login:Fri Mar 3 15:51:30 2017 from 192.168.11.106
root@RD2TEAM:~#cd/home/caoli/co
code/  config/
root@RD2TEAM:~#cd/home/caoli/co
code/  config/
如此,机顶盒端就进入了服务器的串口,建立了一个SSH反向隧道,实现从机顶盒到服务器的连接。
需要说明的是,由于SSH反向隧道需要root权限,所以优选通过机顶盒的内置服务来完成建立SSH反向隧道的操作。
在步骤220中,基于SSH反向隧道,通过第一SSH服务端,接收服务器发出的建立连接请求,与服务器建立SSH连接。
在一个实施例中,建立SSH反向隧道后,服务器的第二SSH客户端向机顶盒的第一SSH服务端发起SSH命令:ssh localhost-p 19998,包括:
root@RD2TEAM:~#ssh localhost-p 19998
The authenticity of host ‘[localhost]:19998([127.0.0.1]:19998)’can’t be established.
ECDSA Key fingerprint is bd:81:5a:58:21:58:c2:1c:b5:df:6a:39:f8:4b:75:4a.
Are you sure you want to continue connecting(yes/no)?yes
warning:permanently added ‘[localhost]:19998’(ECDSA)to the list of know hosts.
root@localhost’s password:
permission denied,please try again.
root@localhost’s password:
Connection closed by 127.0.0.1
root@RD2TEAM:~#cd/home/^d/home/^c
root@RD2TEAM:~#^c
root@RD2TEAM:~#^c
root@RD2TEAM:~#
root@RD2TEAM:~#
root@RD2TEAM:~#
如此,建立了服务器到机顶盒的22端口的连接,服务器就可以直接串口调试机顶盒了,实现服务器到机顶盒的连接。
在步骤230中,接收并执行服务器发送的调试指令。
在步骤240中,在执行调试指令期间,按照预设周期,周期性地采集机顶盒的输出数据。
在步骤250中,基于SSH连接,发送输出数据给服务器,使远程服务器根据输出数据,执行后续调试操作。
综上,在本发明实施例中,通过采取外网服务器基于SSH协议与内网中待调试的机顶盒建立SSH隧道及SSH连接,使得内网中的机顶盒可以接收外网服务器发出的调试指令;并且,在调试过程中,通过机顶盒周期性地发送机顶盒输出数据给远程外网服务器,使得服务器根据输出数据可以更好地执行后续调试操作,以顺利完成对机顶盒的远程调试。解决了远程外网服务器无需先接入到内网,即可远程调试内网的机顶盒的技术问题,实现真正意义上的远程调试机顶盒的技术效果,为用户、售后人员和技术人员带来便捷、实时、高效、低成本的服务体验。
图3是一实施例提供的远程调试方法的流程图,本实施例的方法可适用于对远程的内网中机顶盒进行远程调试的场景,该方法可由远程的外网中服务器来执行,如图3所示,本实施例提供的方法可以包括如下步骤:
在步骤310中,基于SSH协议,与机顶盒建立SSH连接,机顶盒设置于远程的内网中。
在一个实施例中,机顶盒在远程的内网中,与机顶盒配合使用的遥控器设置有开启远程调试的快捷键,当机顶盒出现故障(非开机故障),用户有远程调试需求时,在机顶盒开机后按下开启远程调试的快捷键,机顶盒启动远程调试服务,基于SSH协议以及服务器的IP地址,向设置于远程的外网中的服务器发出建立连接请求,服务器响应请求与机顶盒建立SSH连接。
需要说明的是,由于远程调试需要root权限,优选的,将机顶盒端实现启动远程调试的功能模块集成到机顶盒的内部系统中,使得用户只需按下远程调试的快捷键即可启用远程调试服务,或者还可以通过其他方式启用远程调试服务。
在步骤320中,向机顶盒发送调试指令,使机顶盒在执行调试指令期间,周期性地采集机顶盒的输出数据。
在一个实施例中,服务器可以通过常规的串口调试工具(如串口调试助手)向机顶盒发送调试指令(如input keyevent KEYCODE_POWER指令),机顶盒接收并执行该调试指令。
其中,预设周期优选为100ms,机顶盒的输出数据优选为截屏图片,还可以包括实时日志文件。机顶盒在执行调试指令期间,机顶盒每隔100ms对机顶盒的播放画面进行截屏,获得截屏图片,并获得日志文件。
示例性的,在前述按下开启远程调试的快捷键时,机顶盒除了启用远程调试服务外,还同时启用远程传图服务,机顶盒通过远程传图服务,每隔预设时长(如100ms)执行一次截屏抓图操作,并抓取日志文件。
在步骤330中,基于SSH连接,从机顶盒获取输出数据,根据输出数据,执行后续调试操作。
在一个实施例中,机顶盒基于SSH协议,通过scp(secure copy)命令实时将每次采集到的输出数据发送给远程的服务器,服务器接收输出数据,服务器可以进一步将接收的输出数据发送给技术人员的网页客户端,使得技术人员可以通过网页客户端直接看到截屏图片和日志数据,将截屏图片连成一起播放就是机顶盒的播放画面,技术人员根据播放画面分析机顶盒的故障,根据情况执 行后续调试操作。
技术人员通过网页客户端除了可以查看机顶盒的截屏图片和日志数据外,还可以通过网页客户端输入调试指令(如input keyevent KEYCODE_POWER指令),传输到服务器后再发送到机顶盒;技术人员还可以在网页客户端将一些常用按键比如上、下、左、右、确认、数字键等input命令映射成快捷按钮,技术人员只需要点网页客户端上的按钮,网页客户端就会发送input模拟按键命令给服务器,而服务器与机顶盒基于SSH协议相连,所以机顶盒直接收到命令后执行,实现对机顶盒的远程遥控。
综上,在本发明实施例中,通过采取外网服务器基于SSH协议与内网中待调试的机顶盒建立SSH连接,使得内网中的机顶盒可以接收外网服务器发出的调试指令;并且,在调试过程中,通过机顶盒周期性地发送机顶盒输出数据给远程外网服务器,使得服务器根据输出数据可以更好地执行后续调试操作,以顺利完成对机顶盒的远程调试。解决了远程外网服务器无需先接入到内网,即可远程调试内网的机顶盒的技术问题,实现真正意义上的远程调试机顶盒的技术效果,为用户、售后人员和技术人员带来便捷、实时、高效、低成本的服务体验。
图4是另一实施例提供的远程调试方法的流程图,本实施例在上述实施例的基础上,可选的,服务器上搭建有第二SSH客户端和第二SSH服务端;
所述与机顶盒建立SSH连接,包括:
通过第二SSH服务端与机顶盒建立SSH反向隧道;
基于SSH反向隧道,通过第二客户端,向机顶盒发出建立连接请求,与机顶盒建立SSH连接。
基于上述优化,如图4所示,本实施例提供的远程调试方法,可以包括如下步骤:
在步骤410中,基于SSH协议,通过第二SSH服务端与机顶盒建立SSH反向隧道。
优选的,所示通过第二SSH服务端与机顶盒建立SSH反向隧道,包括:
通过第二SSH服务端,接收第一SSH客户端发送的机顶盒的第一端口信息, 将机顶盒的第一端口镜像到服务器的第二端口上。
在一个实施例中,远程内网中机顶盒的IP地址为172.28.253.155,包括22端口(即第一端口),远程外网中服务器的IP地址为192.168.2.230,包括19998端口(即第二端口),服务器上相应搭建有第二SSH客户端和第二SSH服务端。在机顶盒开机后启动远程调试服务时,机顶盒通过第一SSH客户端主动向服务器的第二SSH服务端发起SSH连接,建立SSH反向隧道,通过端口转发,将服务器的19998端口转发到机顶盒的22端口,即机顶盒的22端口镜像到服务器的19998端口上。机顶盒的第一SSH客户端向服务器发出SSH命令:ssh-R19998:localhost:22root@192.168.2.230,包括:
root@RD2test:~#ssh-R 19998:localhost:22root@192.168.2.230
root@19192.168.2.230’s password:
welcome to ubuntu 12.04LTS(GNU/Linux 3.2.0-32-generic x86_64)
*Documentation:https://help.ubuntu.com/
New release’14.04.1 LTS’available.
Run’do-release-upgrade’to upgrade to it.
Last login:Fri Mar 3 15:51:30 2017 from 192.168.11.106
root@RD2TEAM:~#cd/home/caoli/co
code/  config/
root@RD2TEAM:~#cd/home/caoli/co
code/  config/
如此,机顶盒端就进入了服务器的串口,建立了一个SSH反向隧道,实现从机顶盒到服务器的连接。
需要说明的是,由于SSH反向隧道需要root权限,所以优选通过机顶盒的内置服务来完成建立SSH反向隧道的操作。
在步骤420中,基于SSH反向隧道,通过第二客户端,向机顶盒发出建立连接请求,与机顶盒建立SSH连接。
在一个实施例中,建立SSH反向隧道后,服务器的第二SSH客户端向机顶 盒的第一SSH服务端发起SSH命令:ssh localhost-p 19998,包括:
root@RD2TEAM:~#ssh localhost-p 19998
The authenticity of host ‘[localhost]:19998 ([127.0.0.1]:19998)’can’t be established.
ECDSA Key fingerprint is bd:81:5a:58:21:58:c2:1c:b5:df:6a:39:f8:4b:75:4a.
Are you sure you want to continue connecting(yes/no)?yes
warning:permanently added ‘[localhost]:19998’(ECDSA)to the list of know hosts.
root@localhost’s password:
permission denied,please try again.
root@localhost’s password:
Connection closed by 127.0.0.1
root@RD2TEAM:~#cd/home/^d/home/^c
root@RD2TEAM:~#^c
root@RD2TEAM:~#^c
root@RD2TEAM:~#
root@RD2TEAM:~#
root@RD2TEAM:~#
如此,建立了服务器到机顶盒的22端口的连接,服务器就可以直接串口调试机顶盒了,实现服务器到机顶盒的连接。
在步骤430中,向机顶盒发送调试指令,使机顶盒在执行调试指令期间,周期性地采集机顶盒的输出数据。
在步骤440中,基于SSH连接,从机顶盒获取输出数据,根据输出数据,执行后续调试操作。
综上,在本发明实施例中,通过采取外网服务器基于SSH协议与内网中待调试的机顶盒建立SSH隧道及SSH连接,使得内网中的机顶盒可以接收外网服务器发出的调试指令;并且,在调试过程中,通过机顶盒周期性地发送机顶盒 输出数据给远程外网服务器,使得服务器根据输出数据可以更好地执行后续调试操作,以顺利完成对机顶盒的远程调试。解决了远程外网服务器无需先接入到内网,即可远程调试内网的机顶盒的技术问题,实现真正意义上的远程调试机顶盒的技术效果,为用户、售后人员和技术人员带来便捷、实时、高效、低成本的服务体验。
图5是一实施例提供的机顶盒的结构示意图。图5示出了适于用来实现本发明实施方式的示例性机顶盒512的框图。
如图5所示,机顶盒512以通用机顶盒设备的形式表现。机顶盒512的组件可以包括但不限于:一个或者多个第一处理器或者第一处理单元516,系统存储器528,连接不同系统组件(包括系统存储器528和第一处理单元516)的总线518。
可选地,当上述机顶盒512所包括一个或者多个程序被所述一个或者多个第一处理器或者第一处理单元516执行时,程序进行如下操作:
基于SSH协议,与服务器建立SSH连接,所述服务器设置于远程的外网中;接收并执行所述服务器发送的调试指令;在执行所述调试指令期间,按照预设周期,周期性地采集所述机顶盒的输出数据;基于所述SSH连接,发送所述输出数据给所述服务器,使远程服务器根据所述输出数据,执行后续调试操作。
总线518表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,第一处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
机顶盒512典型地包括多种计算机系统可读介质。这些介质可以是任何能够被机顶盒512访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器528可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)530和/或高速缓存存储器532。机顶盒512可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为 举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线518相连。存储器528可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组或多组程序模块542的程序/实用工具540,可以存储在例如存储器528中,这样的程序模块542包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块542通常执行本发明实施例中的功能和/或方法。
机顶盒512也可以与一个或多个外部设备514(例如指向设备、显示器524等)通信,还可与一个或者多个使得用户能与该机顶盒512交互的设备通信,和/或与使得该机顶盒512能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口522进行。并且,机顶盒512还可以通过网络适配器520与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器520通过总线518与机顶盒512的其它模块通信。应当明白,尽管图中未示出,可以结合机顶盒512使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余第一处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
第一处理单元516,设置为通过运行存储在系统存储器528中的程序,执行各种功能应用以及数据处理,例如实现本发明实施例所提供的远程调试方法。
图6是一实施例提供的服务器的结构示意图。图6示出了适于用来实现本发明实施方式的示例性服务器612的框图。
如图6所示,服务器612以通用计算设备的形式表现。服务器612的组件可以包括但不限于:一个或者多个第二处理器或者第二处理单元616,系统存储器628,连接不同系统组件(包括系统存储器628和第二处理单元616)的总线618。
可选地,当上述服务器612所包括一个或者多个程序被所述一个或者多个第二处理器或者第二处理单元616执行时,程序进行如下操作:
基于SSH协议,与机顶盒建立SSH连接,所述机顶盒设置于远程的内网中;向所述机顶盒发送调试指令,使所述机顶盒在执行所述调试指令期间,周期性地采集所述机顶盒的输出数据;基于所述SSH连接,从所述机顶盒获取所述输出数据,根据所述输出数据,执行后续调试操作。
对服务器612的结构的细节描述,可参考上述实施例对机顶盒512的详细描述,在此不再重复赘述。
一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述任一项的方法。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,本发明实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明实施例所述的方法。
以上仅为本发明的实施例,并非因此限制本发明的专利范围。
工业实用性
本公开的一种调试机顶盒的方法、机顶盒和服务器,解决了远程外网服务器无需先接入到内网,即可远程调试内网的机顶盒的技术问题,实现真正意义上的远程调试机顶盒的技术效果。

Claims (11)

  1. 一种远程调试方法,应用于机顶盒,所述机顶盒设置于远程的内网中,:
    基于SSH协议,与服务器建立SSH连接,所述服务器设置于远程的外网中;
    接收并执行所述服务器发送的调试指令;
    在执行所述调试指令期间,按照预设周期,周期性地采集所述机顶盒的输出数据;
    基于所述SSH连接,发送所述输出数据给所述服务器,使远程服务器根据所述输出数据,执行后续调试操作。
  2. 根据权利要求1所述的方法,其中,所述机顶盒上搭建有第一SSH客户端和第一SSH服务端;
    所述与服务器建立SSH连接包括:
    通过所述第一SSH客户端与所述服务器建立SSH反向隧道;
    基于所述SSH反向隧道,通过所述第一SSH服务端,接收所述服务器发出的建立连接请求,与所述服务器建立所述SSH连接。
  3. 根据权利要求2所述的方法,其中,所述通过所述第一SSH客户端与所述服务器建立SSH反向隧道的步骤包括:
    根据所述服务器的IP地址,通过所述第一SSH客户端,将所述机顶盒第一端口镜像到所述服务器的第二端口上。
  4. 根据权利要求1~3任一项所述的方法,其中:
    所述预设周期为100ms;
    所述周期性地采集所述机顶盒的输出数据,包括:
    每隔100ms对所述机顶盒的播放画面进行截屏。
  5. 一种远程调试方法,应用于服务器,所述服务器设置于远程的外网中,包括:
    基于SSH协议,与机顶盒建立SSH连接,所述机顶盒设置于远程的内网中;
    向所述机顶盒发送调试指令,使所述机顶盒在执行所述调试指令期间,周期性地采集所述机顶盒的输出数据;
    基于所述SSH连接,从所述机顶盒获取所述输出数据,根据所述输出数据,执行后续调试操作。
  6. 根据权利要求5所述的方法,其中,所述服务器上搭建有第二SSH客户端和第二SSH服务端;
    所述与机顶盒建立SSH连接,包括:
    通过所述第二SSH服务端与所述机顶盒建立SSH反向隧道;
    基于所述SSH反向隧道,通过所述第二客户端,向所述机顶盒发出建立连接请求,与所述机顶盒建立所述SSH连接。
  7. 根据权利要求6所述的方法,其中,所述通过所述第二SSH服务端与所述机顶盒建立SSH反向隧道的步骤,包括:
    通过所述第二SSH服务端,接收所述第一SSH客户端发送的机顶盒的第一端口信息,将所述机顶盒的第一端口镜像到服务器的第二端口上。
  8. 根据权利要求5~7任一项所述的方法,其中:
    所述预设周期为100ms;
    所述周期性地采集所述机顶盒的输出数据,包括:
    所述机顶盒每隔100ms对所述机顶盒的播放画面进行截屏。
  9. 一种机顶盒,设置于远程的内网中,包括:
    一个或多个第一处理器;
    第一存储装置,设置为存储一个或多个程序;
    当所述一个或多个程序被所述一个或多个第一处理器执行,使得所述一个或多个第一处理器实现如权利要求1~4中任一所述的远程调试方法。
  10. 一种服务器,设置于远程的外网中,包括:
    一个或多个第二处理器;
    第二存储装置,设置为存储一个或多个程序;
    当所述一个或多个程序被所述一个或多个第二处理器执行,使得所述一个或多个第二处理器实现如权利要求5~8中任一所述的远程调试方法。
  11. 一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行权利要求1-8任一项的方法。
PCT/CN2017/110066 2017-06-08 2017-11-09 一种远程调试方法、机顶盒和服务器 WO2018223598A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710431214.8A CN107040777A (zh) 2017-06-08 2017-06-08 一种远程调试方法、机顶盒和服务器
CN201710431214.8 2017-06-08

Publications (1)

Publication Number Publication Date
WO2018223598A1 true WO2018223598A1 (zh) 2018-12-13

Family

ID=59541462

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/110066 WO2018223598A1 (zh) 2017-06-08 2017-11-09 一种远程调试方法、机顶盒和服务器

Country Status (2)

Country Link
CN (1) CN107040777A (zh)
WO (1) WO2018223598A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107040777A (zh) * 2017-06-08 2017-08-11 深圳市创维软件有限公司 一种远程调试方法、机顶盒和服务器
CN107623698B (zh) * 2017-10-20 2021-01-22 深圳市共进电子股份有限公司 远程调试网络设备方法和装置
CN109861950A (zh) * 2017-11-30 2019-06-07 阿里巴巴集团控股有限公司 设备远程调试方法、装置、设备和存储介质
CN108011883A (zh) * 2017-12-05 2018-05-08 深圳市创维软件有限公司 一种远程调试方法、终端设备和服务器
CN108650552A (zh) * 2018-04-25 2018-10-12 晶晨半导体(上海)股份有限公司 一种针对机顶盒的远程管理平台
CN110502418B (zh) * 2018-05-17 2023-05-23 长沙博为软件技术股份有限公司 一种实现远程调试的方法
CN108880877A (zh) * 2018-06-07 2018-11-23 深圳市茁壮网络股份有限公司 一种日志的获取方法和装置
CN110971434B (zh) * 2018-09-30 2021-11-09 华为技术有限公司 管理内网网络设备的方法、装置和系统
CN111131814A (zh) * 2018-10-30 2020-05-08 深圳市茁壮网络股份有限公司 一种数据反馈方法、装置及机顶盒
CN109996121A (zh) * 2019-04-12 2019-07-09 晶晨半导体(上海)股份有限公司 一种远程操控视频播放终端的方法
CN112449251B (zh) * 2019-09-03 2023-08-01 深圳Tcl数字技术有限公司 一种视频画面回传实现的方法、系统、设备及存储介质
CN110650199B (zh) * 2019-09-25 2022-08-12 湖南快乐阳光互动娱乐传媒有限公司 远程连接方法及装置
CN110908703B (zh) * 2019-10-24 2023-05-16 中国船舶重工集团公司第七0九研究所 一种软件包仓库按需镜像方法、装置及系统
CN111212155B (zh) * 2019-12-30 2023-03-10 深圳Tcl新技术有限公司 日志调试方法、电视和存储介质
CN111831499B (zh) * 2020-07-21 2024-04-23 北京千丁互联科技有限公司 远程调试方法、装置、服务器、可读存储介质和系统
CN112203147A (zh) * 2020-09-04 2021-01-08 深圳创维-Rgb电子有限公司 基于手机抓取电视软件日志处理方法、装置、智能终端
CN112491970B (zh) * 2020-11-09 2022-06-21 山东星宏电讯有限责任公司 一种基于虚拟网络链路的异地调试端部署方法
CN112492301B (zh) * 2020-12-02 2022-11-01 湖南快乐阳光互动娱乐传媒有限公司 一种iptv机顶盒的性能测试方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001004751A2 (en) * 1999-07-09 2001-01-18 Canal+ Societe Anonyme Running and testing applications
CN102984230A (zh) * 2012-11-19 2013-03-20 北京奇虎科技有限公司 远程协助中的数据传输装置及方法
CN104320653A (zh) * 2014-10-22 2015-01-28 中国电信集团工会上海市网络操作维护中心委员会 一种智能化全业务故障诊断系统
CN106254862A (zh) * 2016-08-02 2016-12-21 四川长虹电器股份有限公司 远程可视化在线服务系统及方法
CN106502913A (zh) * 2016-11-29 2017-03-15 北京元心科技有限公司 调试双系统移动终端的方法及装置
CN107040777A (zh) * 2017-06-08 2017-08-11 深圳市创维软件有限公司 一种远程调试方法、机顶盒和服务器

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102508775A (zh) * 2011-10-31 2012-06-20 彭勇 一种交互式自动化测试系统
CN103927255B (zh) * 2013-01-16 2019-01-22 腾讯科技(深圳)有限公司 基于云测试系统的软件测试方法、云测试系统及其客户端
CN103338290B (zh) * 2013-06-04 2016-12-28 宁波大学 一种自动测试Android手机触屏性能的方法
CN103634165B (zh) * 2013-12-05 2017-01-18 北京奇安信科技有限公司 一种基于反向代理实现网络测试的方法、终端设备和系统
CN105281943A (zh) * 2014-07-25 2016-01-27 中兴通讯股份有限公司 一种基于网页的远程设备管理方法和装置
CN105323598B (zh) * 2014-07-28 2020-03-10 中兴通讯股份有限公司 一种机顶盒管理方法、装置及系统
CN104243210B (zh) * 2014-09-17 2018-01-05 湖北盛天网络技术股份有限公司 远程访问路由器管理页面的方法和系统
CN106708489B (zh) * 2015-11-17 2020-01-17 杭州海康威视数字技术股份有限公司 设备的调试方法及系统
CN106357773A (zh) * 2016-09-19 2017-01-25 杭州当虹科技有限公司 一种基于SSHv2协议的远程协助系统
CN106383785B (zh) * 2016-09-21 2018-11-27 网易(杭州)网络有限公司 移动应用的调试方法及装置
CN106776320A (zh) * 2016-12-16 2017-05-31 四川长虹电器股份有限公司 安卓智能终端自动化测试系统及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001004751A2 (en) * 1999-07-09 2001-01-18 Canal+ Societe Anonyme Running and testing applications
CN102984230A (zh) * 2012-11-19 2013-03-20 北京奇虎科技有限公司 远程协助中的数据传输装置及方法
CN104320653A (zh) * 2014-10-22 2015-01-28 中国电信集团工会上海市网络操作维护中心委员会 一种智能化全业务故障诊断系统
CN106254862A (zh) * 2016-08-02 2016-12-21 四川长虹电器股份有限公司 远程可视化在线服务系统及方法
CN106502913A (zh) * 2016-11-29 2017-03-15 北京元心科技有限公司 调试双系统移动终端的方法及装置
CN107040777A (zh) * 2017-06-08 2017-08-11 深圳市创维软件有限公司 一种远程调试方法、机顶盒和服务器

Also Published As

Publication number Publication date
CN107040777A (zh) 2017-08-11

Similar Documents

Publication Publication Date Title
WO2018223598A1 (zh) 一种远程调试方法、机顶盒和服务器
US8595321B2 (en) Supporting system for remote control
KR102158754B1 (ko) 스마트 네트워크 인터페이스 카드의 조작 방법 및 조작 장치
US20130326278A1 (en) Server and method of manipulation in relation to server serial ports
US10657232B2 (en) Information processing apparatus and method of controlling information processing apparatus
WO2021203979A1 (zh) 运维处理方法、装置及计算机设备
US20150067399A1 (en) Analysis, recovery and repair of devices attached to remote computing systems
US8015201B1 (en) Servicing daemon for live debugging of storage systems
WO2019057089A1 (zh) 网卡镜像抓包方法、终端以及可读存储介质
WO2014169645A1 (zh) 一种检测智能终端故障的方法以及智能终端
CN112463605A (zh) 自动化测试方法及装置、存储介质、电子设备
US20090234942A1 (en) Apparatus, system, and method for testing embedded device
CN113965799B (zh) 实现有线传屏的方法及装置
CN104702624A (zh) 基于CloudStack平台虚拟机登录方法及系统
TW201509151A (zh) 具安全防護連結之遠端診斷的方法與電腦程式產品及實施該方法之資訊設備
CN102857361A (zh) 一种轻量级的远程计算机带外管理方法
CN109672602A (zh) 一种远程接入vpn的方法和设备
TW201339850A (zh) 遠端桌面管理系統及方法
US20150256446A1 (en) Method and apparatus for relaying commands
CN107194261B (zh) 一种用于远程主机的安全检查方法及装置
CN114020678B (zh) 服务器串行控制台重定向方法、装置、系统以及电子设备
JP4687912B2 (ja) 保守システム、接続装置、保守方法および保守支援方法
RU2671999C1 (ru) Способ и система для диагностики мобильных вычислительных устройств
CN114095409A (zh) 终端设备故障的远程检测方法、装置、设备及存储介质
TW202305589A (zh) 儲存裝置及其操作方法

Legal Events

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

Ref document number: 17912566

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17912566

Country of ref document: EP

Kind code of ref document: A1