Communication connection establishment method, equipment and medium

By running business processes on the target platform of the terminal device, enabling child processes, and communicating directly with the server, the problem of low efficiency in PCB design information interaction is solved, and a more efficient design process is achieved.

CN119697232APending Publication Date: 2025-03-25NINGCHANG INFORMATION TECH (HANGZHOU) CO LTD +1
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202411783823.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-05
Publication Date
2025-03-25

AI Technical Summary

Technical Problem

In the prior art, PCB design information interaction efficiency is low, resulting in the impact of design task execution efficiency.

Method used

By running business processes on the target platform of the terminal device, enabling child processes, and directly communicating with the server through the child processes, two-way communication between Allegro software and the server is realized, simplifying information transfer between designers and Layout personnel.

Benefits of technology

It improves the efficiency of PCB design, simplifies information interaction between designers and Layout personnel, and improves information interaction efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119697232A_ABST
    Figure CN119697232A_ABST
Patent Text Reader

Abstract

The invention relates to a communication connection establishment method and device and a medium, and the method comprises the steps: starting a sub-process corresponding to a business process through the business process operated in a target platform of a terminal device when determining that a communication establishment condition is satisfied, and sending a first command to the sub-process; when it is determined that the received first command is used for indicating communication connection establishment based on the command type of the first command through the sub-process, address information of the terminal equipment is obtained, and a second command is generated based on the address information and PCB file information in the first command; the second command is sent to the server through the sub-process to indicate the server to register based on the address information and the PCB file information, and a registration result is fed back to the sub-process; the received registration result is sent to the business process through the sub-process; whether the communication connection is successfully established or not is determined through the service process based on the registration result, and the information interaction efficiency is improved through the method.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of wireless communication technology, and in particular to a method, device and medium for establishing a communication connection. Background Art

[0002] With the continuous iteration of CPU (Central Processing Unit), the number of its external interfaces and signal rate are constantly increasing, which has brought the server into a new stage of performance explosion, and put forward higher requirements on the signal integrity, power integrity and layout of PCB (Printed Circuit Board). When designing PCB, it is usually necessary to divide the PCB design task into multiple subtasks, and multiple designers will perform the corresponding subtasks on the Allegro platform on different terminal devices, and the auditors will review and put forward corresponding modification suggestions.

[0003] In the related technology, as the requirements for PCBs increase, different staff members need to interact with each other on information such as design plans and modification opinions. Currently, when interacting with information, designers are required to save the PCB drawn on the Allegro platform as a PCB file in a specified format, and send the PCB file to the reviewer for review through a third-party device. The process of the reviewer sending the modification opinions to the designer is similar. This information interaction method requires multiple transmissions, resulting in low information interaction efficiency, which in turn affects the execution efficiency of the PCB design task. Summary of the invention

[0004] The present invention provides a communication connection establishment method, device and medium, which are used to solve the problem of low information interaction efficiency in related technologies.

[0005] In a first aspect, an embodiment of the present application provides a method for establishing a communication connection, which is applied to a terminal device installed with a target platform, and the method includes:

[0006] When it is determined that the communication establishment conditions are met, a subprocess corresponding to the business process is enabled through the business process running in the target platform, and a first command is sent to the subprocess; the first command carries the corresponding command type and circuit board PCB file information;

[0007] When determining, through a subprocess based on a command type in the first command, that the received first command is used to instruct to establish a communication connection, obtaining address information of the terminal device, and generating a second command based on the address information and the PCB file information;

[0008] Sending the second command to the server through the subprocess to instruct the server to register based on the address information and the PCB file information, and feeding back the registration result to the subprocess; and sending the received registration result to the business process through the subprocess;

[0009] Whether the communication connection is successfully established is determined through the business process based on the registration result.

[0010] In the above method, the business process enables the sub-process and sends a first command carrying PCB file information to the sub-process. The sub-process obtains the address information of the terminal device, and generates a second command based on the address information and the PCB file information, and sends it to the server. The server registers based on the second command and feeds back the registration result. Through this process, two-way communication between the Allegro software in the terminal device and the server is established, and further two-way communication between multiple Allegro software can be realized. Compared with the localized software design method inherent in the relevant technology, a smarter and more flexible communication method is realized; through this method, when optimizing the design of complex PCBs, the information transmission between designers and Layout personnel can be simplified, and the design efficiency of PCBs can be improved.

[0011] In a possible implementation, after enabling the subprocess corresponding to the service process and before sending the first command to the subprocess, the method further includes:

[0012] Sending a third command to the subprocess through the business process, where the third command carries a corresponding command type;

[0013] When the third command is received through the subprocess and it is determined based on the command type in the third command that the third command is used to instruct to perform a connection check, a response message is sent to the business process; the response message is used to indicate that the connection check between the subprocess and the business process has passed;

[0014] The business process receives the response message.

[0015] In the above method, before sending the first command, the business process sends a third command to the child process for connection verification, and executes subsequent operations after receiving a response message fed back by the child process. By preferentially verifying the communication connection between the business process and the child process, the stable transmission of the subsequent first command can be guaranteed.

[0016] In a possible implementation manner, the first command further includes a command sending time, and before acquiring the address information of the terminal device, the method further includes:

[0017] The subprocess determines that the time difference between the command sending time and the current time is within a preset time range.

[0018] The above method, by carrying the command sending time in the first command, enables the child process to determine whether the first command is valid based on the command sending time, thereby ensuring the normal establishment of the communication connection.

[0019] In a possible implementation, sending the second command to the server and sending the received registration result to the business process includes:

[0020] Selecting a first port and a second port corresponding to the child process from ports currently not in use by the terminal device;

[0021] Sending a second command to the server through the first port; the second command also carries identification information of the second port;

[0022] The registration result fed back by the server is received through the second port, and the registration result is sent to the business process.

