Intercom terminal and intercom method

Through the intercom terminal with dual controller and single network architecture, the slave controller is used to detect the status of the main controller and switch the data stream, which solves the communication interruption problem when the main controller is abnormal and realizes stable and continuous communication of the intercom terminal.

CN119299884BActive Publication Date: 2025-10-03HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411814965.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-10
Publication Date
2025-10-03
Estimated Expiration
2044-12-10

AI Technical Summary

Technical Problem

Existing intercom terminals cannot achieve real-time communication with external devices when the main controller is abnormal, resulting in security risks in the management area and poor user experience.

Method used

It adopts a dual-controller single network architecture, detects the working status of the main controller by the slave controller, and switches the working status of the data flow switching module in case of abnormality, ensuring the continuity and stability of communication.

Benefits of technology

When the main controller is abnormal, normal communication with external devices is achieved through the slave controller, avoiding communication interruption, improving user experience, and maintaining the stability and consistency of the intercom terminal.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119299884B_ABST
    Figure CN119299884B_ABST
Patent Text Reader

Abstract

The present application discloses an intercom terminal and an intercom method, which relate to the field of intercom technology. The intercom terminal is used in a dual-controller single network mode. When an abnormality occurs in the main controller, the intercom function is realized by the slave controller to ensure normal communication between the intercom terminal and the external device. The intercom terminal includes: in a first working state, a data stream switching module is used to transmit the data stream from the external device to the main controller, and is used to send the data stream generated by the main controller to the external device; the slave controller is used to detect the working state of the main controller based on the message transmission between the slave controller and the main controller; when the data stream switching module is in the first working state, the slave controller is also used to respond to detecting that the main controller is in an abnormal working state, instruct the data stream switching module to switch from the first working state to the second working state, and communicate with the external device based on the same intercom parameters as in the main controller.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of intercom technology, and in particular to an intercom terminal and an intercom method. Background Art

[0002] With the development of communication technology, intercom technology has continued to mature. People can not only make voice calls through intercom terminals, but also make video calls. They can also configure alarm devices to achieve security management of the management area.

[0003] Different application scenarios require different functionalities from intercom terminals. To meet the specific needs of certain scenarios, new intercom terminal functions require dedicated R&D personnel to research and develop. This requires the intercom terminal to meet users' needs for installing the corresponding service installation packages for different new functions. Therefore, intercom terminals are commonly used to run operating systems that facilitate the installation of service installation packages for new functions, such as Android. However, such operating systems can be unstable and often experience abnormal issues such as freezing, freezing, and restarting.

[0004] In some scenarios where real-time intercom is required to ensure the safety of the management area, if the intercom terminal system fails, even if it causes the intercom terminal to be unable to achieve real-time intercom with external devices for a short period of time, it may cause immeasurable catastrophic consequences to the safety of the management area.

[0005] Therefore, a need exists for an intercom terminal that can more stably implement real-time intercom with external equipment. Summary of the Invention

[0006] The present application provides an intercom terminal and an intercom method, which are used in a dual-controller single network manner. When an abnormality occurs in the main controller, the intercom function is implemented by the slave controller to ensure normal communication between the intercom terminal and external devices.

[0007] To achieve the above technical objectives, this application adopts the following technical solutions:

[0008] In a first aspect, an embodiment of the present application provides an intercom terminal, including:

[0009] A master controller for running a first intercom function system, a slave controller for running a second intercom function system, and a data stream switching module;

[0010] The master controller and the slave controller communicate with the external device respectively through the data stream switching module; the data stream switching module supports a first working state and a second working state; in the first working state, the data stream switching module is used to transmit the data stream from the external device to the master controller, and to send the data stream generated by the master controller to the external device; in the second working state, the data stream switching module is used to transmit the data stream from the external device to the slave controller, and to send the data stream generated by the slave controller to the external device;

[0011] Messages are transmitted between the master controller and the slave controller via a preset communication method; the slave controller is used to detect the working status of the master controller based on the message transmission between it and the master controller; when the data stream switching module is in the first working state, the slave controller is also used to respond to detecting that the master controller is in an abnormal working state, instruct the data stream switching module to switch from the first working state to the second working state, and communicate with the external device based on the same intercom parameters as those in the master controller.

[0012] The technical solution provided by the present application brings at least the following beneficial effects: the intercom terminal provided by the present application includes a master controller and a slave controller. When the master controller is operating normally, normal communication between the intercom terminal and the external device can be achieved. The slave controller continuously detects the operating status of the master controller based on the message transmission between the master controller and the slave controller. When the master controller is operating abnormally, the slave controller promptly controls the data stream switching module to switch from a first operating state to a second operating state, transmits the data stream from the external device to the slave controller, and the slave controller implements the intercom function of the intercom terminal. That is, the intercom terminal can achieve normal communication with the external device through the slave controller when the master controller is operating abnormally. In this way, it can avoid the intercom terminal of one controller being unable to communicate with the external device when the controller is abnormal, which affects the user experience. In addition, the intercom parameters in the slave controller are the same as the intercom parameters in the master controller. The master controller and the slave controller use the same set of intercom parameters. Even if the intercom terminal switches between the first intercom function system and the second intercom function system, it still appears to the external device as one intercom terminal, which facilitates user management of the intercom terminal.

[0013] In one possible implementation, the slave controller is used to detect the working status of the main controller based on the message transmission between it and the main controller, including: regularly sending heartbeat detection messages to the main controller; receiving a heartbeat response message sent by the main controller within a preset time after sending the heartbeat detection message, and determining that the main controller is in a normal working state; or, not receiving a heartbeat response message sent by the main controller within a preset time after sending the heartbeat detection message, and determining that the main controller is in an abnormal working state.

[0014] In one possible implementation, the master controller is further configured to: in response to receiving a heartbeat detection message sent by the slave controller, send a heartbeat response message carrying the latest intercom parameters in the master controller to the slave controller; the slave controller is further configured to: in response to receiving a heartbeat response message sent by the master controller, obtain the intercom parameters from the heartbeat response message; if the intercom parameters carried in the heartbeat response message are different from the intercom parameters already in the slave controller, update the intercom parameters already in the slave controller to the intercom parameters carried in the heartbeat response message.

[0015] In one possible implementation, the master controller is further configured to send a heartbeat response message carrying the latest intercom parameters in the master controller to the slave controller if the intercom parameters in the master controller are updated relative to the last time a heartbeat detection message was received; the slave controller is further configured to, in response to receiving a heartbeat response message sent by the master controller, update the existing intercom parameters in the slave controller to the intercom parameters carried in the heartbeat response message if the heartbeat response message carries the intercom parameters.

[0016] In one possible implementation, the main controller is also used to: obtain an upgrade package for the intercom function system; determine whether the intercom function system upgrade package includes an upgrade package for the second intercom function system; if included, send a network upgrade request message to the slave controller, and the network upgrade request message carries the upgrade package for the second intercom function system; the slave controller is also used to: in response to receiving the network upgrade request message sent by the main controller, upgrade the second intercom function system based on the upgrade package of the second intercom function system; after the upgrade of the second intercom function system is completed, send a network upgrade response message to the main controller and restart the second intercom function system; the main controller is also used to restart the first intercom function system after receiving the network upgrade response message sent by the slave controller and completing the upgrade of the first intercom function system.

[0017] In one possible implementation, the main controller is connected to the first button, and the slave controller is connected to the second button, where the second button is a physical button; the main controller is also used to, when the main controller is in normal working condition, in response to detecting a user triggering operation on the first button, send a call request to the intercom network, which is the network to which the intercom terminal is currently connected; the slave controller is also used to, in response to detecting a user triggering operation on the second button, send a call request to the intercom network if the main controller is in an abnormal working condition.

[0018] In one possible implementation, the slave controller is further used to, in response to detecting a user triggering operation on the second button, if the main controller is in normal working state, send a button status message to the main controller, wherein the button status message is used to indicate that the second button is triggered; the main controller is used to, in response to receiving the button status message sent by the slave controller, issue a call request to the intercom network to communicate with other devices in the intercom network; the main controller is also used to send a button status response message to the slave controller to notify the slave controller that the call request has been initiated; or, the slave controller is also used to, in response to detecting a user triggering operation on the second button, if the main controller is in normal working state, issue a call request to the intercom network and forward the call request to the main controller; the main controller is also used to receive the call request forwarded by the slave controller to communicate with other devices in the intercom network.

[0019] In one possible implementation, the slave controller is used to instruct the data flow switching module to switch from a first working state to a second working state in response to detecting that the master controller is in an abnormal working state, including: when the data flow switching module is in the first working state, in response to detecting that the master controller is in an abnormal working state, sending first control information and second control information to the data flow switching module, so that the data flow switching module switches from the first working state to the second working state; or, when the data flow switching module is in the first working state, in response to detecting that the master controller is in an abnormal working state, sending first control information to the data flow switching module and opening the connection port between the slave controller and the data flow switching module, so that the data flow switching module switches from the first working state to the second working state; wherein the first control information is used to instruct the data flow switching module to close the connection port between the data flow switching module and the master controller, and the second control information is used to instruct the data flow switching module to open the connection port between the data flow switching module and the slave controller.

[0020] In some possible implementations, the slave controller is further used to: continue to detect the working state of the master controller after the data flow switching module switches to the second working state; in response to detecting that the master controller resumes normal working state, instruct the data flow switching module to switch from the second working state to the first working state; the slave controller is used to instruct the data flow switching module to switch from the second working state to the first working state in response to detecting that the master controller resumes normal working state, including: in response to detecting that the master controller resumes normal working state, closing the connection port between the slave controller and the data flow switching module, and sending third control information to the data flow switching module to switch the data flow switching module from the second working state to the first working state; or, in response to detecting that the master controller resumes normal working state, sending third control information and fourth control information to the data flow switching module to switch the data flow switching module from the second working state to the first working state; wherein the third control information is used to instruct the data flow switching module to open the connection port between the data flow switching module and the master controller, and the fourth control information is used to instruct the data flow switching module to close the connection port between the data flow switching module and the slave controller.

