Ward calling system and method based on FreeSWITCH
Through the FreeSWITCH-based ward call system, the problems of single functions and limited expansion of traditional systems are solved, high reliability and easy scalability are achieved, multi-level calls and data storage are supported, and medical response efficiency and patient experience are improved.
Patent Information
- Application Number
- CN202411134730.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-19
- Publication Date
- 2025-01-07
AI Technical Summary
The traditional ward call system has a single function and limited capacity expansion, and cannot flexibly meet the call needs in the case of multi-nurse machines. Data storage and management are inconvenient, and the equipment is susceptible to hardware and network problems, resulting in response delays and data isolation.
Adopt the FreeSWITCH-based ward call system, including terminal call equipment, management service module, FreeSWITCH middleware service module and server, and realize audio and video call service through SIP account registration, XML processing and packet request processing, and equipment monitoring is carried out through EMQX. and data storage, supporting multi-level call, co-vibration and vibration-sustaining functions.
It realizes the high reliability and easy scalability of the system, reduces operation and maintenance costs, supports flexible call scenario configuration and data storage, and improves the response efficiency of medical staff and patient experience.
Smart Images

Figure CN119276982A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of ward calling technology, and in particular to a ward calling system and method based on FreeSWITCH. Background Art
[0002] The traditional ward call system has relatively simple functions and has great limitations in storage and equipment expansion. With the development of society and the advancement of science and technology, the demand for ward call systems in medical institutions has also increased. Therefore, a multifunctional, easily expandable, efficient and stable system is needed to meet the personalized and diversified needs of medical institutions, thereby improving the quality of medical services and improving patients' medical experience.
[0003] The traditional ward call system has the following problems:
[0004] The expansion of wards and beds is limited by hardware equipment, and issues such as the load capacity of the host hardware equipment and the line network need to be considered.
[0005] Traditional ward equipment cannot flexibly meet the needs of sequential ringing (two or more nurse machines / duty machines ring the first nurse machine / duty machine first according to the configuration, and when the call is not answered, it is postponed to the second nurse machine / duty machine) and simultaneous ringing (two or more nurse machines / duty machines ring at the same time) when there are multiple nurse machines / duty machines.
[0006] When medical institutions are unable to respond to patients in a timely manner due to a shortage of nursing staff, the telephone system cannot automatically step through the calls or transfer the calls.
[0007] The call lines / processes of traditional ward equipment are relatively fixed and single, and it is impossible to flexibly add or change the target machine / called machine.
[0008] Due to hardware or storage limitations, call record and data storage in traditional ward call systems are not conducive to long-term maintenance and management.
[0009] The isolation of relevant data such as patients and call records is not conducive to the integration and reuse of such data in the internal systems of medical institutions.
[0010] Traditional call equipment may not work properly due to physical line loss, hardware failure, network problems, etc., and cannot be discovered and handled in a timely manner. Summary of the invention
[0011] In view of this, the present invention provides a ward calling system and method based on FreeSWITCH.
[0012] The present invention discloses a ward calling system based on FreeSWITCH, which comprises a terminal calling device, a management service module, a FreeSWITCH middleware service module, and a FreeSWITCH server;
[0013] The terminal calling device is used to provide calling services for users; the management service module is used to perform related operations on each terminal calling device; related operations include device binding, SIP account creation and allocation management, and device condition monitoring;
[0014] The FreeSWITCH middleware service module is used to provide related services; related services include SIP call account registration for terminal call equipment, encapsulation of FreeSWITCH instruction set and XML processing functions, and data packet request and reception processing;
[0015] The FreeSWITCH server is used to provide the required services for the entire system; the required services include audio and video call services.
[0016] Furthermore, the device binding includes:
[0017] The terminal calling device accesses the network environment; the terminal calling device initiates a call to the backend service interface to upload the device information; the backend service logic determines whether the terminal calling device is bound and the SIP account is assigned; the backend service queries the SIP associated account of the device through the device information; the terminal calling device is bound to the specific location information of the ward and room; the backend service stores the associated data of the terminal calling device information and the user's related information; the user's related information includes wards, rooms and beds; creates SIP account information through the FreeSWITCH middleware service module; reloads the FreeSWITCH server; sends instructions through the FreeSWITCH middleware service module to make the FreeSWITCH server reload the latest XML configuration code; stores the device and SIP account association information through the backend service; the backend service returns the SIP account data to the caller after the call ends.
[0018] Furthermore, the terminal calling device SIP calling account registration includes:
[0019] The terminal calling device accesses the network environment; the terminal calling device obtains the SIP account information through device binding and then calls the FreeSWITCH server to register the SIP account;
[0020] The FreeSWITCH server writes the SIP account and IP address registered by the terminal calling device into the table; the FreeSWITCH server returns the SIP registration result data to the terminal calling device.
[0021] Furthermore, the calling process of the terminal calling the device is:
[0022] The terminal calling device initiates a call and requests the FreeSWITCH server to establish a-leg;
[0023] FreeSWITCH server hits the dial plan by configuring and setting up b-leg;
[0024] The FreeSWITCH server listens to b-leg and sends a notification waiting for a response;
[0025] After b-leg answers, the FreeSWITCH server bridges a-leg and b-leg and pushes rtp streaming media to establish an audio and video call.
[0026] Furthermore, it also includes a database and file service module, which is used to store all resources and data required for system operation, including patient information, ward information, call records, equipment information and operating status.
[0027] Furthermore, it also includes device monitoring, which uses EMQX as the MQTT message service, and listens to device subscription message events through the Webhook hook component and pushes them to the management service module to update the device operation status in real time. The device monitoring page is viewed through the device management module.
[0028] Furthermore, when the terminal calling device is connected to the network, the business service is accessed according to the system preset address and the terminal calling device information is uploaded;
[0029] The management service module is used to determine whether the terminal calling device is bound and registered; if the terminal calling device is bound, SIP data is directly returned; if the terminal calling device is not bound, the device binding process is entered and a SIP account is created.
[0030] Furthermore, the SIP account creation includes:
[0031] Create an xml file in the FreeSWITCH installation directory through the FreeSWITCH middleware;
[0032] After the SIP account is created, include the created account in the FreeSWITCH calling plan code;
[0033] After binding and creating a SIP account, the data record of the relationship between the device and the SIP account is stored in the database;
[0034] The newly created or modified XML file is reloaded into the FreeSWITCH server by sending instructions through the FreeSWITCH middleware using an ESL connection to make the configuration in the XML take effect immediately;
[0035] Simultaneous call: load the XML document through FreeSWITCH middleware to locate the specified XML node tree and modify the corresponding nurse station extension call plan code;
[0036] Sequential call / multi-level call: load the XML document through FreeSWITCH middleware to locate the specified XML node tree and modify the corresponding nurse station extension call plan code;
[0037] By configuring the url parameters, specify the service interface / method / function to parse the FreeSWITCH XML call record data and store it in the business database.
[0038] Furthermore, simultaneous calls and sequential calls / multi-level calls are configured according to actual conditions and pre-configured through the user configuration function provided by the management service module. The FreeSWITCH middleware function operates the XML tree positioning node and sets or replaces the original call code after processing through the string function. At the same time, the modified XML is connected through the ESL connection and then sent to FreeSWITCH with an XML reload instruction to reload the XML configuration file, so that the changed call code takes effect immediately; the patient initiates a call through the terminal calling device, the FreeSWITCH server receives and processes the call request, and the FreeSWITCH server transfers the call to the pre-designated party; the medical staff processes the call information after receiving it at the nurse station terminal; at the same time, the system monitors the operating status and call status of the equipment in real time; all data will be stored in the database for subsequent review.
[0039] The present invention also discloses a ward calling method based on FreeSWITCH, which is applicable to any of the above-mentioned ward calling systems based on FreeSWITCH, and comprises:
[0040] The terminal calling device provides calling services for users; the management service module performs relevant operations on each terminal calling device; related operations include device binding, SIP account creation and allocation management, and device condition monitoring;
[0041] The FreeSWITCH middleware service module provides related services; related services include SIP call account registration for terminal call devices, encapsulation of FreeSWITCH instruction sets and XML processing functions, and data packet request and reception processing;
[0042] The FreeSWITCH server provides the required services for the entire system; the required services include audio and video call services.
[0043] Due to the adoption of the above technical solution, the present invention has the following advantages:
[0044] High reliability: FreeSWITCH server has high availability and fault tolerance, which can ensure efficient and stable operation of the system.
[0045] Easy to expand: The system has good business carrying capacity and can support multi-channel audio and video calls at the same time. It is easy to expand the call equipment such as nurse stations, wards, beds, corridors, etc. in medical institutions.
[0046] Cost-effectiveness: The system has high reliability and can reduce operation and maintenance costs. It has flexible deployment methods and supports LAN deployment and cloud deployment. Medical institutions can make a comprehensive assessment based on their own computer rooms, network construction, operation and maintenance, human resources and other resources to choose the most economical deployment method. At the same time, the system can reduce the number of trips between medical staff and patients due to inconvenient information communication, thereby improving medical work efficiency and reducing medical costs.
[0047] Adapt to flexible and changeable call scenarios: The system's call line changes are flexible, such as simultaneous ringing of multiple extensions, sequential ringing, multi-level calling, etc., and can be configured and managed according to the specific needs of medical institutions to meet personalized and diversified call scenario requirements.
[0048] Rich interfaces: Multi-protocol interfaces including call data are provided through back-end services, which can be used for docking with internal systems of the organization or third-party systems. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in the embodiments of the present invention. For ordinary technicians in this field, other drawings can also be obtained based on these drawings.
[0050] Figure 1 A schematic diagram of a FreeSWITCH-based ward call system according to an embodiment of the present invention;
[0051] Figure 2 A schematic diagram of a device binding process according to an embodiment of the present invention;
[0052] Figure 3 A schematic diagram of a device registration process according to an embodiment of the present invention;
[0053] Figure 4 The figure is a schematic diagram of a device call according to an embodiment of the present invention. DETAILED DESCRIPTION
[0054] The present invention is further described in conjunction with the accompanying drawings and embodiments, and the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by ordinary technicians in this field should fall within the scope of protection of the embodiments of the present invention.
[0055] See also Figure 1The present invention provides an embodiment of a ward call system based on FreeSWITCH, which includes:
[0056] Terminal calling equipment: including but not limited to calling equipment installed at nurse stations, wards, beds, doorways, corridors, etc.
[0057] Management service module: The management service module is used to bind each terminal calling device, create and allocate SIP accounts, monitor equipment conditions, and provide diversified interface services.
[0058] FreeSWITCH middleware service module: It serves as a bridge for communication between the management service module and the FreeSWITCH server, including but not limited to SIP call account registration of terminal call devices, encapsulation of FreeSWITCH instruction set and XML processing functions, and data packet request and reception processing.
[0059] Database and file service module: provides database and file system storage services for the entire business system.
[0060] FreeSWITCH server: provides audio and video calling services and other services for the entire business system.
[0061] See also Figure 2 , the process of device binding is:
[0062] Device networking: The terminal calls the device to access the network environment.
[0063] Upload device information: The terminal calls the device to initiate a call to the backend service interface.
[0064] Bound or not: The backend service logic determines whether the device is bound and the SIP account is assigned.
[0065] Query SIP account: The backend service queries the SIP associated account of the device through device information.
[0066] Bind device: Bind the device to the specific location information of the ward or room [location information includes: ward 101, bed 01 in ward 101, ward nurse station, etc.].
[0067] Record equipment and ward relationship data: store equipment information and related data such as wards, rooms, and beds through back-end services.
[0068] Create a SIP account: Create SIP account information through FreeSWITCH middleware.
[0069] Reloading the FreeSWITCH server XML configuration: refers to sending instructions through the FreeSWITCH middleware to make the FreeSWITCH server reload the latest XML configuration code.
[0070] Record device and SIP account relationship data: store device and SIP account association information through backend services.
[0071] Returned SIP account data: refers to the SIP account data returned to the caller by the backend service after the call is completed.
[0072] See also Figure 3 , the process of device registration is:
[0073] Device networking: The terminal calls the device to access the network environment.
[0074] Call the FreeSWITCH server to register a SIP account: The terminal calls the device through Figure 2 The process shown in the figure obtains the SIP account information and then calls the FreeSWITCH server for registration.
[0075] FreeSWITCH server records SIP account and IP data: FreeSWITCH server writes the SIP account and IP address registered by the terminal calling device into the table.
[0076] Return SIP registration result: FreeSWITCH returns SIP registration result data to the terminal calling device.
[0077] See also Figure 4 , the process of device calling is:
[0078] The device initiates a call and requests FreeSWITCH to establish a-leg.
[0079] FreeSWITCH hits the dialplan and builds b-leg through the configuration in XML;
[0080] FreeSWITCH monitors b-leg and sends notifications [ringing, answering, hanging up] and waits for answer;
[0081] After b-leg answers, FreeSWITCH bridges a-leg and b-leg and pushes RTP streaming media to establish an audio and video call.
[0082] FreeSWITCH itself is an open source voice communication soft switch platform. It supports cross-platform deployment, has good scalability, supports multiple protocols, etc. Therefore, using FreeSWITCH as a SIP service in the ward call system has good carrying capacity, is easy to expand the capacity of call equipment such as nurse stations, corridors, wards, beds, etc., and supports real-time high-definition audio and video multi-way calls. Interacting with the FreeSWITCH server through the FreeSWITCH middleware service module reduces the coupling between the business service and the FreeSWITCH server, and improves the flexibility and scalability of the business system. It can easily cope with complex business scenarios of medical institutions, support call transfer, multi-machine simultaneous ringing, sequential ringing, step-by-step calling and other functions, and support ESL connection calls to dynamically change call lines. It can independently store CDR call lists, recording files and other related data on the server, support long-term storage and easy expansion, and is theoretically not limited by local storage hardware. The system supports terminal call equipment condition monitoring, which is convenient for timely tracking and handling of equipment abnormalities.
[0083] Terminal calling devices can choose operating system devices such as Android, Linux, VxWorks, etc., and use open source SIP protocol stacks such as LinPhone, SIPX, PJSIP, OSIP as the communication protocol library with FreeSWITCH. These devices are installed in nurse stations, wards, corridors, etc., including but not limited to display screens, call buttons, keys, etc., and can initiate calls, hang up, and other interactive operations through these devices.
[0084] FreeSWITCH is used as the SIP service to handle all audio, video calls, recording and other services in the system, providing the system with stable, reliable and efficient services.
[0085] Use FreeSWITCH middleware to decouple the management service module and the FreeSWITCH server to interact with it, and uniformly manage FreeSWITCH operation and call parameters by reading and writing FreeSWITCH code configuration files and encapsulating operation instructions, including but not limited to encapsulation of FreeSWITCH instructions, XML document operation functions, and ESL connection data packet request and reception processing, thereby standardizing and simplifying FreeSWITCH call configuration management.
[0086] The management service module provides basic services in ward management, including business functions such as ward management, patient management, system management, terminal equipment management, equipment monitoring and operation status.
[0087] The database and file service modules store all resources and data required for system operation, including patient information, ward information, call records, equipment information and operating status.
[0088] The system services of this embodiment can be deployed to a local area network server or a cloud server, but the device side and the service network must be interconnected.
[0089] The LAN server and cloud server can choose the operating system as needed. The Linux version of FreeSWITCH can be downloaded from the source code for compilation and installation. The Windows version has a ready-made version, which can also be compiled and packaged by Visual Studio. After the installation is complete, configure the gateway, modify the SIP default listening port, ESL default port, account password, SIP account default password, default call time limit, etc. The cloud server pays attention to NAT, firewall and other restrictions and opens the FreeSWITCH server SIP service listening port, ESL service listening port, RTP default 16384-32768 port on the network where the server is located, and configure the network whitelist as needed. After the configuration is completed, dial the FreeSWITCH internal number to test whether the FreeSWITCH call process is smooth.
[0090] The management service module and FreeSWITCH middleware service module use Java as the back-end programming language, and the front-end page of the management service module uses Vue.js as the development framework.
[0091] The database service can select Mysql, Oracle, SQLServer and other relational databases as the business database of the system.
[0092] The device call end can choose Android Studio, Qt, GTK+, Workbench IDE and other tools to develop the user interaction interface according to the operating system. The SIP protocol library can use open source SIP protocol stacks such as LinPhone, SIPX, PJSIP, OSIP as the communication protocol library with FreeSWITCH.
[0093] Equipment monitoring uses EMQX as the MQTT message service to listen to device subscription message events through the Webhook hook component and push them to the management service module to update the equipment operation status in real time. The equipment monitoring page is viewed through the equipment management module.
[0094] Terminal call devices can be installed in wards, beds, ward doors, nurse stations, and corridors. When the device is connected to the network, it accesses business services according to the system preset address and uploads device information including MAC, IP, etc.
[0095] The management service module determines whether the device is bound and registered through the device information [binding: refers to the location information such as the nurse station, room, bed, etc., which needs to be entered into the system in advance]. If the device is bound, it directly returns the SIP data.
[0096] The management service module determines whether the device is bound and registered based on the device information [binding: refers to the location information such as bed, room, etc.]. If the device is not bound, it will enter the binding process and create a SIP account.
[0097] SIP account creation:
[0098] Use the FreeSWITCH middleware to create the xxx.xml file in the conf\directory\default directory under the FreeSWITCH installation directory.
[0099] After the SIP account is created, the created account needs to be included in the FreeSWITCH calling plan code.
[0100] FreeSWITCH Calling Plans:
[0101] Through the FreeSWITCH middleware, in the \conf\dialplan directory under the FreeSWITCH installation directory, you can add your own call plan code in the \conf\dialplan\default.xml file. You can also import the call plan in the specified directory by adding the following code snippet:
[0102] <X-PRE-PROCESS cmd="include"data="default / *.xml" / >
[0103] Then put the individual call codes into the \conf\dialplan\default directory.
[0104] The following is a snippet of the conf\dialplan\default\50001.xml call plan code:
[0105]
[0106] After binding and creating the SIP account, the data record of the relationship between the device and the SIP account is stored in the database.
[0107] The newly created or modified XML file is reloaded into the FreeSWITCH server by sending instructions through the FreeSWITCH middleware using an ESL connection to make the configuration in the XML take effect immediately.
[0108] Simultaneous call: Load the XML document through FreeSWITCH middleware to locate the specified XML node tree and modify the corresponding nurse station extension call plan code
[0109] The call plan matches the nurse station extension 10001 and calls 10002 at the same time. The sample code is as follows:
[0110]
[0111]
[0112] The call plan matches the nurse station extension 10002 and calls 10001 at the same time. The sample code is as follows:
[0113]
[0114] Sequential call / multi-level call: load the XML document through FreeSWITCH middleware to locate the specified XML node tree and modify the corresponding nurse station extension call plan code
[0115] The call plan is used to match the nurse station extension 10001. If there is no answer for 15 seconds, the extension 10002 is called. The sample code is as follows:
[0116]
[0117]
[0118] Use FreeSWITCH to send the call record data back to the business system for storage and recording. Sample code:
[0119]
[0120] By configuring the url parameters, specify the service interface / method / function to parse the FreeSWITCH XML call record data and store it in the business database.
[0121] The simultaneous and sequential ringing / multi-level calls are configured according to the actual situation and pre-configured through the user configuration function provided by the management service module. The FreeSWITCH middleware function operates the XML tree positioning node and sets or replaces the original call code after processing by the string function. At the same time, the modified XML is connected through the ESL and then sent to FreeSWITCH. The XML reload instruction reloads the XML configuration file, so that the changed call code takes effect immediately. The patient initiates a call through the terminal calling device, and the FreeSWITCH server receives and processes the call request. The FreeSWITCH server transfers the call to the pre-configured nurse station, duty extension, etc.; medical staff processes the call information after receiving it at the nurse station terminal; at the same time, the system monitors the operating status and call status of the equipment in real time; all data will be stored in the database for subsequent review.
[0122] XML Extensible Markup Language (Extensible Markup Language), a subset of the standard generalized markup language, can be used to mark data and define data types. It is a source language that allows users to define their own markup languages.
[0123] ESL (Event Socket Library) is a custom protocol provided by FreeSWITCH's mod_event_socket module. This protocol can be used to control FreeSWITCH to execute related command operations: outbound calls, call bridging, call playback, etc. This module can also be used to monitor some events distributed by FreeSWITCH during a call. For example, when FreeSWITCH receives a call instruction, a channel will be created, and a channel creation event will be generated. Through ESL, it is very convenient to monitor and control the call process.
[0124] MQTT (Message Queue Telemetry Transport) is a message protocol based on the publish / subscribe paradigm under the ISO standard (ISO / IEC PRF 20922). It works on the TCP / IP protocol family and is a publish / subscribe message protocol designed for remote devices with low hardware performance and low bandwidth.
[0125] EMQX (EMQ for short) is an open source, highly scalable, highly available, highly concurrent distributed MQTT messaging service that supports multiple IoT protocols.
[0126] The present invention also provides an embodiment of a ward calling method based on FreeSWITCH, which is applicable to the ward calling system based on FreeSWITCH described in the above embodiment, and comprises:
[0127] The terminal calling device provides calling services for users; the management service module performs relevant operations on each terminal calling device; related operations include device binding, SIP account creation and allocation management, and device condition monitoring;
[0128] The FreeSWITCH middleware service module provides related services; related services include SIP call account registration for terminal call devices, encapsulation of FreeSWITCH instruction sets and XML processing functions, and data packet request and reception processing;
[0129] The FreeSWITCH server provides the required services for the entire system; the required services include audio and video call services.
[0130] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention rather than to limit it. Although the present invention has been described in detail with reference to the above embodiments, ordinary technicians in the relevant field should understand that the specific implementation methods of the present invention can still be modified or replaced by equivalents. Any modification or equivalent replacement that does not depart from the spirit and scope of the present invention should be covered within the scope of protection of the claims of the present invention.
Claims
1. A ward call system based on FreeSWITCH, characterized in that: Including terminal calling equipment, management service module, FreeSWITCH middleware service module, FreeSWITCH server; The terminal calling device is used to provide calling services for users; the management service module is used to perform related operations on each terminal calling device; related operations include device binding, SIP account creation and allocation management, and device condition monitoring; The FreeSWITCH middleware service module is used to provide related services; related services include SIP call account registration for terminal call equipment, encapsulation of FreeSWITCH instruction set and XML processing functions, and data packet request and reception processing; The FreeSWITCH server is used to provide the required services for the entire system; the required services include audio and video call services.
2. The FreeSWITCH-based ward call system according to claim 1, characterized in that: The device binding includes: The terminal calling device accesses the network environment; the terminal calling device initiates a call to the backend service interface to upload the device information; the backend service logic determines whether the terminal calling device is bound and the SIP account is assigned; the backend service queries the SIP associated account of the device through the device information; the terminal calling device is bound to the specific location information of the ward and room; the backend service stores the associated data of the terminal calling device information and the user's related information; the user's related information includes wards, rooms and beds; creates SIP account information through the FreeSWITCH middleware service module; reloads the FreeSWITCH server; sends instructions through the FreeSWITCH middleware service module to make the FreeSWITCH server reload the latest XML configuration code; stores the device and SIP account association information through the backend service; the backend service returns the SIP account data to the caller after the call ends.
3. The FreeSWITCH-based ward call system according to claim 1, characterized in that: The terminal calling device SIP calling account registration includes: The terminal calling device accesses the network environment; the terminal calling device obtains the SIP account information through device binding and then calls the FreeSWITCH server to register the SIP account; The FreeSWITCH server writes the SIP account and IP address registered by the terminal calling device into the table; the FreeSWITCH server returns the SIP registration result data to the terminal calling device.
4. The ward call system based on FreeSWITCH according to claim 1, characterized in that: The calling process of the terminal calling the device is as follows: The terminal calling device initiates a call and requests the FreeSWITCH server to establish a-leg; FreeSWITCH server hits the dial plan by configuring and setting up b-leg; The FreeSWITCH server listens to b-leg and sends a notification waiting for a response; After b-leg answers, the FreeSWITCH server bridges a-leg and b-leg and pushes rtp streaming media to establish an audio and video call.
5. The ward call system based on FreeSWITCH according to claim 1, characterized in that: It also includes a database and file service module, which is used to store all resources and data required for system operation, including patient information, ward information, call records, equipment information and operating status.
6. The ward call system based on FreeSWITCH according to claim 1, characterized in that: It also includes device monitoring, which uses EMQX as the MQTT message service. It listens to device subscription message events through the Webhook hook component and pushes them to the management service module to update the device operation status in real time. The device monitoring page is viewed through the device management module.
7. The ward call system based on FreeSWITCH according to claim 1, characterized in that: When the terminal calling device is connected to the network, the business service is accessed according to the system preset address and the terminal calling device information is uploaded; The management service module is used to determine whether the terminal calling device is bound and registered; If the terminal calling device has been bound, the SIP data will be returned directly; If the terminal calling device is not bound, enter the device binding process and create a SIP account.
8. The ward call system based on FreeSWITCH according to claim 1, characterized in that: The SIP account creation includes: Create an xml file in the FreeSWITCH installation directory through the FreeSWITCH middleware; After the SIP account is created, include the created account in the FreeSWITCH calling plan code; After binding and creating a SIP account, the data record of the relationship between the device and the SIP account is stored in the database; The newly created or modified XML file is reloaded into the FreeSWITCH server by sending instructions through the FreeSWITCH middleware using an ESL connection to make the configuration in the XML take effect immediately; Simultaneous call: load the XML document through FreeSWITCH middleware to locate the specified XML node tree and modify the corresponding nurse station extension call plan code; Sequential call / multi-level call: load the XML document through FreeSWITCH middleware to locate the specified XML node tree and modify the corresponding nurse station extension call plan code; By configuring the url parameters, specify the service interface / method / function to parse the FreeSWITCH XML call record data and store it in the business database.
9. The FreeSWITCH-based ward call system according to claim 8, characterized in that: Simultaneous calls and sequential calls / multi-level calls are configured according to actual conditions and pre-configured through the user configuration function provided by the management service module. The FreeSWITCH middleware function operates the XML tree positioning node and sets or replaces the original call code after processing through the string function. At the same time, the modified XML is connected through the ESL connection and the XML reload instruction is sent to FreeSWITCH to reload the XML configuration file, so that the changed call code takes effect immediately; the patient initiates a call through the terminal calling device, the FreeSWITCH server receives and processes the call request, and the FreeSWITCH server transfers the call to the pre-designated party; the medical staff processes the call information after receiving it at the nurse station terminal; at the same time, the system will monitor the operating status and call status of the equipment in real time; all data will be stored in the database for subsequent review.
10. A ward calling method based on FreeSWITCH, applicable to the ward calling system based on FreeSWITCH according to any one of claims 1 to 9, characterized in that: include: Terminal calling equipment provides calling services for users; The management service module performs relevant operations on each terminal calling device; Related operations include device binding, SIP account creation and allocation management, and device condition monitoring; The FreeSWITCH middleware service module provides related services; related services include SIP call account registration for terminal call devices, encapsulation of FreeSWITCH instruction sets and XML processing functions, and data packet request and reception processing; The FreeSWITCH server provides the required services for the entire system; the required services include audio and video call services.