[0023] In the above method, the subprocess starts the first port and the second port for receiving and sending commands respectively, thereby ensuring effective transmission of commands between the terminal device and the server.

[0024] In a possible implementation manner, after determining that the communication connection is successfully established based on the registration result through the service process, the method further includes:

[0025] The fourth command sent by the server is received through the subprocess, and the fourth command is sent to the business process; the fourth command carries the PCB guidance information, and the fourth command is: sent by the server to the subprocess based on the address information of the terminal device;

[0026] The corresponding task is executed based on the PCB guidance information in the fourth command through the business process.

[0027] The above method receives the fourth command issued by the server through a sub-process, and forwards it to the business process to execute the corresponding task based on the PCB guidance information, which can ensure the normal issuance and execution of the server task after the communication connection with the server is established.

[0028] In a possible implementation manner, after determining that the communication connection is successfully established based on the registration result through the service process, the method further includes:

[0029] When it is determined through the business process that there is a need to upload information, a fifth command is sent to the subprocess, where the fifth command carries the target file to be uploaded;

[0030] The fifth command information is parsed by a child process, and a sixth command is generated based on the address information of the target file and the terminal device obtained after the parsing;

[0031] The sixth command is sent to the server through the child process; the sixth command is used to instruct the server to execute a corresponding task based on the target file when it is determined that the address information in the sixth command matches the stored registration information.

[0032] The above method can realize effective uploading of information on the terminal device after the communication connection between the terminal device and the server is established.

[0033] In a possible implementation, before sending the first command to the child process, the method further includes:

[0034] Encrypting the first command based on a preset encryption algorithm through a business process;

[0035] Before determining, by the subprocess based on the command type in the first command, that the received first command is used to instruct to establish a communication connection, the method further includes:

[0036] The received encrypted first command is decrypted by the sub-process based on a decryption logic corresponding to a preset encryption algorithm.

[0037] In the above method, when sending the first command, the business process encrypts it based on a preset encryption algorithm before transmitting it, and the sub-process decrypts the received first command before executing subsequent operations, which can ensure the security of data transmission.

[0038] In a second aspect, an embodiment of the present application provides a communication connection establishment device, which is applied to a terminal device installed with a target platform, and the method includes:

[0039] The enabling module is used to enable a subprocess corresponding to the business process through the business process running in the target platform when it is determined that the communication establishment conditions are met, and send a first command to the subprocess; the first command carries the corresponding command type and circuit board PCB file information;

[0040] A command generation module, used to determine through a subprocess based on a command type in the first command that the received first command is used to instruct to establish a communication connection, obtain address information of the terminal device, and generate a second command based on the address information and PCB file information;

[0041] A command sending module is used to send a second command to the server through a subprocess to instruct the server to register based on the address information and the PCB file information, and feed back the registration result to the subprocess; and send the received registration result to the business process through the subprocess;

[0042] The connection determination module is used to determine whether the communication connection is successfully established based on the registration result through the business process.

[0043] In a third aspect, an embodiment of the present application provides a method for establishing a communication connection, which is applied to a server, and the method includes:

[0044] Receive a second command sent by a terminal device installed with the target platform, and register based on the address information of the terminal device and the PCB file information carried in the second command; the second command is generated by a subprocess in the terminal device when the first command is received, the subprocess corresponds to the business process running in the target platform, and the first command is sent by the business process when it is determined that the communication establishment condition is met;

[0045] The registration result is sent to the subprocess in the terminal device; the registration result is used to indicate whether the terminal device communication connection is successfully established.

[0046] In a fourth aspect, an embodiment of the present application provides a communication connection establishment device, which is applied to a server, and the device includes:

[0047] A registration module, used for receiving a second command sent by a terminal device installed with a target platform, and performing registration based on the address information of the terminal device and the PCB file information carried in the second command;

[0048] The second command is generated by a subprocess in the terminal device when the first command is received, the subprocess corresponds to a service process running in the target platform, and the first command is sent by the service process when it is determined that the communication establishment condition is met;

[0049] The result sending module is used to send the registration result to the sub-process in the terminal device; the registration result is used to indicate whether the communication connection of the terminal device is successfully established.

[0050] In a fifth aspect, an embodiment of the present application provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the communication connection establishment method of the present application when executing the program.

[0051] In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium on which a computer program is stored, and when the program is executed by a processor, the steps in the above-mentioned communication connection establishment method of the present application are implemented.

[0052] In the seventh aspect, an embodiment of the present application provides a computer program product, including a computer program, which is stored in a computer-readable storage medium; when the processor of the memory access device reads the computer program from the computer-readable storage medium, the processor executes the computer program, so that the memory access device executes the steps in the above-mentioned communication connection establishment method of the present application.

[0053] Other features and advantages of the present application will be described in the following description, and partly become apparent from the description, or be understood by practicing the present application. The purpose and other advantages of the present application can be realized and obtained by the structures specifically pointed out in the written description, claims, and drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0054] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.

[0055] Figure 1 A schematic diagram of an application scenario provided by an embodiment of the present application;

[0056] Figure 2 A flow chart of a method for establishing a communication connection provided in an embodiment of the present application;

[0057] Figure 3 A schematic diagram of a communication establishment process provided in an embodiment of the present application;

[0058] Figure 4 A schematic diagram of a server command issuing process provided in an embodiment of the present application;

[0059] Figure 5 A schematic diagram of an information uploading process provided in an embodiment of the present application;

[0060] Figure 6 A schematic diagram of a method for establishing a communication connection provided in an embodiment of the present application;

[0061] Figure 7 A schematic diagram of another method for establishing a communication connection provided in an embodiment of the present application;

[0062] Figure 8 A schematic diagram of a communication connection establishment device provided in an embodiment of the present application;

[0063] Fig. 9 A schematic diagram of another communication connection establishment device provided in an embodiment of the present application;