[0021] In a second aspect, the present application provides an intercom method, which is applied to an intercom terminal, and the intercom terminal includes:

[0022] A master controller for operating the first intercom function system, a slave controller for operating the second intercom function system, and a data stream switching module. The master controller and the slave controller communicate with external devices through the data stream switching module respectively; messages are transmitted between the master controller and the slave controller through a preset communication method;

[0023] The method includes:

[0024] The slave controller detects the working status of the master controller based on the message transmission between it and the master controller;

[0025] When the data stream switching module is in a first working state, the slave controller, in response to detecting that the master controller is in an abnormal working state, instructs the data stream switching module to switch from the first working state to a second working state; wherein, in the first working state, the data stream switching module is used to transmit the data stream from the external device to the master controller, and to send the data stream generated by the master controller to the external device; and in the second working state, the data stream switching module is used to transmit the data stream from the external device to the slave controller, and to send the data stream generated by the slave controller to the external device;

[0026] The slave controller communicates with the external device based on the same intercom parameters as the master controller.

[0027] In one possible implementation, the slave controller detects the working status of the main controller based on the message transmission between the slave controller and the main controller, including: the slave controller periodically sends a heartbeat detection message to the main controller; the slave controller receives a heartbeat response message sent by the main controller within a preset time after sending the heartbeat detection message, and determines that the main controller is in a normal working state; or, the slave controller does not receive a heartbeat response message sent by the main controller within a preset time after sending the heartbeat detection message, and determines that the main controller is in an abnormal working state.

[0028] In one possible implementation, the method further includes: the master controller, in response to receiving a heartbeat detection message sent by the slave controller, sends a heartbeat response message carrying the latest intercom parameters in the master controller to the slave controller; the slave controller, in response to receiving a heartbeat response message sent by the master controller, obtains the intercom parameters from the heartbeat response message; if the intercom parameters carried in the heartbeat response message are different from the intercom parameters already in the slave controller, the slave controller updates the intercom parameters already in the slave controller to the intercom parameters carried in the heartbeat response message.

[0029] In one possible implementation, the method further includes: if the intercom parameters in the master controller are updated relative to the last time a heartbeat detection message was received, the master controller sends a heartbeat response message carrying the latest intercom parameters in the master controller to the slave controller; in response to receiving the heartbeat response message sent by the master controller, if the heartbeat response message carries the intercom parameters, the slave controller updates the existing intercom parameters in the slave controller to the intercom parameters carried in the heartbeat response message.

[0030] In one possible implementation, the method also includes: the main controller obtains an intercom function system upgrade package; the main controller determines whether the intercom function system upgrade package includes an upgrade package for the second intercom function system; if included, the main controller sends a network upgrade request message to the slave controller, and the network upgrade request message carries the upgrade package for the second intercom function system; the slave controller upgrades the second intercom function system based on the upgrade package for the second intercom function system in response to receiving the network upgrade request message sent by the main controller; after the upgrade of the second intercom function system is completed, the slave controller sends a network upgrade response message to the main controller and restarts the second intercom function system; after receiving the network upgrade response message sent by the slave controller and completing the upgrade of the first intercom function system, the main controller restarts the first intercom function system.

[0031] In one possible implementation, the main controller is connected to the first button, and the slave controller is connected to the second button, and the second button is a physical button; the method also includes: when the main controller is in a normal working state, the main controller responds to detecting the user's trigger operation on the first button and sends a call request to the intercom network, and the intercom network is the network currently connected to the intercom terminal; in response to detecting the user's trigger operation on the second button, if the main controller is in an abnormal working state, the slave controller sends a call request to the intercom network.

[0032] In one possible implementation, the method further includes: in response to detecting a user triggering operation on the second button, the slave controller sends a button status message to the master controller if the master controller is in normal working state, wherein the button status message is used to indicate that the second button is triggered; in response to receiving the button status message sent by the slave controller, the master controller sends a call request to the intercom network to communicate with other devices in the intercom network; the master controller sends a button status response message to the slave controller to notify the slave controller that the call request has been initiated; or, in response to detecting a user triggering operation on the second button, the slave controller sends a call request to the intercom network and forwards the call request to the master controller if the master controller is in normal working state; the master controller receives the call request forwarded by the slave controller to communicate with other devices in the intercom network.

[0033] In one possible implementation, the slave controller, in response to detecting that the master controller is in an abnormal working state, instructs the data flow switching module to switch from a first working state to a second working state, including: when the data flow switching module is in the first working state, the slave controller, in response to detecting that the master controller is in an abnormal working state, sends first control information and second control information to the data flow switching module, so that the data flow switching module switches from the first working state to the second working state; or, when the data flow switching module is in the first working state, the slave controller, in response to detecting that the master controller is in an abnormal working state, sends first control information to the data flow switching module, and opens the connection port between the slave controller and the data flow switching module, so that the data flow switching module switches from the first working state to the second working state; wherein the first control information is used to instruct the data flow switching module to close the connection port between the data flow switching module and the master controller, and the second control information is used to instruct the data flow switching module to open the connection port between the data flow switching module and the slave controller.

[0034] In one possible implementation, the method further includes: after the data flow switching module switches to the second working state, the slave controller continues to detect the working state of the master controller; in response to detecting that the master controller has resumed normal working state, the slave controller instructs the data flow switching module to switch from the second working state to the first working state; in response to detecting that the master controller has resumed normal working state, the slave controller instructs the data flow switching module to switch from the second working state to the first working state, including: in response to detecting that the master controller has resumed normal working state, the slave controller closes the connection port between the slave controller and the data flow switching module, and sends third control information to the data flow switching module to switch the data flow switching module from the second working state to the first working state; or, in response to detecting that the master controller has resumed normal working state, the slave controller sends third control information and fourth control information to the data flow switching module to switch the data flow switching module from the second working state to the first working state; wherein the third control information is used to instruct the data flow switching module to open the connection port between the data flow switching module and the master controller, and the fourth control information is used to instruct the data flow switching module to close the connection port between the data flow switching module and the slave controller.

[0035] For the specific description of the second aspect and its various implementations in this application, reference can be made to the detailed description of the first aspect and its various implementations; and for the beneficial effects of the second aspect and its various implementations, reference can be made to the analysis of the beneficial effects of the first aspect and its various implementations, which will not be repeated here.

[0036] These and other aspects of the present application will become more readily apparent from the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0037] Figure 1 A schematic diagram of the structure of an intercom system provided in an embodiment of the present application;

[0038] Figure 2 Schematic diagram of the application logic of an intercom device provided in an embodiment of the present application Figure 1 ;

[0039] Figure 3 A schematic diagram of a use scenario of an intercom device provided in an embodiment of the present application Figure 1 ;

[0040] Figure 4 Schematic diagram of the application logic of an intercom device provided in an embodiment of the present application Figure 2 ;

[0041] Figure 5 A schematic diagram of a use scenario of an intercom device provided in an embodiment of the present application Figure 2 ;

[0042] Figure 6 Schematic diagram of the application logic of an intercom device provided in an embodiment of the present application Figure 3 ;

[0043] Figure 7 Schematic diagram of the application logic of an intercom device provided in an embodiment of the present application Figure 4 ;

[0044] Figure 8 Schematic diagram of the application logic of an intercom device provided in an embodiment of the present application Figure 5 ;

[0045] Figure 9 A schematic diagram of a use scenario of an intercom device provided in an embodiment of the present application Figure 3 ;

[0046] Figure 10 Schematic diagram of the application logic of an intercom device provided in an embodiment of the present application Figure 6 ;

[0047] Figure 11 A schematic diagram of a use scenario of an intercom device provided in an embodiment of the present application Figure 4 ;

[0048] Figure 12 A schematic diagram of a use scenario of an intercom device provided in an embodiment of the present application Figure 5 ;

[0049] Figure 13 A schematic diagram of the hardware composition of a computing device provided in an embodiment of the present application;

[0050] Figure 14 A flowchart of an intercom method provided in an embodiment of the present application. DETAILED DESCRIPTION

[0051] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0052] It should be noted that, in the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design scheme described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or design schemes. To be precise, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete way. The terms "first" and "second" are used for descriptive purposes only and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first" and "second" may explicitly or implicitly include one or more of the features. In the description of the present application, unless otherwise specified, "multiple" means two or more.

[0053] With the development of communication technology, intercom technology has continued to mature. People can not only make voice calls through intercom terminals, but also make video calls. They can also configure alarm devices to achieve security management of the management area.

[0054] Different application scenarios require different functionalities from intercom terminals. To meet the specific needs of certain scenarios, new intercom terminal functions require dedicated R&D personnel to research and develop. This requires the intercom terminal to meet users' needs for installing the corresponding service installation packages for different new functions. Therefore, intercom terminals are commonly used to run operating systems that facilitate the installation of service installation packages for new functions, such as Android. However, such operating systems can be unstable and often experience abnormal issues such as freezing, freezing, and restarting.

[0055] In some scenarios where real-time intercom is required to ensure the safety of the management area, if the intercom terminal system fails, even if it causes the intercom terminal to be unable to achieve real-time intercom with external devices for a short period of time, it may cause immeasurable catastrophic consequences to the safety of the management area.

[0056] Therefore, a need exists for an intercom terminal that can more stably implement real-time intercom with external equipment.

[0057] In this regard, an embodiment of the present application provides an intercom terminal. The intercom terminal provided by the present application includes a master controller and a slave controller. When the master controller is operating normally, normal communication between the intercom terminal and external devices can be achieved. The slave controller continuously detects the operating status of the master controller based on the message transmission between the master controller and the slave controller. When the master controller is operating abnormally, the slave controller promptly controls the data stream switching module to switch from a first operating state to a second operating state, transmitting the data stream from the external device to the slave controller, and the slave controller implements the intercom function of the intercom terminal. That is, the intercom terminal can achieve normal communication with the external device through the slave controller when the master controller is operating abnormally. In this way, it can avoid the intercom terminal of one controller being unable to communicate with the external device when the controller is abnormal, which affects the user experience. In addition, the intercom parameters in the slave controller are the same as the intercom parameters in the master controller. The master controller and the slave controller use the same set of intercom parameters. Even if the intercom terminal switches between the first intercom function system and the second intercom function system, it still appears to the external device as a single intercom terminal, which facilitates user management of the intercom terminal.