[0064] Fig.10 A schematic diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0065] In order to make the purpose, technical solution and advantages of the present application more clear, the present application will be further described in detail below in conjunction with the accompanying drawings. The specific operation method in the method embodiment can also be applied to the device embodiment or the system embodiment.

[0066] In the description of this application, "multiple" is understood to be "at least two". "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent three situations: A exists alone, A and B exist at the same time, and B exists alone. A is connected to B, which can represent two situations: A is directly connected to B and A is connected to B through C. In addition, in the description of this application, words such as "first" and "second" are only used for the purpose of distinguishing descriptions, and cannot be understood as indicating or implying relative importance, nor can they be understood as indicating or implying order.

[0067] In order to facilitate those skilled in the art to better understand the technical solutions provided by the embodiments of the present application, the following is a brief description of the professional terms involved:

[0068] (1) SI (Signal Integrity): The quality of signals in a circuit system.

[0069] (2) Allegro: PCB EDA (Electronic design automation) software under the Cadence platform.

[0070] (3) Skill: An extended programming language used by Cadence platform software.

[0071] (4) IPC (InterProcess Communication): refers to the transmission or exchange of information between different processes.

[0072] (5) TCP (Transmission Control Protocol): is a connection-oriented, reliable, byte-stream-based transport layer communication protocol.

[0073] With the continuous iteration of CPU (Central Processing Unit), the number of its external interfaces and signal rate are constantly increasing, which has brought the server into a new stage of performance explosion, and put forward higher requirements on SI, EE (Electronics Engineer), PI (Power Integrity) and Layout (PCB layout) of PCB (Printed Circuit Board). In order to meet these requirements, the optimization guidance for PCB has increased and gradually become more complicated, and the transmission of PCB design solutions and the unification of modification opinions have become the parts that need to be improved in the PCB layout process.

[0074] When designing PCB, it is usually necessary to divide the PCB design task into multiple subtasks, and multiple designers will perform the corresponding subtasks on the Allegro platform on different terminal devices, and the auditors will review and make corresponding modification suggestions.

[0075] As PCB requirements increase, the need for different staff to interact with each other on design plans, modification opinions and other information is increasing. Currently, when interacting with information, designers are required to save the PCB drawn on the Allegro platform as a PCB file in a specified format, and send the PCB file to the auditor for review through a third party. For example, the PCB file is manually submitted to the linkage material management system, and the auditor sends the modification opinions to the designer in a similar process. In this information interaction mode, the independence between the devices is too high, and the interaction of information needs to be transmitted multiple times, resulting in low efficiency of information interaction, which in turn affects the execution efficiency of PCB design tasks.

[0076] In this regard, an embodiment of the present application provides a method for establishing a communication connection, which enables the corresponding sub-process through the business process (i.e., Skill process) running on the target platform (i.e., Allegro), and then directly communicates with the server based on the sub-process, thereby realizing direct communication between Allegro and the server. Multiple Allegro software can be registered on the server side in this way and communicate with the server in both directions; then, the commands sent by the server can be directly received and executed, and the required information can also be passed to the server.

[0077] Figure 1 A schematic diagram of an application scenario corresponding to the above communication connection establishment method provided in an embodiment of the present application, such as Figure 1 As shown, in this application scenario, a server 101 and at least one terminal device 102 may be included, wherein:

[0078] At least one communication group is run in each terminal device 102, and each communication group includes Allegro software, Skill process (i.e., business process) and intermediate process (i.e., child process) that communicate with each other. Optionally, the above-mentioned intermediate process can be an exe executable file under the Windows system. It should be noted that there is a one-to-one correspondence between the Skill process and the intermediate process.

[0079] Specifically, in each communication group, the Allegro software performs internal communication with the Skill process, the Skill process performs IPC communication with the intermediate process, and the intermediate process performs TCP communication with the server.

[0080] It should be noted that the structure of the above application scenario is only an example, and the communication connection establishment method in the embodiment of the present application can also be applied to other scenarios.

[0081] The present application is further described in detail below in conjunction with the accompanying drawings. Figure 2 FIG. 1 is a flow chart of a method for establishing a communication connection provided in an embodiment of the present application. The specific implementation process of the method is as follows:

[0082] Step S201, when the terminal device determines that the communication establishment condition is met, the terminal device activates a subprocess corresponding to the service process through the service process running in the target platform, and sends a first command to the subprocess;

[0083] The first command carries the corresponding command type and PCB file information;

[0084] In some embodiments, the communication establishment condition may be: detecting the operation of a user starting a business process on the target platform, the business process may be a Skill process, the target platform may be a platform running the Allegro software, and the operation of the user starting the business process on the target platform may be: the user starts the Skill process in the operation menu of the Allegro software; at this time, the business process starts the sub-process corresponding to it, that is, Figure 1 The intermediate process shown is used to communicate with the server.

[0085] In some embodiments, the command type carried in the above-mentioned first command is used to identify that the command is to instruct the child process to start establishing a communication connection, for example, it can be: Skill Connnect Server; the above-mentioned PCB file information includes at least the PCB file name and the PCB file version number; after generating the first command, the business process sends the first command to its corresponding child process through IPC communication.

[0086] In a possible implementation manner, the first command further includes a command sending time, and the sending time is used to instruct the sub-process to perform a process time check based on the sending time.

[0087] After receiving the first command, the subprocess can compare the command sending time in the first command with the current time. If the time difference between the two is within a preset time range (which can be set based on needs, and the embodiment of the present application does not limit its value), subsequent operations can be further performed based on the first command; otherwise, the first command is determined to be invalid and the corresponding operation is no longer performed.

[0088] It should be noted that the above-mentioned step of determining whether the first command is valid based on the command sending time can be executed immediately after the sub-process receives the first command, or it can be sent after the sub-process determines, based on the command type in the first command, that the received first command is used to indicate the establishment of a communication connection.