[0058] Please refer to Figure 1 , which shows an intercom system applicable to an intercom terminal provided by this application. Figure 1 As shown, the intercom system 1 includes: a plurality of intercom terminals 10 and at least one intercom server 20 .

[0059] Among them, a communication connection is established between the intercom terminal 10 and the intercom server 20. It should be understood that the connection method can be a wireless connection, such as a Bluetooth connection, a wireless fidelity (Wi-Fi) connection, etc.; or the connection method can also be a wired connection, such as an optical fiber connection, an Ethernet connection, a universal serial bus (USB), a high-speed serial computer expansion bus (Peripheral Component Interconnect Express, PCIE), a serial peripheral interface (SPI), an integrated circuit bus (ICB), etc. 2 C), universal asynchronous receiver / transmitter (URAT), etc., without limitation. In practical applications, for security and stability reasons, the intercom terminal 10 and the intercom server 20 can establish a communication connection via a wired connection. For example, the intercom terminal 10 is equipped with an RJ45 network interface, and the intercom terminal 10 can then establish a communication connection with the intercom server 20 via a network cable based on the RJ45 network interface.

[0060] In some embodiments, the intercom terminal 10 includes: a main controller 101 for running a first intercom function system, a slave controller 102 for running a second intercom function system, and a data stream switching module 103. The main controller 101 and the slave controller 102 respectively communicate with external devices through the data stream switching module 103; the data stream switching module 103 supports a first working state and a second working state; in the first working state, the data stream switching module 103 is used to transmit a data stream from an external device to the main controller 101, and to send a data stream generated by the main controller 101 to an external device; in the second working state, the data stream switching module 103 is used to transmit a data stream from an external device to the slave controller 102, and to send a data stream generated by the slave controller 102 to an external device.

[0061] Among them, a communication connection is established between the master controller 101 and the slave controller 102. The specific mode of the communication connection can be a wireless connection or a wired connection, which is not specifically limited in this application. In actual application, for considerations such as security, stability, and construction cost, the master controller 101 and the slave controller 102 can be set to communicate and interact through any low-speed communication method, such as USB, UART, RS485, etc.

[0062] In some embodiments, the master controller 101 and the slave controller 102 transmit messages via a preset communication method, and the slave controller 102 is configured to detect the operating status of the master controller 101 based on the message transmission status between the slave controller 102 and the master controller 101. When the data stream switching module 103 is in the first operating state, the slave controller 102 is further configured to, in response to detecting that the master controller 101 is in an abnormal operating state, instruct the data stream switching module 103 to switch from the first operating state to the second operating state, and communicate with the external device based on the same intercom parameters as those in the master controller 101. After the data stream switching module 103 switches to the second operating state, the slave controller 102 continues to detect the operating status of the master controller 101; in response to detecting that the master controller 101 has resumed normal operating state, the slave controller instructs the data stream switching module 103 to switch from the second operating state to the first operating state.

[0063] Specifically, the data flow switching module 103 includes a connection port between the main controller 101 and a connection port between the main controller 101 and the slave controller 102. The slave controller 102 controls the switching of the working state of the data flow switching module 103 by controlling the opening and closing of these connection ports on the data flow switching module 103, or the opening and closing of the connection port on the slave controller connected to the data flow switching module 103.

[0064] The slave controller 102 controls the data stream switching module 103 to switch from the first working state to the second working state in the following two implementations: ① When the data stream switching module 103 is in the first working state, the slave controller 102, in response to detecting that the master controller 101 is in an abnormal working state, sends first control information and second control information to the data stream switching module 103, so that the data stream switching module 103 switches from the first working state to the second working state. ② When the data stream switching module 103 is in the first working state, the slave controller 102, in response to detecting that the master controller 101 is in an abnormal working state, sends first control information to the data stream switching module 103 and opens the connection port between the slave controller 102 and the data stream switching module 103, so that the data stream switching module 103 switches from the first working state to the second working state. The first control information is used to instruct the data flow switching module 103 to close the connection port between the data flow switching module 103 and the main controller 101, and the second control information is used to instruct the data flow switching module 103 to open the connection port between the data flow switching module 103 and the slave controller 102.

[0065] The slave controller 102 controls the data stream switching module 103 to switch from the second working state to the first working state, and there are two implementation methods: ① In response to detecting that the master controller 101 has resumed normal working state, the slave controller 102 closes the connection port between the slave controller 102 and the data stream switching module 103, and sends a third control message to the data stream switching module 103, so that the data stream switching module 103 switches from the second working state to the first working state. ② In response to detecting that the master controller 101 has resumed normal working state, the slave controller 102 sends a third control message and a fourth control message to the data stream switching module 103, so that the data stream switching module 103 switches from the second working state to the first working state. The third control message is used to instruct the data stream switching module 103 to open the connection port between the data stream switching module 103 and the master controller 101, and the fourth control message is used to instruct the data stream switching module 103 to close the connection port between the data stream switching module 103 and the slave controller 102.

[0066] In practical applications, the data flow switching module can specifically be implemented as a switch data switching integrated circuit. The data flow switching module 103 should include at least three connection ports: one for connecting to the master controller 101 running the first intercom function system, one for connecting to the slave controller 102 running the second intercom function system, and one for connecting to a connection port on the intercom terminal 10. The connection port on the intercom terminal 10 is used to establish a communication connection with the intercom server 20. In this way, the data flow switching module 103 can receive intercom data sent by external devices and also forward intercom data from the intercom terminal 10 to external devices.

[0067] In some embodiments, the slave controller 102 may include three connection ports, one connection port (such as a UART serial port) is used to establish a communication connection with the main controller 101, and the slave controller 102 realizes message transmission between the main controller 101 and the main controller 101 through this connection port; one connection port (such as an MDIO serial port) is used to establish a communication connection with the data stream switching module 103, and the slave controller 102 sends control information (first control information, second control information, third control information or fourth control information) to the data stream switching module 103 through this connection port; and another connection port (such as an Ethernet serial port) is also used to establish a communication connection with the data stream switching module 103, and the slave controller 102 and the data stream switching module 103 send intercom data to each other through this connection port.

[0068] In some embodiments, the master controller 101 may include two connection ports, one connection port (such as a UART serial port) is used to establish a communication connection with the slave controller 102, and the master controller 101 realizes message transmission between the slave controller 102 through this connection port; the other connection port (such as an Ethernet serial port) is used to establish a communication connection with the data stream switching module 103, and the master controller 101 and the data stream switching module 103 send intercom data to each other through this connection port.

[0069] In some embodiments, the first intercom function system running on the master controller 101 and the second intercom function system running on the slave controller 102 can be completely identical. In actual applications, if the user only requires the intercom terminal 10 to implement a real-time voice intercom function, the second intercom function system running on the slave controller 102 only needs to implement the voice intercom function. As an example, if the user wishes that the slave controller 102 can also implement the same functions as the master controller 101 when the master controller 101 malfunctions, the first intercom function system is an Android system running on the A2S platform, and the second intercom function system is also an Android system running on the A2S platform. Both intercom function systems can support not only voice intercom functions, but also video intercom functions, text message intercom functions, etc. In this case, both the master controller 101 and the slave controller 102 in the intercom terminal 10 are central processing units that can support the A2S platform. As another example, the user hopes that when the main controller 101 is abnormal, the slave controller 102 can only ensure the realization of the voice intercom function. The first intercom function system is an Android system running on the A2S platform, which can support a variety of intercom functions including the voice intercom function. The second intercom function system can be a Linux system running on the B2 platform, which can support the voice intercom function. The main controller 101 is a central processing unit that can support the A2S platform, and the slave controller 102 is a central processing unit that can support the B2 platform.

[0070] In some embodiments, the intercom terminal 10 can realize the intercom function of one-click calling. The intercom terminal 10 is pre-configured with the contact party. When the user triggers the intercom function of one-click calling of the intercom terminal 10, the controller in the intercom terminal 10 initiates a call request to the contact party pre-configured in the intercom network.

[0071] In some embodiments, the intercom terminal 10 may include a first button connected to the main controller 101. The first button may be a virtual button or a physical button. When the intercom terminal 10 includes a touch panel type device, the first button may be set as a virtual button. The virtual button is set in the touch panel. When the main controller 101 is abnormal, the virtual button is unavailable, or the virtual button is available but the intercom function of the first intercom function system cannot be called. The intercom terminal 10 may also be provided with a second button connected to the slave controller 102. The second button is a physical button. Both the first button and the second button can realize the intercom function of one-touch calling. When the main controller 101 is operating normally, the user can instruct the main controller 101 to initiate a call request and communicate with the external device by touching the virtual button or the physical button. When the main controller 101 is abnormal, the user can instruct the slave controller 102 to initiate a call request and communicate with the external device by using the physical button.

[0072] Specifically, the main controller 101 is also used to, when the main controller 101 is in a normal working state, in response to detecting a user triggering operation on the first button, send a call request to the intercom network, which is the network to which the intercom terminal 10 is currently connected; the slave controller 102 is also used to, in response to detecting a user triggering operation on the second button, send a call request to the intercom network if the main controller 101 is in an abnormal working state.

[0073] The slave controller 102 is further configured to, in response to detecting a user triggering operation on the second button, send a button status message to the master controller 101 if the master controller 101 is in normal working state, where the button status message is used to indicate that the second button is triggered; the master controller 101 is configured to, in response to receiving the button status message sent by the slave controller 102, send a call request to the intercom network to communicate with other devices in the intercom network; the master controller 101 is further configured to send a button status response message to the slave controller 102 to notify the slave controller 102 that the call request has been initiated; or, the slave controller 102 is further configured to, in response to detecting a user triggering operation on the second button, send a call request to the intercom network and forward the call request to the master controller 101 if the master controller 101 is in normal working state; the master controller 101 is further configured to receive the call request forwarded by the slave controller 102 to communicate with other devices in the intercom network.