[0089] In a possible implementation manner, before sending the first command to the sub-process through the business process, the following operation may also be performed: encrypting the first command based on a preset encryption algorithm through the business process.

[0090] It should be noted that the above-mentioned preset encryption algorithm is not limited in the embodiment of the present application and can be set based on needs in specific implementation.

[0091] At this time, after receiving the encrypted first command, the sub-process first decrypts the encrypted first command based on the decryption logic corresponding to the preset encryption algorithm, and then determines whether the received first command is used to instruct the establishment of a communication connection based on the command type in the first command.

[0092] In a possible implementation, after the service process is enabled and before the first command is sent to the sub-process, in order to ensure normal interaction between the service process and the sub-process, it is necessary to verify the connection relationship between the service process and the sub-process. In the specific implementation:

[0093] A third command is sent to the child process through the business process, and the third command carries a corresponding command type; the identifier is used to indicate verification of the connection relationship between the business process and the child process, for example, it can be Skill Start Connect; when the third command is received by the child process and it is determined based on the command type in the third command that the third command is used to indicate connection verification, a response message is sent to the business process; the response message is used to indicate that the connection verification between the child process and the business process has passed; a response message (such as Connect Successful) is received through the business process; at this time, the business process can determine that the connection status between it and the child process is normal, and can further execute the subsequent process of establishing a connection with the server.

[0094] In some embodiments, the format of the third command can be: *&%Skill Start Connect||xxx||xxx……%&*, where "*&%" is the start mark, "Skill start connect" is the corresponding command type, which is a first-level command type, "xxx" represents the field information carried by the command, which can be set based on needs, for example, it can be set to the PCB file version number, sending time, etc., and "%&*" is the end mark; different types of information are connected by "||" as the field information separator.

[0095] In some embodiments, the information in the third command can be in encryption mode, that is, encrypted based on a preset encryption algorithm. After receiving the third command in the encryption mode, the sub-process decrypts it based on the decryption logic corresponding to the preset encryption algorithm, and then performs subsequent operations based on the decrypted third command.

[0096] Step S202, when the subprocess of the terminal device determines, based on the command type in the first command, that the received first command is used to instruct to establish a communication connection, the address information of the terminal device is obtained, and a second command is generated based on the address information and the PCB file information;

[0097] In some embodiments, the address information of the terminal device includes at least one of the following: a device identifier of the terminal device, an IP address (Internet Protocol Address), a MAC address (Media Access Control Address), and a temporary ID (Identity document), etc. The information can be obtained from the terminal device by the child process.

[0098] In some embodiments, when the child process receives the first command and determines that it is used to establish a communication connection, the first command is parsed to obtain PCB file information from it, and the corresponding address information is obtained from the terminal device, and the second command is generated based on the PCB file information and the address information. When generating the second command, the command sending time can also be added to it, so that the server can determine whether the second command is valid based on the command sending time.

[0099] Step S203, the subprocess of the terminal device sends the second command to the server;

[0100] The second command is used to: instruct the server to register based on the address information and the PCB file information, and feed back the registration result to the sub-process;

[0101] In one possible implementation, when sending the second command, the sub-process needs to select the first port and the second port corresponding to the sub-process from the ports currently unused by the terminal device; send the second command to the server through the first port, and the second command also carries the identification information of the second port; and receive the registration result fed back by the server through the second port, and send the registration result to the business process.

[0102] In some embodiments, the child process needs to enable two unused ports on the terminal device for sending (i.e., the first port) and receiving (i.e., the second port) commands, and add the port number of the second port to the second command, and send the second command to the server through the TCP protocol; and monitor the registration results fed back by the server based on the second port.

[0103] In some embodiments, the address information of the server may be stored in the terminal device in advance, and the subprocess may send the second command to the server based on the address information; the address information may be the IP address and port number of the server.

[0104] Step S204: the server receives the second command, and registers based on the address information of the terminal device and the PCB file information carried in the second command;

[0105] In a possible implementation, registering based on the address information of the terminal device and the PCB file information carried in the second command specifically includes the following steps:

[0106] Querying PCB file information from the registration information stored in the database, and if the PCB file information is not found, storing the address information of the terminal device and the PCB file information in the database;

[0107] If the PCB file information is found, the reference address information corresponding to the PCB file information is obtained from the database, and the reference address information is compared with the address information of the terminal device;

[0108] If the comparison result is inconsistent, the address information of the terminal device and the PCB file information are stored in the database; if the comparison result is consistent, it is determined that the registration has failed.

[0109] In some embodiments, the server stores the registration information corresponding to the registered terminal device in the database, and after receiving the second command, parses it to obtain the PCB file information and address information, etc.; then, firstly query the PCB file information from the registration information, if it is not found, it proves that the registration has not been performed before, at this time, the address information and PCB file information, etc. are stored in the database, the registration is completed and the registration result is sent to the child process (the command type is registration success);

[0110] If found, the reference address information corresponding to the PCB file information is further obtained from the database. If the reference address information is inconsistent with the address information of the terminal device, it means that different terminal devices use the same PCB file information, and they are allowed to register. At this time, the address information and PCB file information are stored in the database, the registration is completed, and the registration result is sent to the child process (the command type is registration success);

[0111] If the reference address information found is consistent with the address information of the terminal device, it means that the terminal device has completed the relevant registration before, and it can be determined as a repeated registration or invalid information, etc., and the registration is rejected and the registration result is sent to the child process (the command type is registration failure).

[0112] In some embodiments, when sending the registration result to the child process, the sending address may be determined based on the address information parsed from the second command and the identification information of the second port.

[0113] Step S205, the server sends the registration result to the subprocess in the terminal device;

[0114] The registration result is used to indicate whether the communication connection of the terminal device is established successfully.

[0115] Step S206, the subprocess of the terminal device receives the registration result and sends the registration result to the associated service process;

[0116] Step S207: The service process of the terminal device determines whether the communication connection is successfully established based on the registration result.

[0117] In some embodiments, when the business process receives the registration result, it parses it. If the corresponding command type is a successful registration (such as All Connect Successful), it indicates that the communication connection is successfully established; if the corresponding command type is a failed registration (such as Server Connect Fail), it indicates that the communication connection fails to be established; at the same time, the result of the communication connection establishment is displayed to the user, and the process ends.

[0118] In the above method, the business process enables the sub-process and sends a first command carrying PCB file information to the sub-process. The sub-process obtains the address information of the terminal device and generates a second command based on the address information and the PCB file information, and sends it to the server. The server registers based on the second command and feeds back the registration result. Through this process, two-way communication between the Allegro software in the terminal device and the server is established, and further two-way communication between multiple Allegro software can be realized. Compared with the localized software design method inherent in the relevant technology, a smarter and more flexible communication method is realized; through this method, when optimizing the design of complex PCBs, the information transmission between designers and Layout personnel can be simplified, and the design efficiency of PCBs can be improved.

[0119] Figure 3 A schematic diagram of a communication establishment process provided in an embodiment of the present application is shown below in combination with Figure 3 The specific example shown in the figure is used to describe in detail the process of establishing a communication connection in this application. Figure 3 As shown, the process specifically includes:

[0120] Step S301: the terminal device detects that the user starts a Skill process (i.e., the above-mentioned business process) in the Allegro menu, and starts an intermediate process (i.e., the above-mentioned sub-process) through the Skill process;

[0121] Step S302, the Skill process sends a third command of the Skill Start Connect command type to the intermediate process;

[0122] In some embodiments, the third command is encrypted information, and its plain text format can be: *&%Skillstart connect||xxx||xxx……%&*, where *&% is the start mark, Skill start connect is the command type, which is a first-level command type, "xxx" represents the field information to be transmitted, which can be the PCB file version number, sending time, etc., %&* is the end mark, and "||" is the field information separator.

[0123] Step S303: The intermediate process parses the Skill Start Connect command type and sends a response message of the Connect Successful command type to the Skill process.

[0124] In some embodiments, the intermediate process decrypts the third command based on a preset method, and after parsing the third command to the SkillStart Connect command type, it can also record the field information carried in the third command for subsequent use. The command type Connect Successful carried in the above response message is used to indicate that the connection between the Skill process and the intermediate process is normal.

[0125] Step S304: The Skill process parses the command type as Connect Successful and sends the first command of the Skill Connect Server command type to the intermediate process;

[0126] Among them, the format of the first command may be similar to the format of the above-mentioned third command, and its field part at least includes PCB file information (PCB file name and PCB file version number) and command sending information time, etc., to set a unique label for the process.

[0127] Step S305, the intermediate process parses the Skill Connnect Server command type, obtains the address information of the terminal device, and generates a second command of the Through Connnect Server command type based on the PCB file information and the address information;

[0128] Among them, after parsing to store the Skill Connnect Server command type, the PCB file information and other information in the first command can also be stored for subsequent use.

[0129] In some embodiments, the above-mentioned address information includes the device identification, IP address, MAC address, temporary ID and other information of the terminal device; when generating the second command, the command sending time may also be added thereto.

[0130] Step S306, the intermediate process sends a second command of the Through Connect Server command type to the server;

[0131] In some embodiments, the intermediate process needs to enable two unused ports on the terminal device for sending (i.e., the first port) and receiving (i.e., the second port) commands, and add the port number of the second port to the second command, and send the second command to the server via the TCP protocol.

[0132] Step S307, after the server parses the Through Connect Server command type, it compares the PCB file information and address information with the stored registration information to determine the registration result;

[0133] In some embodiments, each time the server receives a new command, it parses the command, and when it determines that the command type is Through Connect Server, it starts the registration process; the above registration process is detailed in step S204 and will not be described in detail here.

[0134] The command types corresponding to the above registration results include two types: registration success (All Connect Successful) or registration failure (Server Connect Fail).

[0135] Step S308, the server sends the registration result to the intermediate process;

[0136] Step S309, the intermediate process forwards the registration result to the Skill process;

[0137] In some embodiments, after receiving the registration result through the second interface, the intermediate process parses it and when determining that the command type is registration success (All Connect Successful) or registration failure (Server Connect Fail), the registration result is transparently transmitted to the Skill process.

[0138] Step S310: The Skill process determines whether the communication connection is established successfully based on the registration result.

[0139] In some embodiments, the Skill process parses the registration result to determine whether the command type is All Connect Successful or Server Connect Fail. If it is All Connect Successful, it indicates that the communication connection is established successfully; if it is Server Connect Fail, it indicates that the communication connection fails to be established and notifies the user process.

[0140] In a possible implementation manner, in the embodiment of the present application, after the service process determines that the communication connection is successfully established based on the registration result, the following process is further performed:

[0141] The fourth command sent by the server is received through the subprocess, and the fourth command is sent to the business process; the fourth command carries the PCB guidance information, and the fourth command is: sent by the server to the subprocess based on the address information of the terminal device;

[0142] The corresponding task is executed based on the PCB guidance information in the fourth command through the business process.

[0143] In some embodiments, when the server sends the fourth command to the terminal device, it may be an automated operation triggered after the PCB file has completed the internal approval process, or it may be some PCB design optimization guidance files (i.e., PCB guidance information) provided by other functional departments. The server processes it, converts it into a format recognizable by Skill, and generates the fourth command.

[0144] In some embodiments, the format of the fourth command can be set based on demand, for example, it can be set to: *&%Server Task||Task Type||xxx||xxx……%&*, where "Server Task" is used to identify the command type (i.e., to identify the command as a task issuance command), which is a first-level command type, and "Task Type (optional)" is used to indicate the task type, which is a second-level command type. The specific type description can be set based on demand, and "xxx" is some information fields that may be included in the task type (such as PCB guidance information, etc.).