[0074] For example, when the master controller 101 is operating normally, if a user clicks a virtual button, the master controller 101 directly issues a call request to a pre-configured contact in the intercom network. For another example, if the master controller 101 fails and the slave controller 102 is responsible for connecting to an external device, a user can click a second button to trigger the slave controller 102 to issue a call request to a pre-configured contact in the intercom network. For another example, if the master controller 101 is operating normally, assuming that the master controller 101 is a CPU supporting the A2S platform and the Android system on the A2S platform is running normally, the master controller 101 can implement video preview, video intercom, and other daily management functions. The slave controller 102 is a CPU supporting the B2 platform and can only implement voice intercom functions. When the slave controller 102 detects a change in the state of a physical button, it writes the physical button state change into a key status message and sends it to the master controller 101 via UART. Ultimately, the master controller 101 issues a call request to a pre-configured contact in the intercom network. For example, when the main controller 101 is working normally, the user clicks the physical button connected to the slave controller 102, and the slave controller 102 sends a call request to the pre-configured contact party in the intercom network, and then forwards the call request to the main controller 101, and the main controller 101 communicates with the pre-configured contact party.

[0075] By providing a physical button connected to the slave controller 102 in the intercom terminal, when the main controller 101 is abnormal, the intercom function of one-key calling can be realized through the slave controller 102, which is convenient for users.

[0076] Optionally, the intercom terminal 10 may include a physical button connected to the main controller 101 while including a virtual button connected to the main controller 101. When the main controller 101 is working normally, the user can use this physical button or virtual button to implement the one-touch call intercom function of the intercom terminal 10.

[0077] In some embodiments, the first intercom function system and the second intercom function system each correspond to a set of independent intercom function-related devices (such as a network card, a microphone, a speaker, a camera, etc.), or the first intercom function system and the second intercom function system call the same set of intercom function-related devices, and the first intercom function system and the second intercom function system can independently realize the intercom function of the intercom terminal 10.

[0078] In some embodiments, when the user only requires the intercom terminal 10 to perform real-time voice intercom functions, the voice intercom function of the controller 102 can be implemented via a physical button for one-touch calling. Specifically, the controller 102 cannot access devices related to the video intercom function or management service functions, and can only access devices related to the voice intercom function (e.g., microphone, speaker, etc.). For example, under normal circumstances, all services of the intercom terminal 10 are run by the central processing unit (CPU) supporting the A2S platform and running the Android system. If the CPU supporting the A2S platform and running the Android system experiences lag, freeze, or abnormal crash, the intercom function is taken over by the CPU supporting the B2 platform and running the Linux system. In this case, only the voice intercom function implemented via the physical button is supported. When the user clicks the physical button, the CPU supporting the B2 platform and running the Linux system activates the corresponding microphone and speaker to implement voice intercom between the intercom terminal 10 and the external device.

[0079] In some embodiments, after the intercom terminal 10 is started, the user can log in to the interactive interface, interactive webpage, and client to enter the configuration page and configure the functional parameters and intercom parameters of the intercom terminal 10 to enable the intercom function. The master controller 101 and the slave controller 102 can synchronize IP parameters, MAC addresses, intercom parameters, and activation information via the UART serial port protocol to ensure that the intercom function of the intercom terminal 10 can be normally implemented after the master controller 101 abnormally switches to the slave controller 102.

[0080] In some embodiments, the slave controller 102 is used to detect the working status of the main controller 101 based on the message transmission between the slave controller 102 and the main controller 101, which can be specifically implemented as follows: the slave controller 102 sends a heartbeat detection message to the main controller 101 at regular intervals; if a heartbeat response message sent by the main controller 101 is received within a preset time after sending the heartbeat detection message, the slave controller 102 determines that the main controller 101 is in a normal working state; or, if a heartbeat response message sent by the main controller 101 is not received within a preset time after sending the heartbeat detection message, the slave controller 102 determines that the main controller 101 is in an abnormal working state.

[0081] In some embodiments, after the slave controller 102 detects that the master controller 101 is in an abnormal working state, if the slave controller 102 receives a heartbeat response message from the master controller 101 for a preset number of consecutive times, the slave controller 102 determines that the master controller 101 has recovered from the abnormal working state to the normal working state.

[0082] In some embodiments, the master controller 101 is further used to: in response to receiving a heartbeat detection message sent by the slave controller 102, send a heartbeat response message carrying the latest intercom parameters in the master controller 101 to the slave controller 102; the slave controller 102 is further used to: in response to receiving a heartbeat response message sent by the master controller 101, obtain the intercom parameters from the heartbeat response message; if the intercom parameters carried in the heartbeat response message are different from the intercom parameters already in the slave controller 102, the intercom parameters already in the slave controller 102 are updated to the intercom parameters carried in the heartbeat response message.

[0083] In some embodiments, the master controller 101 is also used to send a heartbeat response message carrying the latest intercom parameters in the master controller 101 to the slave controller 102 if the intercom parameters in the master controller 101 are updated relative to the last time a heartbeat detection message was received; the slave controller 102 is also used to, in response to receiving a heartbeat response message sent by the master controller 101, update the existing intercom parameters in the slave controller 102 to the intercom parameters carried in the heartbeat response message if the heartbeat response message carries the intercom parameters.

[0084] In some embodiments, the main controller 101 is also used to: obtain an upgrade package for the intercom function system; determine whether the intercom function system upgrade package includes an upgrade package for the second intercom function system; if included, send a network upgrade request message to the slave controller 102, and the network upgrade request message carries the upgrade package for the second intercom function system; the slave controller 102 is also used to: in response to receiving the network upgrade request message sent by the main controller 101, upgrade the second intercom function system based on the upgrade package of the second intercom function system; after the upgrade of the second intercom function system is completed, send a network upgrade response message to the main controller 101, and restart the second intercom function system; the main controller 101 is also used to restart the first intercom function system after receiving the network upgrade response message sent by the slave controller 102 and completing the upgrade of the first intercom function system.

[0085] In some embodiments, the communication types between the master controller 101 and the slave controller 102 can be divided into several types of messages: heartbeat detection message, heartbeat response message, key status message, key status reply message, network upgrade request message, network upgrade reply message. Figure 2 As shown, after the master controller 101 and the slave controller 102 are initialized, the slave controller 102 sends a heartbeat detection message to the master controller 101. When the master controller 101 works normally, it will reply with a heartbeat response message to the slave controller 102. If the master controller 101 updates the IP address, MAC address, intercom parameters and other information, the heartbeat response message replied by the master controller 101 to the slave controller 102 contains the IP address, MAC address, intercom parameters and other information (that is, the master controller 101 determines whether the intercom parameters are updated and sends the updated intercom parameters to the slave controller 102). After receiving the heartbeat response message, the slave controller 102 updates its own IP address, MAC address, intercom parameters and other information to keep synchronized with the master controller 101. Slave controller 102 detects the status of the physical buttons connected to it (pressed or not). When master controller 101 is operating normally, slave controller 102 sends a button status message to master controller 101. Master controller 101 then takes corresponding actions based on the status of the physical buttons and then responds with a button status response message to slave controller 102. When master controller 101 determines that the slave controller 102 network needs to be upgraded, it sends a network upgrade request message to slave controller 102. After the upgrade is complete, slave controller 102 responds with a slave controller network upgrade response message to the master controller.

[0086] In some embodiments, activation request messages and activation response messages may also be transmitted between the master controller 101 and the slave controller 102. When the master controller 101 is operating normally, the master controller 101 writes activation parameters into the activation request message and sends the activation request message to the slave controller 102. The slave controller 102 then performs an activation operation based on the activation parameters in the activation request message and writes the activation result into an activation response message and returns it to the master controller 101. The activation parameters may be parameters used to activate the slave controller 102 to implement the intercom function, or they may be parameters used to activate the resources required by the slave controller 102 to implement the intercom function.

[0087] Based on the above description, the structure of the intercom terminal 10 can be divided into: a dual-system communication module, a dual-system redundancy backup module, a two-way intercom module and an upgrade module according to its functions.

[0088] The dual-system communication module is responsible for interactive communication between the first and second intercom function systems in the intercom terminal. Specific communication content may include: full-duplex transmission and reception of the underlying UART, communication protocol formulation, message format parsing, communication protocol analysis, etc. The dual-system communication module can build a bridge for anomaly detection, parameter synchronization, system switching, and other processes between the first and second intercom function systems.

[0089] Specifically, the interactive communication between the first intercom function system and the second intercom function system may adopt a specific message format, and the communication interface between the first intercom function system and the second intercom function system may adopt a specific interface. For example, the message format adopts a format including a start bit, a data packet sequence number, a destination address, a command word, a data segment length value, a data segment, an end bit, and a checksum, such as Figure 3 As shown in the figure, when the first intercom function system and the second intercom function system communicate with each other, the data to be communicated (such as IP address, MAC address, activation information, intercom parameters and status information of physical buttons, etc.) must first be organized in JSON data format, and then the message content in JSON data format is converted into string format and placed in the data segment of the protocol message to be sent. After filling in the start bit, data packet sequence number, destination address, command word, data segment length value, data segment, end bit and checksum, the complete communication protocol message packet is transmitted through the UART serial port.

[0090] Based on this, the dual-system communication module can be divided into a serial port function submodule, a communication protocol submodule, and a parameter synchronization submodule. The serial port function submodule is responsible for encapsulating the underlying UART communication, including serial port parameter initialization, sending interface, receiving interface, etc. The communication protocol submodule is responsible for the message format used when communicating between the first intercom function system and the second intercom function system, including the start bit, command word, data segment length value, destination address, data segment, end bit, checksum, etc. The parameter synchronization submodule is responsible for synchronizing the IP address, MAC address, intercom parameters, and activation information of the first intercom function system to the second intercom function system, providing a basis for switching between the first and second intercom function systems in the intercom terminal 10.

[0091] In practical applications, data content can be encapsulated in the JSON data format, parsed using the JSON library interface, and communicated via the UART serial port. The UART serial port communication configuration parameters can be standardized using a baud rate of 115200, 8 data bits, and none parity and flow control bits, for a total of 9 data bits per group. Communication between the first and second intercom systems can use full-duplex UART serial communication at the bottom layer. The application layer can send, receive, and parse messages using the message format shown in Table 1 below.