[0145] Optionally, the Task Type can be set to "Skill Commend", which indicates that a certain information field can be called by the Skill process through the stringToFunction function (a function provided by the Skill), converting the information field into a Skill command, and performing subsequent operations according to the Skill command. This method can realize command execution outside the Skill program solidification process, that is, hot update of the Skill process, etc.

[0146] After generating the fourth command, the server may send the fourth command to the sub-process of the terminal device based on the address information of the terminal device in the pre-stored registration information and the second port number of the sub-process, and the sub-process then executes the corresponding task.

[0147] Figure 4 A schematic diagram of a server command issuing process provided in an embodiment of the present application is shown below in combination with Figure 4 The specific example shown in the figure is used to describe in detail the process of issuing server tasks in this application. Figure 4 As shown, the process specifically includes:

[0148] Step S401, the server sends a fourth command of the Server Task command type to the second port of the terminal device;

[0149] Step S402: the intermediate process of the terminal device forwards the fourth command to the Skill process;

[0150] Among them, the intermediate process receives the fourth command based on the second port, and when it is parsed into the Server Task command type, it is forwarded to the Skill process after corresponding processing (optional); this application does not limit the processing process of the fourth command by the above-mentioned intermediate process, and can be set based on needs.

[0151] In step S403, the Skill process parses the fourth command, and after parsing it into a Server Task command type, automatically executes the corresponding task according to Task Type and related fields.

[0152] In a possible implementation manner, in the embodiment of the present application, after the business process determines that the communication connection is successfully established based on the registration result, when the business process has a need to upload information, the following process is further performed:

[0153] Sending a fifth command to the child process through the business process, wherein the fifth command carries the target file to be uploaded;

[0154] The fifth command information is parsed by a child process, and a sixth command is generated based on the address information of the target file and the terminal device obtained after the parsing;

[0155] The sixth command is sent to the server through the child process; the sixth command is used to instruct the server to execute a corresponding task based on the target file when it is determined that the address information in the sixth command matches the stored registration information.

[0156] In some embodiments, when the terminal device receives a data acquisition request from the server, or a local user has a need to upload information, a fifth command carrying the target file to be uploaded can be generated and sent to the server through a sub-process.

[0157] In some embodiments, the format of the fifth command can be set based on demand, for example, it can be set to: *&%Skill Send||Send Type||xxx||xxx……%&*, where "Skill Send" is used to identify the command type (i.e., identify that the command is for the terminal device to upload information), which is a first-level command type, and "Send Type (optional)" is used to indicate the information type, which is a second-level command type. The specific type description can be set based on demand, and "xxx" is some information fields that may be included in this information type (i.e., the target file).

[0158] In some embodiments, after receiving the fifth command, the subprocess parses the target file therefrom, generates a sixth command based on the target file and the address information, and sends it to the server; wherein the target file includes PCB file information; after receiving the sixth command, the server matches the address information and PCB file information therein with the stored registration information, and if they match, the data is stored, processed or replied according to the requirements of the target file.

[0159] Figure 5 A schematic diagram of an information uploading process provided in an embodiment of the present application is shown below in combination with Figure 5 The specific example shown in the figure is used to describe the process of uploading terminal device information in this application in detail. Figure 5 As shown, the process specifically includes:

[0160] Step S501, the Skill process sends a fifth command of the Skill Send command type to the intermediate process, and the fifth command carries a target file to be uploaded;

[0161] Step S502, after the intermediate process parses the Skill Send command type, a sixth command of the Through Send command type is constructed based on the target file and address information;

[0162] Step S503, the intermediate process sends a sixth command to the server;

[0163] Step S504, after the server parses the Through Send command type, it matches the address information and PCB file information with the stored registration information. After the match is successful, the data is stored, processed or replied according to the information type.

[0164] The present application embodiment provides a method for establishing a communication connection, which is applied to a terminal device installed with a target platform, such as Figure 6 As shown, the method specifically comprises the following steps:

[0165] Step S601, when it is determined that the communication establishment condition is met, a subprocess corresponding to the business process is enabled through the business process running in the target platform, and a first command is sent to the subprocess; the first command carries the corresponding command type and circuit board PCB file information;

[0166] Step S602, when determining through a subprocess based on a command type in the first command that the received first command is used to instruct to establish a communication connection, obtaining address information of the terminal device, and generating a second command based on the address information and the PCB file information;

[0167] Step S603, sending the second command to the server through the sub-process to instruct the server to register based on the address information and the PCB file information, and feeding back the registration result to the sub-process; and sending the received registration result to the business process through the sub-process;

[0168] Step S604: Determine whether the communication connection is established successfully based on the registration result through the business process.

[0169] The specific implementation process of the above-mentioned terminal device executing the communication connection establishment has been described in detail in steps S201-S207, which will not be repeated here.

[0170] The present application also provides a method for establishing a communication connection, which is applied to a server, such as Figure 7 As shown, the method specifically comprises the following steps:

[0171] Step S701, receiving a second command sent by a terminal device installed with a target platform, and registering based on the address information of the terminal device and the PCB file information carried in the second command; wherein the second command is generated by a subprocess in the terminal device when receiving the first command, the subprocess corresponds to the business process running in the target platform, and the first command is sent by the business process when it is determined that the communication establishment condition is met;

[0172] Step S702, sending the registration result to the sub-process in the terminal device; the registration result is used to indicate whether the communication connection of the terminal device is successfully established.

[0173] The specific implementation process of the above-mentioned server executing the communication connection establishment has been described in detail in steps S201-S207, which will not be repeated here.

[0174] Based on the same inventive concept, the present application also provides a communication connection establishment device, which is applied to a terminal device installed with a target platform, see Figure 8 , the device comprises:

[0175] The enabling module 801 is used to enable a subprocess corresponding to the business process through the business process running in the target platform when it is determined that the communication establishment condition is met, and send a first command to the subprocess; the first command carries the corresponding command type and circuit board PCB file information;

[0176] The command generation module 802 is used to determine through the sub-process based on the command type in the first command that the received first command is used to instruct to establish a communication connection, obtain the address information of the terminal device, and generate a second command based on the address information and the PCB file information;

[0177] The command sending module 803 is used to send the second command to the server through the sub-process to instruct the server to register based on the address information and PCB file information, and feed back the registration result to the sub-process; and send the received registration result to the business process through the sub-process;

[0178] The connection determination module 804 is used to determine whether the communication connection is successfully established based on the above registration result through the above business process.

[0179] In a possible implementation manner, the enabling module 801 is further configured to:

[0180] Sending a third command to the sub-process through the business process, where the third command carries a corresponding command type;

[0181] When the third command is received through the sub-process and it is determined based on the command type in the third command that the third command is used to instruct connection verification, a response message is sent to the business process; the response message is used to indicate that the connection verification between the sub-process and the business process has passed;

[0182] The business process receives the response message.

[0183] In a possible implementation manner, the first command also includes a command sending time, and the command generating module 802 is further configured to:

[0184] The subprocess determines that the time difference between the command sending time and the current time is within a preset time range.

[0185] In a possible implementation manner, the command sending module 803 is specifically configured to:

[0186] Selecting a first port and a second port corresponding to the subprocess from the currently unused ports of the terminal device;

[0187] Sending the second command to the server through the first port; the second command also carries identification information of the second port;

[0188] The registration result fed back by the server is received through the second port, and the registration result is sent to the business process.

[0189] In a possible implementation manner, the apparatus in the embodiment of the present application further includes a command processing module, which is specifically configured to:

[0190] receiving, through the sub-process, a fourth command sent by the server, and sending the fourth command to the business process; the fourth command carries PCB guidance information, and the fourth command is: sent by the server to the sub-process based on the address information of the terminal device;

[0191] The corresponding task is executed based on the PCB guidance information in the fourth command through the business process.

[0192] In a possible implementation manner, the device in the embodiment of the present application further includes an information uploading module, which is specifically used to:

[0193] When it is determined through the business process that there is a need to upload information, a fifth command is sent to the sub-process, wherein the fifth command carries the target file to be uploaded;

[0194] Parsing the fifth command information through the subprocess, and generating a sixth command based on the target file obtained after the parsing and the address information of the terminal device;

[0195] The sixth command is sent to the server through the sub-process; the sixth command is used to instruct the server to execute a corresponding task based on the target file when it is determined that the address information in the sixth command matches the stored registration information.

[0196] In a possible implementation manner, before sending the first command to the child process, the enabling module 801 is further configured to:

[0197] Encrypting the first command based on a preset encryption algorithm through a business process;

[0198] The command generation module 802 is further used to:

[0199] The received encrypted first command is decrypted by the sub-process based on a decryption logic corresponding to a preset encryption algorithm.

[0200] Based on the same inventive concept, the present application also provides another communication connection establishment device, which is applied to a server, see Fig. 9 , the device comprises:

[0201] The registration module 901 is used to receive a second command sent by a terminal device installed with a target platform, and register based on the address information of the terminal device and the PCB file information carried in the second command; the second command is generated by a subprocess in the terminal device when receiving the first command, the subprocess corresponds to the business process running in the target platform, and the first command is sent by the business process when it is determined that the communication establishment condition is met;

[0202] The result sending module 902 is used to send the registration result to the sub-process in the above-mentioned terminal device; the above-mentioned registration result is used to indicate whether the communication connection of the above-mentioned terminal device is successfully established.

[0203] Based on the same inventive concept, an electronic device is also provided in an embodiment of the present application, and the electronic device can implement the functions of the aforementioned communication connection establishment device, referring to Fig.10 , the electronic device comprises:

[0204] At least one processor 1001, and a memory 1002 connected to the at least one processor 1001. The specific connection medium between the processor 1001 and the memory 1002 is not limited in the embodiment of the present application. Fig.10 In the example, the processor 1001 and the memory 1002 are connected via the bus 1000. Fig.10 The connections between other components are shown in bold lines, and are not intended to be limiting. The bus 1000 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.10 Only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus. Alternatively, the processor 1001 can also be called a controller, and there is no limitation on the name.

[0205] In the embodiment of the present application, the memory 1002 stores instructions that can be executed by at least one processor 1001. The at least one processor 1001 can execute the communication connection establishment method discussed above by executing the instructions stored in the memory 1002. The processor 1001 can implement Figure 8 and 9 The functions of each module in the device shown.

[0206] Among them, processor 1001 is the control center of the device, and can use various interfaces and lines to connect various parts of the entire control device. By running or executing instructions stored in memory 1002 and calling data stored in memory 1002, various functions of the device and processing data, the device can be monitored as a whole.

[0207] In one possible design, the processor 1001 may include one or more processing units, and the processor 1001 may integrate an application processor and a modem processor, wherein the application processor mainly processes an operating system, a user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the modem processor may not be integrated into the processor 1001. In some embodiments, the processor 1001 and the memory 1002 may be implemented on the same chip, and in some embodiments, they may also be implemented separately on separate chips.

[0208] Processor 1001 can be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor, an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, and can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiments of the present application. A general-purpose processor can be a microprocessor or any conventional processor, etc. The steps of the communication connection establishment method disclosed in the embodiments of the present application can be directly embodied as a hardware processor execution, or a combination of hardware and software modules in the processor.