[0092] Table 1 Message format

[0093] name Start bit Packet sequence number address Command word Data segment length value Data segment Stop bit Checksum length 2 2 2 2 4 n 4 1 value 0x1234 0x22 0x00 0x01 n 0x10 0x10 0x1122

[0094] By adopting full-duplex UART serial communication, a low-speed transmission protocol, anomalies caused by transmission delays can be avoided. When designing the communication protocol and message format, the message content is sent as concisely as possible to avoid transmitting large amounts of data through UART.

[0095] The dual-system redundancy backup module is used to detect anomalies in the heartbeat mechanism of the first intercom system using the second intercom system, and to smoothly switch between the first and second intercom systems. This ensures that even if an anomaly occurs in one of the intercom systems of the intercom terminal 10, the real-time intercom function between the intercom terminal 10 and the external device remains available. For example, before the first intercom system anomaly occurs, the intercom terminal 10 uses the first intercom system to achieve real-time video intercom between the intercom terminal 10 and the external device. After the first intercom system anomaly occurs, the intercom terminal 10 uses the second intercom system to achieve real-time voice intercom between the intercom terminal 10 and the external device.

[0096] The dual system redundant backup module completes the heartbeat mechanism abnormality detection of the second intercom function system to the first intercom function system, and the logic of smooth switching between the first intercom function system and the second intercom function system can be as follows Figure 4 As shown:

[0097] First, the master controller 101 running the first intercom function system and the slave controller 102 running the second intercom function system establish a communication connection after completing initialization. For example, the master controller 101 and the slave controller 102 can establish a communication connection via RS485.

[0098] Regardless of whether the master controller 101 is working properly, the slave controller 102 regularly sends heartbeat detection messages to the master controller 101. The slave controller 102 sends heartbeat detection messages to the master controller 101. Within a preset time period after each heartbeat detection message is sent, the slave controller 102 waits for a heartbeat response message from the master controller 101 to determine whether the master controller 101 has timed out from replying the heartbeat response message.

[0099] If no heartbeat response message is received from the master controller 101 within a preset time period, the slave controller 102 determines that the heartbeat response message from the master controller 101 has timed out, i.e., that the first intercom function system running on the master controller 101 is abnormal. The slave controller 102 then determines whether to switch to the second intercom function system. If the first intercom function system is already abnormal and the second intercom function system is performing the intercom function, and the first intercom function system is now determined to be abnormal, then a system switch is not required and the slave controller 102 running the second intercom function system will continue to perform the intercom function. If the first intercom function system is already normal and the first intercom function system is performing the intercom function, and the first intercom function system is now determined to be abnormal, then a system switch is required. The slave controller 102 controls the data stream switching module 103 to close the connection port between the master controller 101 and enable the network card of the slave controller 102 to start up. After the switch, the slave controller 102 running the second intercom function system will perform the intercom function. When the intercom function is implemented by the slave controller 102 running the second intercom function system, if a call request of the aforementioned physical button is received, the slave controller 102 directly processes the call request, and the slave controller 102 implements the signaling interaction and audio and video information interaction during the intercom process.

[0100] If a heartbeat response message is received from the master controller 101 within a preset time period, and the slave controller 102 determines that the heartbeat response message from the master controller 101 has not timed out, that is, that the first intercom function system running on the master controller 101 is normal, it is further determined whether to switch to the first intercom function system. If the first intercom function system is already normal and the intercom function is being implemented by the first intercom function system, and the first intercom function system is now determined to be normal, then no system switch is required and the intercom function is still implemented by the master controller 101 running the first intercom function system. If the first intercom function system is already abnormal and the intercom function is being implemented by the second intercom function system, and the first intercom function system is now determined to be normal, then the first intercom function can be restored and the second intercom function system needs to be switched to the first intercom function system. The connection port between the data stream switching module 103 and the master controller 101 is enabled, and the network card of the slave controller is disabled. After the switch, the intercom function is implemented by the master controller 101 running the first intercom function system. When the intercom function is implemented by the main controller 101 running the first intercom function system, if a call request from the aforementioned physical button is received, the slave controller 102 forwards the call request to the main controller 101, and the main controller 101 directly processes the call request, and the main controller 101 implements the signaling interaction and audio and video information interaction during the intercom process.

[0101] The slave controller 102 controls the data flow switching module 103 to shut down the port connecting it to the master controller 101 and simultaneously turns on the network card of the slave controller 102. After the switch is complete, the slave controller 102 sends a set of ping packets with the IP address of the intercom server 20 as the destination address. This causes the nearest switch to update its MAC address table, ensuring smooth network operation.

[0102] After switching from the first intercom function system to the second intercom function system, the intercom terminal 10 can only realize the voice intercom function through the slave controller 102, and can only use the physical button to call the call function. After switching from the first intercom function system to the second intercom function system or from the second intercom function system to the first intercom function system, the slave controller 102 will continue to send heartbeat detection messages to the main controller 101. When the mentality detection response messages of N consecutive heartbeat detection messages sent are all normal messages, it can be determined that the main controller 101 has returned to normal and needs to be switched to the first intercom function system. The slave controller 102 first turns off its own network card, and then resets the connection port between the data flow switching module 103 and the main controller 101 to the open state by controlling the data flow switching module 103, and then notifies the main controller 101 to send a group of ping packets with the destination address being the IP address of the intercom server 20, so that the nearest switch updates the mac address table to ensure smooth network operation.

[0103] The intercom terminal 10 has only one network port for realizing communication connection with external devices. Switching between the first intercom function system and the second intercom function system in the intercom terminal 10 is actually switching the use right of the single network port. Figure 5 As shown, parameter synchronization and heartbeat detection are performed between the first intercom function system and the second intercom function system, and the data stream switching module 103 is connected to the external network. When the first intercom function system is abnormal, the slave controller 102 controls the data stream switching module 103 to connect the external network to the second intercom function system, and the network usage rights of the single network port belong to the second intercom function system. When the first intercom function system returns to normal, the slave controller 102 controls the data stream switching module 103 to connect the external network to the first intercom function system, and the network usage rights of the single network port belong to the first intercom function system. The first intercom function system and the second intercom function system share the same IP address and the same MAC address. Even if the intercom function system is switched, the network information displayed to the outside by the intercom terminal 10 remains unchanged.

[0104] like Figure 6As shown, the control of the data stream switching module 103 by the slave controller 102 can be achieved through two commands, one is to control the connection port status between the data stream switching module 103 and the main controller 101 to be enabled (at this time, the connection port status between the slave controller 102 and the data stream switching module 103 is closed), and the other is to control the connection port status between the data stream switching module 103 and the main controller 101 to be closed (at this time, the connection port status between the slave controller 102 and the data stream switching module 103 is enabled). After the data stream switching module 103 completes the switching, the data stream switching module 103 replies to the slave controller 102 with a response message indicating that the switching is completed, so as to inform the slave controller 102 whether the system switching is completed.

[0105] Based on this, the dual-system redundancy backup module can be divided into an anomaly detection submodule, a system switching submodule, and an anomaly recovery submodule. The anomaly detection submodule is used to detect whether the first intercom function system has an anomaly; the system switching submodule is used to switch from the first intercom function system to the second intercom function system; and the anomaly recovery submodule is used to switch from the second intercom function system to the first intercom function system when the first intercom function system returns to normal.

[0106] During the switching process between the first intercom function system and the second intercom function system, an abnormal situation of IP address conflict may occur, and the MAC address table of the data flow switching module 103 may become invalid, resulting in an abnormal situation of upstream and downstream communication being blocked. In this application, the method of solving these abnormal situations is to first shut down the intercom function system in use, and then start the intercom function system to be switched. After switching the intercom function system, the MAC address table of the data flow switching module is forcibly updated using a ping packet to avoid upstream and downstream communication being blocked.

[0107] The two-way intercom module implements the intercom function of the intercom terminal 10. When the first intercom system is functioning normally, the first intercom system handles virtual and physical button calls, as well as called calls. When the first intercom system is malfunctioning, the virtual button call function is no longer supported, and the second intercom system handles both physical and called calls. The first intercom system handles video intercom functions, while the second intercom system only needs to ensure voice intercom functions. When the second intercom system is operating, video-related functions (such as viewing live video and previewing videos) are unavailable.

[0108] The physical button is directly connected to the slave controller 102, and the virtual button is directly connected to the master controller 101. Before the first intercom function system is abnormal, that is, when the first intercom function system is working normally, the one-key call logic of the intercom terminal 10 can be as follows: Figure 7As shown, when a call request for a one-key call is received, if it is a call request corresponding to a physical button, the slave controller 102 forwards the call request to the master controller 101, and the master controller 101 performs call logic processing after receiving the call request. If it is a call request corresponding to a virtual button, the master controller 101 directly receives the call request and performs call logic processing. When the first intercom function system is abnormal, that is, when the intercom function is realized by the second intercom function system, the one-key call logic of the intercom terminal 10 can be as follows Figure 8 As shown, a call request for a one-key call is received. If it is a call request corresponding to a physical button, the call logic processing is performed after the slave controller 102 receives the call request. If it is a call request corresponding to a virtual button, the main controller 101 should receive the call request and perform call logic processing. However, due to the abnormality of the first intercom function system, the call request corresponding to the virtual button will fail.

[0109] Before the first intercom function system becomes abnormal, all business functions are running in the first intercom function system, including the most important call intercom function. After the first intercom function system becomes abnormal, the call intercom function is realized by the redundant backup second intercom function system, and other business functions are unavailable. The original visual intercom function that can be realized by the first intercom function system in the intercom terminal 10 is also downgraded to a voice intercom function, and can only support the one-key call function of physical buttons, and the one-key call function of virtual buttons is no longer supported.

[0110] Based on this, the two-way intercom module can be divided into a pre-abnormal visual intercom submodule and a post-abnormal voice intercom submodule. The pre-abnormal visual intercom submodule is implemented in the first intercom function system, mainly realizing the visual intercom function of the caller and the called party. The post-abnormal voice intercom submodule is implemented in the second intercom function system, mainly realizing the voice intercom function of the caller and the called party. The pre-abnormal visual intercom submodule and the post-abnormal voice intercom submodule are implemented in the two intercom function systems respectively. During the implementation process, it is necessary to ensure that the intercom parameters, registration parameters, audio streaming parameters, etc. are consistent to ensure that the intercom function can be used normally after the intercom function system is switched.

[0111] In summary, the logic diagram for implementing the intercom function in the intercom terminal 10 can be as follows: Figure 9As shown. The first intercom function system implements the intercom function of visual conversation through devices such as a video capture device, a microphone, and a speaker. The second intercom function system implements basic intercom functions through a microphone and a speaker. A connection is established between the physical button and the second intercom function system, and the second intercom function system processes or forwards the call request of the physical button. The first intercom function system and the second intercom function system will perform parameter synchronization and abnormality detection operations to ensure that the first and second intercom function systems use the same intercom parameters to implement the intercom function and to promptly detect any abnormalities in the first intercom function system. The main controller 101 running the first intercom function system and the slave controller 102 running the second intercom function system are both connected to the data stream switching module 103. The data stream switching module 103 forwards external intercom data to the main controller 101 running the first intercom function system or the slave controller 102 running the second intercom function system. Alternatively, the data stream switching module 103 forwards the intercom data processed by the first intercom function system or the second intercom function system to an external intercom server 20. The slave controller 102 running the second intercom function system will also send a control signal to the data stream switching module 103 to control the data stream switching module 103 to connect to the main controller 101 or to connect to the slave controller 102 .

[0112] The upgrade module is used to remotely upgrade both the first and second intercom systems over the intercom terminal 10, based on a single external network port. Each intercom system corresponds to a separate upgrade package. The upgrade package is imported into the intercom terminal 10 via the webpage of the first intercom system with the single network port. The upgrade package is then decompressed in the first intercom system. The master controller 101 running the first intercom system then transmits the upgrade package for the second intercom system to the slave controller 102 running the second intercom system. The upgrade package for the first intercom system is then updated in the master controller 101.

[0113] The specific upgrade process of the intercom function system can be as follows: Figure 10As shown, the entire system upgrade package must first be upgraded in the first intercom system. The first intercom system first performs a packet header check. If the check fails, the upgrade fails. If the check passes, the first intercom system downloads the upgrade package, decompresses it, and then counts and categorizes the upgrade packages. If an upgrade package for a second intercom system is available, the second intercom system is notified to perform the upgrade. The second intercom system modifies network parameters, and the first intercom system transmits the upgrade package to the second intercom system via the network connection between the first and second systems. Similarly, the second intercom system also performs a packet header check. Only if the check passes will the upgrade proceed. While the second intercom system is being upgraded, or if the second intercom system does not need to be upgraded, the first intercom system will also upgrade in parallel. After the upgrade is complete, the first intercom system is notified and restarted. The first intercom function system will restart only after the upgrade is completed and the notification of the second intercom function system's upgrade completion is received. After both the first intercom function system and the second intercom function system are upgraded and restarted, it is determined that both the first intercom function system and the second intercom function system are successfully upgraded. Based on this logic, the logic diagram for implementing the upgrade function in the intercom terminal 10 is as follows: Figure 11 shown.

[0114] Based on this, the upgrade module can be divided into a packaging script submodule, an upgrade verification submodule, a Jenkins packaging submodule, and a second intercom function system upgrade package acquisition submodule. The packaging script submodule is used to add the entire intercom terminal model and the separate model of the post-abnormal voice intercom submodule to the packaging script according to the applied encryption model, to ensure that during the network upgrade, when the old program package performs header verification, the upgrade package type can be verified and passed, and it can be upgraded to the intercom terminal normally. The upgrade verification submodule is used to automatically match and verify the entire upgrade package with the major category of the upgrade package after the intercom terminal receives it. The Jenkins packaging submodule is used to treat the upgrade package of the post-abnormal voice intercom submodule as a component, integrate it into the entire upgrade package during the process of generating the entire upgrade package, and use platform resources for packaging. The second intercom function system upgrade package acquisition submodule is used to transfer the upgrade package of the second intercom function system from the first intercom function system to the second intercom function system.

[0115] During the intercom system upgrade process, regardless of the reason for the intercom system upgrade failure, the intercom system must be restarted. If the first intercom system upgrade fails, the first intercom system must be restarted. If the second intercom system upgrade fails, both the first and second intercom systems must be restarted. In other words, regardless of whether the second intercom system upgrade fails or not, both intercom systems must be restarted to avoid issues when switching the intercom system during the upgrade.

[0116] In some embodiments, the intercom terminal 10 registers in the intercom server 20 once every preset time period to prevent communication abnormalities caused by network disconnection or disconnection of the intercom terminal 10.

[0117] In some embodiments, when the network parameters and SIP service parameters used by the intercom terminal 10 change, the intercom terminal 10 is automatically triggered to re-register in the intercom server 20, and the new network parameters and SIP service parameters are synchronized between the first intercom function system and the second intercom function system.

[0118] Based on the above description, the specific structure of the intercom terminal 10 can be as follows Figure 12 As shown. The first intercom function system of the intercom terminal 10 may include a video capture device, a fingerprint capture device, a microphone, and a speaker. The video images captured by the video capture device can be used for user preview, image detection, and facial recognition of people in the image. The fingerprints captured by the fingerprint capture device can be used for fingerprint recognition of people. The content captured and output by the video capture device, fingerprint capture device, microphone, and speaker together implement the intercom function of the first intercom function system. The second intercom function system monitors the status of the first intercom function system in real time to switch systems. Signaling (transmitting upgrade packages, upgrade instructions, intercom parameters, heartbeat detection messages, heartbeat response messages, and other information and instructions) is also transmitted between the first and second intercom function systems. A virtual button is connected to the first intercom function system. When the first intercom function system is operating normally, if a person triggers the call function using the virtual button, the first intercom function system will initiate the call request after confirming that the person has the authority to initiate the call request. The physical button is connected to the second intercom system. When the second intercom system is implementing the intercom function of the intercom terminal, if someone triggers the call function using the physical button, the second intercom system will initiate a call request. When the first intercom system is implementing the intercom function of the intercom terminal (i.e., the first intercom system is operating normally), if someone triggers the call function using the physical button, the second intercom system will send the physical button status to the first intercom system, triggering the first intercom system to initiate a call request.

[0119] In some embodiments, the intercom terminal 10 may be any of the following intercom terminals:

[0120] Video intercoms, used in residential and other building systems, provide two-way video communication between visitors and residents (users), achieving dual image and voice recognition to increase security and reliability, while saving significant time and improving work efficiency. Furthermore, they can also provide basic alarm and detection signals within the building system, implementing a basic security management system.

[0121] The management machine is installed in the security room in the video intercom system, and provides functions such as video intercom, receiving alarms, remote unlocking, and access control card issuance.

[0122] The management center is a platform server (the above-mentioned intercom server 20) that provides management of the video intercom system, or a management machine device, which can be installed in a computer room or security room.

[0123] The hardware structure of the master controller 101 and the slave controller 102 may include Figure 13 The computing device shown in FIG. Figure 13 Taking the computing device shown as an example, the hardware structure of the master controller 101 and the slave controller 102 is introduced.

[0124] like Figure 13 As shown, the computing device may include a processor 301 , a memory 302 , a communication interface 303 , and a bus 304 . The processor 301 , the memory 302 , and the communication interface 303 may be connected via the bus 304 .

[0125] Processor 301 is the control center of the computing device and can be a single processor or a collective term for multiple processing elements. For example, processor 301 can be a general-purpose central processing unit (CPU) or other general-purpose processor. A general-purpose processor can be a microprocessor or any conventional processor.

[0126] As an embodiment, the processor 301 may include one or more CPUs, such as Figure 13 CPU 0 and CPU 1 are shown in Figure 1.

[0127] The memory 302 is typically an embedded multimedia card (EMMC), but may also be a read-only memory (ROM) or other type of static storage device that can store static information and instructions, a random access memory (RAM) or other type of dynamic storage device that can store information and instructions, an electrically erasable programmable read-only memory (EEPROM), a disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto.

[0128] In one possible implementation, memory 302 may exist independently of processor 301 and may be connected to processor 301 via bus 304 for storing instructions or program code. When processor 301 calls and executes the instructions or program code stored in memory 302, the model deployment method provided in the embodiments of the present application can be implemented.

[0129] In another possible implementation, the memory 302 may also be integrated with the processor 301 .

[0130] Communication interface 303 is used to connect the computing device to other devices via a communication network, such as Ethernet, wireless fidelity (Wi-Fi), or wireless local area networks (WLAN). Communication interface 303 may include a receiving unit for receiving data and a sending unit for sending data.

[0131] Bus 304 can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. This bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 13 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.

[0132] It should be pointed out that Figure 13 The structure shown in the figure does not constitute a limitation on the computing device, except Figure 13 In addition to the components shown, the computing device may include more or fewer components than shown, or combine certain components, or arrange the components differently.

[0133] The implementation of the embodiments of the present application will be described in detail below with reference to the accompanying drawings.

[0134] The intercom method provided in the embodiment of the present application can be applied to the intercom terminal 10 in the above-mentioned intercom system 1.

[0135] like Figure 14 As shown, the embodiment of the present application provides an intercom method, which includes the following steps:

[0136] S101: The slave controller detects the working status of the master controller based on the message transmission status between the slave controller and the master controller.

[0137] In some embodiments, the slave controller periodically sends a heartbeat detection message to the master controller; if a heartbeat response message sent by the master controller is received within a preset period of time after sending the heartbeat detection message, the slave controller determines that the master controller is in a normal working state; or, if a heartbeat response message sent by the master controller is not received within a preset period of time after sending the heartbeat detection message, the slave controller determines that the master controller is in an abnormal working state.