[0209] The memory 1002 is a non-volatile computer-readable storage medium that can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory 1002 may include at least one type of storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory, a random access memory (Random Access Memory, RAM), a static random access memory (Static Random Access Memory, SRAM), a programmable read-only memory (Programmable Read Only Memory, PROM), a read-only memory (Read Only Memory, ROM), an electrically erasable programmable read-only memory (Electrically Erasable Programmable Read-Only Memory, EEPROM), a magnetic memory, a disk, an optical disk, etc. The memory 1002 is any other medium that can be used to carry or store a desired program code in the form of an instruction or data structure and can be accessed by a computer, but is not limited thereto. The memory 1002 in the embodiment of the present application can also be a circuit or any other device that can realize a storage function, for storing program instructions and / or data.

[0210] By designing and programming the processor 1001, the code corresponding to the application anomaly detection method described in the above embodiment can be fixed into the chip, so that the chip can execute the code when running. Figure 2The steps of the communication connection establishment method of the embodiment shown are as follows: How to design and program the processor 1001 is a technology well known to those skilled in the art and will not be described in detail here.

[0211] An embodiment of the present application also provides a computer-readable storage medium that stores computer-executable instructions required to execute the above-mentioned processor, which includes a program for executing the above-mentioned processor.

[0212] In some possible implementations, various aspects of the communication connection establishment method provided in the present application may also be implemented in the form of a program product, which includes a program code. When the above-mentioned program product is run on an electronic device, the above-mentioned program code is used to enable the above-mentioned electronic device to execute the steps of the communication connection establishment method according to various exemplary embodiments of the present application described above in this specification.

[0213] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, devices, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0214] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (apparatus), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0215] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0216] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0217] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications falling within the scope of the present application.

[0218] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.

Claims

1. A method for establishing a communication connection, characterized in that: Applied to a terminal device installed with a target platform, the method comprises: When it is determined that the communication establishment condition is met, a subprocess corresponding to the business process is enabled through the business process running in the target platform, and a first command is sent to the subprocess; the first command carries the corresponding command type and circuit board PCB file information; When determining, through the subprocess based on the command type in the first command, that the received first command is used to instruct to establish a communication connection, acquiring address information of the terminal device, and generating a second command based on the address information and PCB file information; Sending the second command to the server through the sub-process to instruct the server to register based on the address information and the PCB file information, and feeding back the registration result to the sub-process; and sending the received registration result to the business process through the sub-process; Determine whether the communication connection is successfully established based on the registration result through the service process.

2. The method according to claim 1, characterized in that After enabling the sub-process corresponding to the business process and before sending the first command to the sub-process, the method further includes: Sending a third command to the sub-process through the business process, wherein the third command carries a corresponding command type; When the subprocess receives the third command and determines based on the command type in the third command that the third command is used to instruct to perform a connection check, a response message is sent to the business process; the response message is used to indicate that the connection check between the subprocess and the business process has passed; The service process receives the response message.

3. The method according to claim 1, characterized in that The first command also includes a command sending time. Before acquiring the address information of the terminal device, the method further includes: The sub-process determines that the time difference between the command sending time and the current time is within a preset time range.

4. The method according to claim 1, characterized in that: The sending the second command to the server and sending the received registration result to the business process includes: Selecting a first port and a second port corresponding to the subprocess from ports currently not in use by the terminal device; sending the second command to the server through the first port; the second command also carries identification information of the second port; The registration result fed back by the server is received through the second port, and the registration result is sent to the business process.

5. The method according to any one of claims 1 to 4, characterized in that: After determining that the communication connection is successfully established based on the registration result through the service process, the method further includes: receiving, through the sub-process, a fourth command sent by the server, and sending the fourth command to the service process; the fourth command carries PCB guidance information, and the fourth command is: sent by the server to the sub-process based on the address information of the terminal device; The corresponding task is executed through the business process based on the PCB guidance information in the fourth command.

6. The method according to any one of claims 1 to 4, characterized in that: After determining that the communication connection is successfully established based on the registration result through the service process, the method further includes: When it is determined through the business process that there is a need to upload information, a fifth command is sent to the subprocess, wherein the fifth command carries a target file to be uploaded; Parsing the fifth command information through the subprocess, and generating a sixth command based on the target file obtained after the parsing and the address information of the terminal device; The sixth command is sent to the server through the subprocess; the sixth command is used to instruct the server to execute a corresponding task based on the target file when it is determined that the address information in the sixth command matches the stored registration information.

7. The method according to any one of claims 1 to 4, characterized in that: Before sending the first command to the child process, the method further includes: Encrypting the first command based on a preset encryption algorithm through the business process; Before determining, by the subprocess based on the command type in the first command, that the received first command is used to instruct to establish a communication connection, the method further includes: The received encrypted first command is decrypted by the sub-process based on a decryption logic corresponding to the preset encryption algorithm.

8. A method for establishing a communication connection, characterized in that: Applied to a server, the method comprises: Receive a second command sent by a terminal device installed with a target platform, and register based on the address information and PCB file information of the terminal device carried in the second command; the second command is generated by a subprocess in the terminal device when receiving the first command, the subprocess corresponds to the service process running in the target platform, and the first command is sent by the service process when it is determined that the communication establishment condition is met; The registration result is sent to the subprocess in the terminal device; the registration result is used to indicate whether the communication connection of the terminal device is successfully established.

9. An electronic device, characterized in that: include: Memory, used to store computer programs; A processor, configured to implement the method according to any one of claims 1 to 8 when executing a computer program stored in the memory.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.

Citation Information

Patent Citations

  • Safety communication system

    CN104580189A

  • Multi-process processing method and device, terminal equipment and computer readable storage medium

    CN110413386A

  • File sharing method, communication device and storage medium

    CN111953714A

  • Service registration method and device

    CN112671913A

  • Allegro netlist conversion method and device, electronic equipment and program product

    CN118607424A