[0138] The slave controller periodically sends a heartbeat detection message to the master controller, and the slave controller may send a heartbeat detection message to the master controller at a preset frequency or at fixed intervals.

[0139] For example, the slave controller sends a heartbeat detection message to the master controller every 30 seconds, with a preset duration of 5 seconds. If the slave controller sends a heartbeat detection message to the master controller at 00:02:14, if no heartbeat response message is received from the master controller between 00:02:14 and 00:02:35, the slave controller can determine that the master controller is in an abnormal working state. If a heartbeat response message is received from the master controller, the slave controller determines that the master controller is in a normal working state.

[0140] In other embodiments, after the slave controller detects an abnormality in the master controller, if the slave controller receives a heartbeat response message from the master controller within a preset time period after sending the heartbeat detection message for a preset number of consecutive times, the slave controller determines that the master controller has returned to normal working state.

[0141] For example, assuming that the preset number of times is 5, after the main controller is detected to be abnormal once, the slave controller will determine that the main controller is in a normal working state only when it receives a heartbeat response message from the main controller within the preset time period after sending the heartbeat detection message for 5 consecutive times. Otherwise, the slave controller will determine that the main controller is still in an abnormal working state.

[0142] Optionally, when the slave controller determines whether the master controller is abnormal, a preset number of times can also be set. That is, if the slave controller does not receive a heartbeat response message from the master controller within a preset time period after sending heartbeat detection messages for a consecutive preset number of times, the slave controller determines that the master controller is in an abnormal working state.

[0143] For example, assuming the preset number is 2, the slave controller will determine that the master controller is in an abnormal working state only when it fails to receive a heartbeat response message from the master controller within the preset time period after sending two consecutive heartbeat detection messages.

[0144] In this way, the slave controller continuously sends heartbeat detection messages to the master controller, and the slave controller can know whether the master controller is in an abnormal working state based on the heartbeat response message replied by the master controller, which is convenient for subsequent switching of the intercom function system when the master controller is in an abnormal working state.

[0145] In some embodiments, the master controller, in response to receiving a heartbeat detection message sent by the slave controller, sends a heartbeat response message carrying the latest intercom parameters in the master controller to the slave controller; the slave controller, in response to receiving a heartbeat response message sent by the master controller, obtains the intercom parameters from the heartbeat response message; if the intercom parameters carried in the heartbeat response message are different from the intercom parameters already in the slave controller, the intercom parameters already in the slave controller are updated to the intercom parameters carried in the heartbeat response message.

[0146] In particular, the heartbeat response message may also carry other parameters, such as network parameters, activation parameters, etc.

[0147] The heartbeat response message replied by the master controller each time includes the intercom parameters. The slave controller determines whether the intercom parameters are updated. If the intercom parameters are updated, the slave controller changes its stored intercom parameters to the new intercom parameters, reducing the operation of the master controller to determine whether the intercom parameters are updated.

[0148] In other embodiments, if the intercom parameters in the master controller are updated relative to the last time a heartbeat detection message was received, the master controller sends a heartbeat response message carrying the latest intercom parameters in the master controller to the slave controller; in response to receiving the heartbeat response message sent by the master controller, if the heartbeat response message carries the intercom parameters, the slave controller updates the existing intercom parameters in the slave controller to the intercom parameters carried in the heartbeat response message.

[0149] In this way, the master controller determines whether the intercom parameters are updated. Only when the intercom parameters are updated will the updated intercom parameters be carried in the heartbeat response message. This can reduce the workload of the slave controller and the amount of data in the heartbeat response message.

[0150] In general, the transmission of heartbeat detection messages and heartbeat response messages can not only detect the working status of the main controller, but also carry intercom parameters, so that the intercom parameters between the main controller and the slave controller are synchronized, and there will be no conflict when switching the use of a single network port between the main controller and the slave controller to communicate with external devices.

[0151] S102: When the data stream switching module is in the first working state, the slave controller instructs the data stream switching module to switch from the first working state to the second working state in response to detecting that the master controller is in an abnormal working state.

[0152] Among them, in the first working state, the data stream switching module is used to transmit the data stream from the external device to the main controller, and to send the data stream generated by the main controller to the external device; in the second working state, the data stream switching module is used to transmit the data stream from the external device to the slave controller, and to send the data stream generated by the slave controller to the external device.

[0153] In some embodiments, when the data flow switching module is in the first working state, the slave controller, in response to detecting that the master controller is in an abnormal working state, instructs the data flow switching module to switch from the first working state to the second working state. Specifically, it can be implemented as follows: when the data flow switching module is in the first working state, in response to detecting that the master controller is in an abnormal working state, the first control information and the second control information are sent to the data flow switching module, so that the data flow switching module switches from the first working state to the second working state; or, when the data flow switching module is in the first working state, in response to detecting that the master controller is in an abnormal working state, the first control information is sent to the data flow switching module, and the connection port between the slave controller and the data flow switching module is opened, so that the data flow switching module switches from the first working state to the second working state; wherein the first control information is used to instruct the data flow switching module to close the connection port between the data flow switching module and the master controller, and the second control information is used to instruct the data flow switching module to open the connection port between the data flow switching module and the slave controller.

[0154] In some embodiments, after the data flow switching module switches to the second working state, the slave controller continues to detect the working state of the master controller; in response to detecting that the master controller has resumed normal working state, the slave controller instructs the data flow switching module to switch from the second working state to the first working state.

[0155] In some embodiments, in response to detecting that the main controller has resumed normal working state, the slave controller instructs the data flow switching module to switch from the second working state to the first working state. Specifically, it can be implemented as follows: in response to detecting that the main controller has resumed normal working state, the connection port between the slave controller and the data flow switching module is closed, and third control information is sent to the data flow switching module to switch the data flow switching module from the second working state to the first working state; or, in response to detecting that the main controller has resumed normal working state, third control information and fourth control information are sent to the data flow switching module to switch the data flow switching module from the second working state to the first working state; wherein the third control information is used to instruct the data flow switching module to open the connection port between the data flow switching module and the main controller, and the fourth control information is used to instruct the data flow switching module to close the connection port between the data flow switching module and the slave controller.

[0156] In this way, the slave controller controls the opening and closing of the connection port on the data stream switching module for establishing a connection with the main controller by controlling the opening and closing of the connection port on itself for establishing a connection with the data stream switching module and sending control information to the data stream switching module, thereby switching the working state of the data stream switching module and realizing the transmission of intercom data between different intercom function systems and external devices.

[0157] S103: The slave controller communicates with the external device based on the same intercom parameters as those in the master controller.

[0158] The intercom parameters may include parameters such as communication protocol, communication standard, communication frequency, encoding method, etc. The slave controller implements the calling and called functions of the intercom terminal based on the intercom parameters.

[0159] In some embodiments, the main controller can control the upgrade of the slave controller, specifically: the main controller obtains the intercom function system upgrade package; the main controller determines whether the intercom function system upgrade package includes the upgrade package of the second intercom function system; if included, the main controller sends a network upgrade request message to the slave controller, and the network upgrade request message carries the upgrade package of the second intercom function system; the slave controller responds to receiving the network upgrade request message sent by the main controller, and upgrades the second intercom function system based on the upgrade package of the second intercom function system; after the upgrade of the second intercom function system is completed, the slave controller sends a network upgrade response message to the main controller and restarts the second intercom function system; after receiving the network upgrade response message sent by the slave controller and completing the upgrade of the first intercom function system, the main controller restarts the first intercom function system.

[0160] The master controller controls the upgrade of the slave controller. The upgrade process is performed when the master controller is working normally. This ensures that the intercom systems running in the slave controller and the master controller are in the latest functional status, better realizes the intercom function, and provides users with a better user experience.

[0161] In some embodiments, the main controller is connected to the first button, and the slave controller is connected to the second button, and the second button is a physical button; the main controller is also used to, when the main controller is in normal working state, in response to detecting the user's trigger operation on the first button, send a call request to the intercom network, and the intercom network is the network to which the intercom terminal is currently connected; the slave controller is also used to, in response to detecting the user's trigger operation on the second button, if the main controller is in an abnormal working state, send a call request to the intercom network.

[0162] The slave controller is also used to, in response to detecting a user triggering operation on the second button, send a button status message to the master controller if the master controller is in normal working state, and the button status message is used to indicate that the second button is triggered; the master controller is used to, in response to receiving the button status message sent by the slave controller, send a call request to the intercom network to communicate with other devices in the intercom network; the master controller is also used to send a button status response message to the slave controller to notify the slave controller that the call request has been initiated.

[0163] Alternatively, the slave controller is also used to, in response to detecting a user trigger operation on the second button, if the main controller is in normal working state, send a call request to the intercom network and forward the call request to the main controller; the main controller is also used to receive the call request forwarded by the slave controller to communicate with other devices in the intercom network.

[0164] The first button is not limited to a virtual button or a physical button. When the main controller is working normally, the user can trigger the intercom terminal through the first button or the second button to realize the intercom function of one-touch calling. When the main controller is abnormal, the second button is a physical button connected to the slave controller. It is not affected by the abnormality of the main controller and can play the role of a backup button. The user triggers the intercom terminal through the second button to realize the intercom function of one-touch calling.

[0165] Under normal circumstances, all intercom terminal services run on the master controller, which also holds network access rights. When a user physically presses a button to initiate a call, the slave controller transmits the button status to the master controller, which then decides whether to initiate or terminate the call based on its current state. If an anomaly occurs on the master controller, such as a main process freeze, deadlock, or crash, the slave controller can detect the anomaly based on its heartbeat. It then controls the data flow switching module and the slave controller's network card to gain access to a single network port, while simultaneously shutting down the master controller's network access rights. Because the master and slave controllers use the same network and intercom parameters and appear as a single device on the registered intercom server, switching between the master and slave controllers eliminates the need for re-registration and allows access to the intercom server at any time for making and receiving calls.

[0166] The intercom terminal provided in this application has only one network port, and the two intercom function systems use a set of network parameters even when switching, which is very convenient and concise in the device management and deployment of the intercom system.

[0167] Figure 14The technical solution provided herein provides at least the following beneficial effects: the intercom terminal provided herein includes a master controller and a slave controller. When the master controller operates normally, normal communication between the intercom terminal and an external device can be achieved. The slave controller continuously detects the operating status of the master controller based on the message transmission between the master controller and the slave controller. When the master controller operates abnormally, the slave controller promptly controls the data stream switching module to switch from a first operating state to a second operating state, transmitting the data stream from the external device to the slave controller. The slave controller then implements the intercom function of the intercom terminal. In other words, the intercom terminal can achieve normal communication with the external device through the slave controller when the master controller operates abnormally. In this way, the intercom terminal of one controller can be prevented from being unable to communicate with the external device when the controller is abnormal, which affects the user experience. In addition, the intercom parameters in the slave controller are the same as the intercom parameters in the master controller. The master controller and the slave controller use the same set of intercom parameters. Even if the intercom terminal switches between the first intercom function system and the second intercom function system, it still appears as a single intercom terminal to the external device, making it easier for users to manage the intercom terminal.

[0168] The above mainly introduces the solution provided by the embodiment of the present application from the perspective of the method. In order to realize the above functions, it includes hardware structures and / or software modules corresponding to the execution of each function. It should be easy to realize that the technical goals in this field are combined with the units and algorithm steps of each example described in the embodiments disclosed herein, and the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional technical goals can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0169] The above embodiments can be implemented in whole or in part using software, hardware, firmware, or any combination thereof. When implemented using a software program, they can be implemented in whole or in part in the form of a computer program product. This computer program product includes one or more computer instructions. When these instructions are loaded and executed on a computer, the processes or functions according to the embodiments of the present application are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that includes one or more available media. Available media can include magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), etc.

[0170] The above is only a specific embodiment of the present application. Those skilled in the art may conceive of changes or substitutions based on the specific embodiment provided in this application, and all such changes or substitutions shall fall within the scope of protection of this application.

Claims

1. An intercom terminal, characterized in that: include: A master controller for operating the first intercom function system, a slave controller for operating the second intercom function system, a data stream switching module, and a touch panel; the master controller has a video intercom function, and the slave controller only has a voice intercom function; The master controller and the slave controller communicate with the external device respectively through the data stream switching module; the data stream switching module supports a first working state and a second working state; in the first working state, the data stream switching module is used to transmit the data stream from the external device to the master controller, and to send the data stream generated by the master controller to the external device; in the second working state, the data stream switching module is used to transmit the data stream from the external device to the slave controller, and to send the data stream generated by the slave controller to the external device; The master controller and the slave controller transmit messages via a preset communication method; the slave controller is configured to detect the working state of the master controller based on the message transmission between the slave controller and the master controller; when the data stream switching module is in the first working state, the slave controller is further configured to, in response to detecting that the master controller is in an abnormal working state, instruct the data stream switching module to switch from the first working state to the second working state, and communicate with the external device based on the same intercom parameters as those in the master controller; The master controller is connected to a first button, the slave controller is connected to a second button, the second button is a physical button, and the first button is a virtual button provided on the touch panel; The main controller is further configured to, when the main controller is in a normal working state, in response to detecting a user triggering operation on the first button, send a call request to the intercom network, where the intercom network is the network currently connected to the intercom terminal; The slave controller is further configured to, in response to detecting a user triggering an operation for the second button, if the master controller is in an abnormal working state, issue a call request to the intercom network; The slave controller is further configured to, in response to detecting a user triggering operation on the second button, send a button status message to the master controller if the master controller is in normal working state, wherein the button status message is used to indicate that the second button is triggered; the master controller is configured to, in response to receiving the button status message sent by the slave controller, issue a call request to the intercom network to communicate with other devices in the intercom network; the master controller is further configured to send a button status response message to the slave controller to notify the slave controller that a call request has been initiated; or, the slave controller is further configured to, in response to detecting a user triggering operation on the second button, send a call request to the intercom network and forward the call request to the master controller if the master controller is in normal working state; the master controller is further configured to receive the call request forwarded by the slave controller to communicate with other devices in the intercom network.

2. The intercom terminal according to claim 1, characterized in that The slave controller is used to detect the working state of the master controller according to the message transmission status between the slave controller and the master controller, including: Sending heartbeat detection messages to the main controller regularly; Receiving a heartbeat response message sent by the main controller within a preset time period after sending the heartbeat detection message, determining that the main controller is in a normal working state; or, If no heartbeat response message sent by the main controller is received within a preset time period after the heartbeat detection message is sent, it is determined that the main controller is in an abnormal working state.

3. The intercom terminal according to claim 1 or 2, characterized in that: The main controller is also used for: In response to receiving the heartbeat detection message sent by the slave controller, sending a heartbeat response message carrying the latest intercom parameters in the master controller to the slave controller; The slave controller is further configured to: In response to receiving the heartbeat response message sent by the main controller, obtaining intercom parameters from the heartbeat response message; If the intercom parameters carried in the heartbeat response message are different from the intercom parameters already in the slave controller, the intercom parameters already in the slave controller are updated to the intercom parameters carried in the heartbeat response message.

4. The intercom terminal according to claim 2, characterized in that: The master controller is further configured to send a heartbeat response message carrying the latest intercom parameters in the master controller to the slave controller if the intercom parameters in the master controller are updated relative to the last time the heartbeat detection message was received; The slave controller is further configured to, in response to receiving a heartbeat response message sent by the master controller, update the existing intercom parameters in the slave controller to the intercom parameters carried in the heartbeat response message if the heartbeat response message carries intercom parameters.

5. The intercom terminal according to claim 1, characterized in that: The main controller is also used for: Get the intercom system upgrade package; Determining whether the intercom function system upgrade package includes the upgrade package of the second intercom function system; If included, sending a network upgrade request message to the slave controller, the network upgrade request message carrying an upgrade package of the second intercom function system; The slave controller is further configured to: In response to receiving the network upgrade request message sent by the main controller, upgrading the second intercom function system based on the upgrade package of the second intercom function system; After the upgrade of the second intercom function system is completed, sending a network upgrade response message to the main controller and restarting the second intercom function system; The master controller is further configured to restart the first intercom function system after receiving the network upgrade response message sent by the slave controller and completing the upgrade of the first intercom function system.

6. The intercom terminal according to claim 1, characterized in that: The slave controller is configured to, in response to detecting that the master controller is in an abnormal working state, instruct the data stream switching module to switch from the first working state to the second working state, including: When the data stream switching module is in the first working state, in response to detecting that the main controller is in an abnormal working state, sending first control information and second control information to the data stream switching module to switch the data stream switching module from the first working state to the second working state; or When the data stream switching module is in the first working state, in response to detecting that the master controller is in an abnormal working state, sending first control information to the data stream switching module and opening a connection port between the slave controller and the data stream switching module, so that the data stream switching module switches from the first working state to the second working state; Among them, the first control information is used to instruct the data flow switching module to close the connection port between the data flow switching module and the main controller, and the second control information is used to instruct the data flow switching module to open the connection port between the data flow switching module and the slave controller.

7. The intercom terminal according to claim 1, characterized in that: The slave controller is further configured to: After the data stream switching module switches to the second working state, continuing to detect the working state of the main controller; In response to detecting that the main controller resumes a normal working state, instructing the data flow switching module to switch from the second working state to the first working state; The slave controller is configured to, in response to detecting that the master controller resumes a normal working state, instruct the data stream switching module to switch from the second working state to the first working state, including: In response to detecting that the master controller has resumed normal working state, closing the connection port between the slave controller and the data stream switching module, and sending third control information to the data stream switching module to switch the data stream switching module from the second working state to the first working state; or In response to detecting that the main controller resumes a normal working state, sending third control information and fourth control information to the data flow switching module, so that the data flow switching module switches from the second working state to the first working state; Among them, the third control information is used to instruct the data flow switching module to open the connection port between the data flow switching module and the main controller, and the fourth control information is used to instruct the data flow switching module to close the connection port between the data flow switching module and the slave controller.

8. A method for intercom, characterized in that: Applied to an intercom terminal, the intercom terminal includes: a main controller for running a first intercom function system, a slave controller for running a second intercom function system, a data stream switching module, and a touch panel, the main controller having a video intercom function, and the slave controller having only a voice intercom function; the main controller is connected to a first button, and the slave controller is connected to a second button, the second button is a physical button, and the first button is a virtual button set on the touch panel; the main controller and the slave controller respectively communicate with external devices through the data stream switching module; the main controller and the slave controller transmit messages between them through a preset communication method; The method comprises: The slave controller detects the working status of the master controller according to the message transmission status between the slave controller and the master controller; When the data stream switching module is in a first working state, the slave controller, in response to detecting that the master controller is in an abnormal working state, instructs the data stream switching module to switch from the first working state to a second working state; wherein, in the first working state, the data stream switching module is used to transmit the data stream from the external device to the master controller, and to send the data stream generated by the master controller to the external device; in the second working state, the data stream switching module is used to transmit the data stream from the external device to the slave controller, and to send the data stream generated by the slave controller to the external device; The slave controller communicates with the external device based on the same intercom parameters as those in the master controller; The main controller, in response to detecting a user triggering operation on the first button when the main controller is in a normal working state, sends a call request to an intercom network, where the intercom network is a network currently connected to the intercom terminal; The slave controller detects a user trigger operation for the second button in response, if the master controller is in an abnormal working state, a call request is issued to the intercom network; In response to detecting a user triggering operation on the second button, the slave controller sends a button status message to the master controller if the master controller is in normal working state, and the button status message is used to indicate that the second button is triggered; the master controller is used to, in response to receiving the button status message sent by the slave controller, issue a call request to the intercom network to communicate with other devices in the intercom network; the master controller is also used to send a button status response message to the slave controller to notify the slave controller that the call request has been initiated; or, in response to detecting a user triggering operation on the second button, the slave controller sends a call request to the intercom network and forwards the call request to the master controller if the master controller is in normal working state; the master controller is also used to receive the call request forwarded by the slave controller to communicate with other devices in the intercom network.

Citation Information

Patent Citations

  • Dual-operation system, working state control method and device and storage medium

    CN110502928A