A method and device for monitoring intelligent outbound call delay
By monitoring the response delay time of the voice recognition server to the preset audio data, it is determined whether there is a delay problem in the intelligent outgoing call system, which solves the problem of inaccurate monitoring of the intelligent outgoing call delay and improves the accuracy of judgment.
Patent Information
- Application Number
- CN202411644154.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-18
- Publication Date
- 2025-04-04
AI Technical Summary
During the intelligent outgoing call process, the voice recognition server fails to convert the voice content into text content in time, resulting in delays in the intelligent robot responding to user requests, affecting the efficiency of intelligent outgoing call.
By acquiring preset audio data, the monitoring system sends and records the transmission time of the data packet, receives and records the reception time in the response information of the voice recognition server, calculates the response delay time, and determines whether there is an out-of-call service delay in the voice recognition server.
Accurately determine whether the voice recognition server has delayed out of call service, avoid judgment deviations caused by the difficulty of processing rare words, and improve judgment accuracy.
Smart Images

Figure CN119763580A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of intelligent outbound call technology, and in particular to a method and device for monitoring intelligent outbound call delay. Background Art
[0002] During the intelligent outbound calling process, the intelligent robot converts voice content into text content through the voice recognition server. The intelligent robot matches the corresponding voice information based on the text content and responds. However, in the actual application process, it will be affected by certain factors, causing the voice recognition server to fail to convert the voice content into text content in time, resulting in delays in the intelligent robot's response to user requests, causing users to wait for a long time, which in turn affects the efficiency of intelligent outbound calling. Summary of the invention
[0003] The purpose of the embodiments of the present application is to provide a method and device for monitoring intelligent outbound call delay, the main purpose of which is to improve the accuracy of determining whether an outbound call delay occurs in a voice recognition server.
[0004] In order to solve the above technical problems, the embodiments of the present application provide the following technical solutions:
[0005] The first aspect of the present application provides a method for monitoring an intelligent outbound call delay, comprising:
[0006] Acquire preset audio data for an outbound call test, wherein the preset audio data at least contains a data packet in which sound occurs;
[0007] Sending the preset audio data to a speech recognition server, and recording the sending time of the data packet in which the sound appears;
[0008] Receiving response information fed back by the speech recognition server, wherein the response information includes a reception time of a data packet responding to the sound;
[0009] Determining a response delay time of the preset audio data according to the sending time and the receiving time;
[0010] It is determined whether the voice recognition server has an outbound call service delay according to the response delay time.
[0011] A second aspect of the present application provides an intelligent outbound call delay monitoring device, comprising:
[0012] An acquisition unit, used for acquiring preset audio data of an outbound call test, wherein the preset audio data at least contains a data packet in which sound occurs;
[0013] A recording unit, used to send the preset audio data in the acquisition unit to the speech recognition server, and record the sending time of the data packet in which the sound appears;
[0014] A receiving unit, used to receive the response information fed back by the speech recognition server in the recording unit, wherein the response information includes the receiving time of the data packet responding to the sound;
[0015] a determining unit, configured to determine a response delay time of the preset audio data according to a sending time in the recording unit and a receiving time in the receiving unit;
[0016] The judging unit is used to determine whether there is an outbound call service delay in the speech recognition server according to the response delay time in the determining unit.
[0017] A third aspect of the present application provides a storage medium, which includes a stored program, and when the program is run, controls the device where the storage medium is located to execute the above-mentioned intelligent outbound call delay monitoring method.
[0018] A fourth aspect of the present application provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method for monitoring the intelligent outbound call delay described in any one of the above items is implemented.
[0019] Compared with the prior art, the present invention provides a method and device for monitoring intelligent outbound call delay, which obtains preset audio data and the sending time and receiving time of the data packet in which the monitoring system sends and receives the sound, determines the response delay time of the preset audio data according to the sending time and receiving time, and then judges whether the voice recognition server has an outbound call service delay according to the response delay time. Through the above series of standardized processes, the response delay time is accurately determined, avoiding the situation where the voice recognition server response delay time is inaccurately judged based on the number of uncommon characters, greatly improving the accuracy of judging whether the voice recognition server has an outbound call service delay. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] By reading the detailed description below with reference to the accompanying drawings, the above and other purposes, features and advantages of the exemplary embodiments of the present application will become easy to understand. In the accompanying drawings, several embodiments of the present application are shown in an exemplary and non-limiting manner, and the same or corresponding reference numerals represent the same or corresponding parts, wherein:
[0021] Figure 1 A flow chart of a method for monitoring an intelligent outbound call delay provided by an embodiment of the present invention is shown;
[0022] Figure 2 A flow chart of another intelligent outbound call delay monitoring method provided by an embodiment of the present invention is shown;
[0023] Figure 3 A flow chart of another intelligent outbound call delay monitoring method provided in an embodiment of the present invention is shown;
[0024] Figure 4 A block diagram showing a composition of an intelligent outbound call delay monitoring device provided by an embodiment of the present invention;
[0025] Figure 5 A block diagram showing the composition of another intelligent outbound call delay monitoring device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0026] The exemplary embodiments of the present application will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present application are shown in the accompanying drawings, it should be understood that the present application can be implemented in various forms and should not be limited by the embodiments described herein. On the contrary, these embodiments are provided in order to enable a more thorough understanding of the present application and to fully convey the scope of the present application to those skilled in the art.
[0027] It should be noted that, unless otherwise specified, the technical terms or scientific terms used in this application should have the common meanings understood by technicians in the field to which this application belongs.
[0028] During the intelligent outbound calling process, the intelligent robot converts voice content into text content through the voice recognition server. The intelligent robot matches the corresponding voice information based on the text content and responds. However, in the actual application process, it will be affected by certain factors, causing the voice recognition server to fail to convert the voice content into text content in time, resulting in delays in the intelligent robot's response to user requests, causing users to wait for a long time, which in turn affects the efficiency of intelligent outbound calling.
[0029] Based on this, the inventor of this case thought of starting from testing the voice recognition server based on the audio data, and further determining the response delay of the preset audio data by monitoring the sending time and receiving time of the audio data. This method avoids the judgment bias caused by the different difficulty levels of processing uncommon characters, and can accurately determine the response delay time of the voice recognition server in the process of processing audio data, and then accurately determine whether the voice recognition server has an outbound call service delay.
[0030] To this end, the inventor of the present application proposes an intelligent outbound call delay monitoring method, which can automatically determine whether there is an outbound call service delay in the process of converting voice content into text content by the voice recognition server, so as to more accurately determine whether there is an outbound call delay in the voice recognition server. Figure 1 As shown, when a computer, server or other device executes a method for monitoring an intelligent outbound call delay according to an embodiment of the present invention, it includes at least 101-105.
[0031] 101. Obtain preset audio data for an outbound call test.
[0032] In this step, the preset audio data of the outbound call test obtained is a recording data with clear and lossless sound quality, which can be a recording clip or a whole recording. When the preset audio data needs to be transmitted, the preset audio data will enter the preset transmission channel. In this transmission channel, in order to ensure that the data can be transmitted efficiently, accurately and orderly, it will be divided into multiple data packets according to the established rules. The multiple data packets are data packets containing sound information or features, that is, the preset audio data contains at least a data packet in which sound appears, wherein the data packet in which sound appears is a data packet including sound information or features, which can specifically be audio data, format identification, channel and other sound information, or spectrum, volume, rhythm, timbre and other feature information. Exemplarily, the preset audio data is divided into multiple ordered data packets, and any data packet contains a certain amount of data, which may contain information such as timestamps and sequence numbers to ensure the order and synchronization of the audio data. The established rules can be based on the width of the transmission channel or the memory size of the speech recognition server. For example, when the transmission channel width is 5M, the preset audio data can be evenly divided into data packets with a capacity of 0.005M. The multiple ordered data packets may be data packets with the same data volume or data packets with different data volumes. In addition, the multiple data packets may contain a first data packet in which sound appears for the first time, a second data packet in which sound appears for the last time, and at least one intermediate data packet. The purpose of including the first data packet in the multiple ordered data packets is to determine whether the speech recognition server can accurately and timely identify the start of the recorded call when the speech recognition server identifies the start of the recorded call, and the purpose of including the second data packet in the multiple ordered data packets is to determine whether the speech recognition server can timely and accurately determine the end of the recording when the recording ends.
[0033] In some embodiments, the preset audio data may be original audio data with good audio quality. Furthermore, in order to ensure the accuracy of the preset audio data, the preset audio data may also be pre-processed audio data, wherein the specific operations of processing the audio data may be noise reduction processing, echo cancellation, volume normalization, and audio enhancement processing, etc. As for when to obtain the preset audio data, the preset audio data may be obtained when the staff turns on the monitoring system; or the preset audio data may be obtained within a period of time after the staff turns on the monitoring system.
[0034] 102. Record the sending time of the data packet with the sound.
[0035] Before recording the sending time of the data packet with the sound in this step, it is also necessary to establish a websocket connection between the monitoring system and the speech recognition server based on the websocket protocol so that the speech recognition server can receive the preset audio data, wherein websocket is a protocol for full-duplex communication on a single TCP connection, and only one handshake is required between the monitoring system and the speech recognition server, and a permanent connection can be created between the two, and two-way data transmission can be achieved, so that the speech recognition server can parse and process the received preset audio data, and ensure that the response information fed back can be obtained by the monitoring system. Specifically, the speech recognition server includes but is not limited to Automatic Speech Recognition (ASR), Whisper speech recognition, and ESPnet.
[0036] After the voice recognition server establishes a connection with the monitoring system, the monitoring system can send the data packet in the preset audio data obtained in 101 to the voice recognition server, or perform some initialization operations after establishing the connection or wait for specific conditions to be met before sending the data packet, where the initialization operation includes but is not limited to: system load and resource status, network status detection, etc.
[0037] In this step, the monitoring system sends the preset audio data including multiple data packets to the speech recognition server, and when sending multiple data packets, records the sending time of each data packet. In this embodiment, the sending time of the data packet where the sound appears is recorded, wherein the data packet where the sound appears can be the first data packet where the sound appears for the first time, or the second data packet where the last sound ends, or an intermediate data packet between the first data packet and the second data packet, or a combination of the above data packets. It is worth noting that when sending multiple data packets, the monitoring system sends the multiple data packets one by one or in batches according to the natural order of the multiple data packets in the audio data, so as to ensure that the speech recognition server can recognize the audio content in the correct order.
[0038] 103. Receive response information fed back by the speech recognition server.
[0039] After sending the data packet to the speech recognition server, the speech recognition server parses and processes the received data packet and feeds back the response information to the monitoring system, wherein the response information includes the reception time of the data packet where the sound appears, for example, the response information of the first data packet includes the reception time of the first data packet, the response information of the second data packet includes the reception time of the second data packet, and the response information of the intermediate data packet includes the reception time of the intermediate data packet. After the monitoring system receives the response information of each data packet, the monitoring system will check whether the received response information is complete, such as whether it contains the necessary timestamp. If the response information is incomplete or there is an error, the monitoring system will record the corresponding error log and trigger a retry mechanism or alarm. If the monitoring system recognizes that the response information is complete, the response information is parsed, that is, the monitoring system locates the timestamp field of the reception time in the response information, and parses it according to its timestamp format using the corresponding parsing function, and then determines the reception time, and then matches the unique identifier of each data packet with the identifier of the data packet in the response information to determine the reception time of each data packet. In this embodiment, it is necessary to determine the receiving time of the data packet where the sound occurs according to the above method. It should be noted that the timestamp format can be UNIX format or ISO8601. The specific timestamp format is not limited here. If the timestamp format is UNIX, it is parsed according to the datetime function; if the timestamp format is ISO8601, it is parsed according to the strptime function.
[0040] 104. Determine a response delay time of the preset audio data.
[0041] In this step, the response delay time of the preset audio data is determined according to the sending time and the receiving time. In some embodiments, the response delay time of the preset audio data is determined according to the sending time of the data packet of the sound obtained in 102 and the receiving time of the data packet of the sound obtained in 103. For example, when the data packet of the sound is the first data packet and the second data packet, the response delay time of the preset audio data is determined to be the sum of the response delay time of the first data packet and the response delay time of the second data packet, wherein the response delay time of the first data packet is the time interval between the receiving time and the sending time of the first data packet, and the response delay time of the second data packet is the time interval between the receiving time and the sending time of the second data packet. Among them, the response delay time of the data packet of the sound specifically refers to the time interval from the moment when the system sends the data packet until the system successfully receives the response information fed back from the speech recognition server for the data packet. The response delay time of the data packet of the sound includes the delay time in the process of the speech recognition server processing the data packet, the processing time of the speech recognition server for the data packet in an ideal state, and the transmission time of the data packet between the monitoring system and the speech recognition server in an ideal state. The response delay time of the preset audio data is the response delay time of any data packet containing the sound in the preset audio data, and may also be the sum of the response delay times of multiple data packets containing the sound in the preset audio data. Exemplarily, the response delay time of the preset audio data may be the response delay time of the first data packet or the response delay time of the second data packet in the preset audio data, and the response delay time of the preset audio data may be the sum of the response delay time of the first data packet and the response delay time of the second data packet.
[0042] 105. Determine whether there is an outbound call service delay in the voice recognition server according to the response delay time.
[0043] In this step, the outbound call service delay refers to the time interval from the moment the preset audio data is sent to the voice recognition server until the monitoring system completely receives the last data information fed back by the voice recognition server for the preset audio data. During this time period, the voice recognition server fails to receive the preset audio data in time, fails to process the preset audio data in time, and / or fails to feed back the feedback information of the preset audio data in time.
[0044] After obtaining the response delay time of the preset audio data at 104, the preset value corresponding to the response delay time of any combination of data packets where the sound appears is combined to determine whether the voice recognition server has an outbound call service delay. Here, the data packet combination is a combination of different data packets. For example, the data packet where the sound appears includes a first data packet, a second data packet, and an intermediate data packet. The data packet combination can be a first data packet, or a second data packet, or an intermediate data packet. The data packet combination can be a combination of the first data packet and the second data packet, or a combination of the second data packet and the intermediate data packet, or a combination of the first data packet and the intermediate data packet. The data combination can also be a combination of the first data packet, the second data packet, and the intermediate data packet. Exemplarily, when the data packets where the sound appears are the first data packet, the second data packet, and an intermediate data packet, the first preset value corresponding to the first data packet, the second preset value corresponding to the second data packet, and the third preset value corresponding to the intermediate data packet are combined to determine whether the voice recognition server has an outbound call service delay. The first preset value is the shortest time for the first data packet to be delayed in response, that is, the first preset value refers to the time interval from the moment the system sends the first data packet to the time when the system successfully receives the response information fed back from the speech recognition server for this data packet under ideal conditions, that is, the first preset value does not include the processing delay of the first data packet by the speech recognition server during this time interval. The second preset value is the shortest time for the second data packet to be delayed in response, that is, the second preset value refers to the time interval from the moment the system sends the first data packet to the time when the system successfully receives the response information fed back from the speech recognition server for this data packet under ideal conditions, that is, the second preset value does not include the processing delay of the second data packet by the speech recognition server during this time interval. The third preset value is the shortest time for the intermediate data packet to be delayed in response, that is, the third preset value refers to the time interval from the moment the system sends the intermediate data packet to the time when the system successfully receives the response information fed back from the speech recognition server for this data packet under ideal conditions, that is, the third preset value does not include the processing delay of the intermediate data packet by the speech recognition server during this time interval.
[0045] In some embodiments, when the response delay time of each data packet included in the data packet combination is greater than the preset value corresponding to the data packet, it is determined that the voice recognition server has an outbound call service delay. Specifically, the above 105 has at least the following implementation methods:
[0046] Method 1: If the response delay time is the sum of the response delay times of the first data packet and the second data packet, it is judged according to the first preset value and the second preset value. If the response delay time of the first data packet is greater than or equal to the first preset value and the response delay time of the second data packet is greater than or equal to the second preset value, an outbound call service delay occurs. Alternatively, if the sum of the response delay time of the first data packet and the response delay time of the second data packet is greater than the sum of the first preset value and the second preset value, an outbound call service delay occurs. In this method, the response delay time of the first data packet and the response delay time of the second data packet are used to determine whether there is an outbound call service delay in the voice recognition server. The purpose is to accurately determine whether the voice recognition server can promptly recognize the appearance of sound in the preset audio data and whether the voice recognition server can promptly recognize the disappearance of sound in the preset audio data.
[0047] Mode 2: If the response delay time is the response delay time of the first data packet, then it is determined according to the first preset value that if the response delay time of the first data packet is greater than or equal to the first preset value, then an outbound service delay occurs. In this mode, the response delay time of the first data packet is used to determine whether the voice recognition server has an outbound service delay. The purpose is to determine whether a delay occurs when the voice recognition server recognizes the first occurrence of a sound in the preset audio data.
[0048] Mode 3: If the response delay time is the response delay time of the second data packet, it is determined according to the second preset value, that is, if the response delay time of the second data packet is greater than or equal to the second preset value, an outbound call service delay occurs. In this mode, the response delay time of the second data packet is used to determine whether the voice recognition server has an outbound call service delay. The purpose is to determine whether a delay occurs when the voice recognition server recognizes the end of the last sound in the preset audio data.
[0049] Method 4: If the response delay time is the response delay time of at least one intermediate data packet, then according to the preset value corresponding to the intermediate data packet, if the response delay time of the intermediate data packets is greater than or equal to the third preset value, an outbound call service delay occurs. Alternatively, if the sum of the response delay times of all intermediate data packets is greater than the product of the third preset value and the intermediate data packet, an outbound call service delay occurs. In this method, the response delay time of the intermediate data packet is used to determine whether there is an outbound call service delay in the voice recognition server. The purpose is to determine whether the voice recognition server is delayed when recognizing the data in any intermediate data packet other than the first appearance of the sound and the end of the last sound in the preset audio data.
[0050] Method 5: If the response delay time is the sum of the response delay times of the first data packet and at least one intermediate data packet, it is determined according to the first preset value and the third preset value. If the response delay time of the first data packet is greater than or equal to the first preset value and the response delay times of all intermediate data packets are respectively greater than or equal to the third preset value, an outbound call service delay occurs. Alternatively, if the sum of the response delay times of the first data packet and all intermediate data packets is greater than the product of the third preset value and the intermediate data packet and the sum of the first preset value, an outbound call service delay occurs. In this method, the response delay time of the first data packet and the response delay time of at least one intermediate data packet are used to determine whether there is an outbound call service delay in the voice recognition server. The purpose is to determine whether the voice recognition server has a delay from the time the voice recognition server recognizes the first occurrence of sound in the preset audio data and stops recognizing data in the intermediate data packet.
[0051] Mode 6: If the response delay time is the sum of the response delay times of the second data packet and at least one intermediate data packet, it is determined according to the second preset value and the third preset value. If the response delay time of the second data packet is greater than or equal to the second preset value and the response delay times of all intermediate data packets are respectively greater than or equal to the third preset value, an outbound call service delay occurs. Alternatively, if the sum of the response delay times of the second data packet and all intermediate data packets is greater than the product of the third preset value and the intermediate data packet and the sum of the second preset value, an outbound call service delay occurs. In this mode, the response delay time of the second data packet and the response delay time of at least one intermediate data packet are used to determine whether there is an outbound call service delay in the voice recognition server. The purpose is to determine whether the voice recognition server has a delay from the beginning of the voice recognition server recognizing the data in the intermediate data packet to the end of the last sound in the preset audio data.
[0052] Mode 7: If the response delay time is the sum of the response delay time of the first data packet, the response delay time of the second data packet, and the response delay time of at least one intermediate data packet, it is determined according to the first preset value, the second preset value, and the third preset value. If the response delay time of the first data packet is greater than or equal to the first preset value, the response delay time of the second data packet is greater than or equal to the second preset value, and the response delay time of all intermediate data packets is greater than or equal to the third preset value, then an outbound call service delay occurs. Alternatively, if the sum of the response delay times of the first data packet, the second data packet, and all intermediate data packets is greater than the product of the third preset value and the intermediate data packet and the sum of the first preset value and the second preset value, then an outbound call service delay occurs. In this mode, the response delay time of the first data packet, the response delay time of the second data packet, and the response delay time of at least one intermediate data packet are applied to determine whether there is an outbound call service delay in the voice recognition server. The purpose is to determine whether the voice recognition server recognizes the preset audio data from the time when the voice recognition server recognizes the first appearance of the sound in the preset audio data to the time when the last sound in the preset audio data ends. Whether the voice is delayed in the preset audio data.
[0053] In some other embodiments, each data packet has a corresponding preset value, and when the response delay time of a data packet is greater than the preset value corresponding to the data packet, it can be considered that the data packet is delayed. When the proportion of data packets in the data packet combination whose response delay time is greater than the corresponding preset value is greater than the preset proportion, an outbound call service delay occurs.
[0054] For example: when the response delay time is the sum of the response delay time of the first data packet, the response delay time of the second data packet and the response delay time of at least one intermediate data packet, it is judged according to the first preset value, the second preset value and the third preset value. Specifically, when the response delay time of the first data packet is greater than the first preset value, the first data packet is a delayed data packet. Similarly, it can be determined whether the second data packet and the intermediate data packet are delayed data packets. When the proportion of delayed data packets in the first data packet, the second data packet and at least one intermediate data packet is greater than the preset proportion, an outbound call service delay occurs. The proportion of delayed data packets represents the ratio of the number of delayed data packets to the total number of data packets in the data packet combination.
[0055] For another example: if the response delay time is the sum of the response delay time of the second data packet and the response delay time of at least one intermediate data packet, the delayed data packets in the second data packet and the intermediate data packets are determined according to the second preset value and the third preset value. When the proportion of delayed data packets in the second data packet and the at least one intermediate data packet is greater than the preset proportion, an outbound call service delay occurs. The proportion of delayed data packets represents the ratio of the number of delayed data packets to the total number of data packets in the data packet combination.
[0056] For another example: if the response delay time is the sum of the response delay time of the first data packet and the response delay time of at least one intermediate data packet, the delayed data packets in the first data packet and the intermediate data packets are determined according to the first preset value and the third preset value. When the proportion of delayed data packets in the first data packet and the at least one intermediate data packet is greater than the preset proportion, an outbound call service delay occurs. The proportion of delayed data packets represents the ratio of the number of delayed data packets to the total number of data packets in the data packet combination.
[0057] For another example: if the response delay time is the response delay time of at least one intermediate data packet, the delayed data packet in the intermediate data packet is determined according to the preset value corresponding to the intermediate data packet. When the proportion of delayed data packets in at least one intermediate data packet is greater than the preset proportion, an outbound call service delay occurs. The proportion of delayed data packets represents the ratio of the number of delayed data packets to the total number of data packets in the data packet combination.
[0058] It should be noted that the preset ratios mentioned above are determined based on various situations of response delay time. As in the examples listed above, these preset ratios can be the same or completely different, and there is no excessive limitation on this. Figure 1 It can be seen from the implementation method that the present invention provides a method for monitoring intelligent outbound call delays, by obtaining preset audio data and the sending time and receiving time of the sound data packet, and determining the response delay time of the preset audio data according to the sending time and receiving time recorded by the system, and then judging whether there is an outbound call service delay in the voice recognition server according to the response delay time. Through the above scheme, the response delay time is accurately determined, avoiding the situation where the inaccurate judgment of the response delay time of the voice recognition server based on the number of uncommon characters occurs, and greatly improving the accuracy of judging whether there is an outbound call service delay in the voice recognition server.
[0059] In some embodiments, according to the above Figure 1 In the embodiment of the present invention shown in FIG. 1 , how to obtain multiple data packets before obtaining the preset audio data of the outbound call test, and how to determine whether the voice recognition server has an outbound call service delay according to the number of times the preset audio data is sent after sending the preset audio data, the embodiment of the present invention will be described in more detail, such as Figure 2 As shown, at least 201-203 are included.
[0060] 201. Split preset audio data to obtain first and second data packets.
[0061] In this step, during the transmission of the preset audio data through the transmission channel, the preset audio data is split, and before the preset audio data is split, data annotation can be performed on the preset audio data to generate annotated preset audio data, wherein the annotation content at least includes annotating the sound moment in the preset audio data, or the first sound moment and the last sound moment; then, the amount of split data of the preset audio data is determined according to the data receiving parameters of the speech recognition server, and the preset audio data is split into a corresponding number of data packets. Among them, the data receiving parameters of the speech recognition server include the processing rate, storage capacity and current network status of the speech recognition server for processing data. Finally, combined with the annotation information, the first data packet containing the first sound moment and the second data packet or other intermediate data packets containing the last sound moment are found in the split data packets.
[0062] The specific method for determining the number of splits of the preset audio data according to the data receiving parameters of the speech recognition server is as follows:
[0063] In some examples, if you want to obtain the number of splits of the preset audio data, you need to determine the maximum data volume of a single data packet sent by the monitoring system to the speech recognition server. The maximum data volume of this single data packet is the maximum data volume under the condition of ensuring the normal operation of the speech recognition server. Therefore, it needs to be determined based on the data receiving parameters of the speech recognition server, that is, based on the storage capacity and processing rate of the speech recognition server. The specific calculation method of the maximum data volume of a single data packet is as follows:
[0064]
[0065] Among them, M is the storage capacity of the speech recognition server, N is the storage capacity reserved for ensuring the normal operation of the speech recognition server, m is the total number of data packets processed simultaneously by the speech recognition server, and D is the maximum data volume of a single data packet; it is worth noting that the above storage capacity units are the same. If the storage capacity units are not unified during the actual calculation process, they need to be converted for calculation.
[0066] After obtaining the maximum data volume of a single data packet, the number of splits is calculated according to the data volume of the preset audio data. For example, if the data volume of the preset audio data is h, the number of splits is The unit of the data volume of the preset audio data is the same as the unit of the maximum data volume of a single data packet. After determining the number of splits, the preset audio data is evenly divided according to its duration to obtain multiple data packets of equal data volume, so that the number of data packets is And in these data packets, according to the marking information (the time when the sound first appears and the time when the sound last appears or the time when the sound appears), find out the first and second data packets or at least one intermediate data packet.
[0067] It should be noted that before splitting the preset audio data, it is also necessary to determine whether it needs to be split according to the data volume of the preset audio data. The specific judgment method is as follows: compare the data volume of the preset audio data with the size of the network bandwidth for actually transmitting the preset audio data. If the network bandwidth is small and insufficient to support the one-time transmission of the complete preset audio data, then the preset audio data needs to be split to ensure that the audio data can be transmitted more smoothly. For example, when the network bandwidth is only a few hundred KB per second, and the size of the preset audio data reaches tens of MB, in this case, if it is directly transmitted without splitting, it is likely to be slow, stuck or even interrupted. At this time, the preset audio data needs to be split into multiple smaller data packets according to certain rules and transmitted in sequence, so as to improve the efficiency and stability of the transmission. If the network bandwidth is large and can easily carry the complete preset audio data transmission, it can be directly transmitted without splitting. For example, when the network bandwidth reaches tens of MB per second or even higher, and the size of the preset audio data is only a few MB, it can be completely transmitted in one go without additional splitting operations.
[0068] It can be seen that in this step, after judging whether it is necessary to split the preset audio data into multiple data packets according to the data volume of the preset audio data, the number of splits is determined based on the data receiving parameters of the speech recognition server. This process ensures that when processing larger preset audio data, the preset audio data can be transmitted more efficiently, avoiding the occurrence of inaccurate delay judgments due to excessive data volume. Secondly, the number of split data packets is evenly divided according to the duration of the preset audio data, ensuring that the size of each data packet is relatively balanced, improving the efficiency and stability of server processing, and thus helping to more accurately judge the delay of the outbound call service; finally, by combining the annotation information with the split data packets, the key points (the first data packet and the second data packet) of the preset audio data in the transmission process can be more accurately determined, providing more accurate data support for the overall judgment of server delays.
[0069] 202. Send the preset audio data to a speech recognition server, and record the number of times the preset audio data is resent.
[0070] After determining the first data packet and the second data packet in 201, the monitoring system sends the preset audio data including multiple data packets to the voice recognition server. After the voice recognition server receives the data packets, it matches the response information corresponding to the first data packet and the response information corresponding to the second data packet fed back by the voice recognition server according to the unique identifiers of the first data packet and the second data packet respectively within a preset time. If in this process, the corresponding response information is not matched according to the unique identifiers of the first data packet and the second data packet, the step of sending the preset audio data to the voice recognition server, recording the sending time of the first data packet and the second data packet, and recording the number of retransmissions of the preset audio data is executed.
[0071] It should be understood that the embodiments of the present application will identify the data packets involved in the outbound call service delay judgment and match them with the corresponding response information. In some embodiments, if at least one intermediate data packet is obtained in 201, the monitoring system will send the preset audio data containing multiple data packets to the voice recognition server. After the voice recognition server receives the data packet, it will match the response information corresponding to each intermediate data packet fed back by the voice recognition server according to the unique identifier of at least one intermediate data packet within a preset time. If the corresponding response information is not matched during this process, the step of sending the preset audio data to the voice recognition server is executed, and the number of retransmissions of the preset audio data is recorded.
[0072] In some embodiments, if a first data packet and at least one intermediate data packet are obtained in 201, the monitoring system sends preset audio data containing multiple data packets to the voice recognition server. After the voice recognition server receives the data packet, it matches the response information corresponding to each intermediate data packet and the response information corresponding to the first data packet fed back by the voice recognition server according to the unique identifier of at least one intermediate data packet and the unique identifier of the first data packet within a preset time. If the corresponding response information is not matched during this process, the step of sending the preset audio data to the voice recognition server is executed, and the number of retransmissions of the preset audio data is recorded.
[0073] In some embodiments, if a second data packet and at least one intermediate data packet are obtained in 201, the monitoring system sends preset audio data containing multiple data packets to the voice recognition server. After the voice recognition server receives the data packet, it matches the response information corresponding to each intermediate data packet and the response information corresponding to the second data packet fed back by the voice recognition server according to the unique identifier of at least one intermediate data packet and the unique identifier of the second data packet within a preset time. If the corresponding response information is not matched during this process, the step of sending the preset audio data to the voice recognition server is executed, and the number of retransmissions of the preset audio data is recorded.
[0074] 203. Determine whether there is an outbound call service delay in the voice recognition server.
[0075] After determining the preset number of retransmissions of the audio data in 202, it is further determined whether there is an outbound call service delay in the voice recognition server based on the preset maximum number of retransmissions. That is, if the preset number of retransmissions of the audio is greater than the preset maximum number of retransmissions, it is determined that there is an outbound call service delay in the voice recognition server, wherein the maximum number of retransmissions refers to the maximum number of retransmissions allowed after the voice recognition server fails to transmit. At this time, it means that the voice recognition server has not received the first data packet and the second data packet in time, that is, the voice recognition server has an outbound call service delay, and sends an alarm message.
[0076] It should be noted that the purpose of sending alarm information is to quickly and effectively convey the emergency situation to the monitoring personnel, so that they can immediately detect and take corresponding actions. The alarm methods are rich and varied, covering multiple dimensions such as sound alarm, visual alarm and emergency contact alarm. The sound alarm can be a high-decibel beep, a preset emergency alarm sound, or a vibration error report through the built-in vibrator of the positioning device. The visual alarm can be a single color flashing quickly (such as red), or a multi-color cycle flashing, which attracts the attention of the target person through strong visual stimulation. In order to ensure timely reminders in emergency situations, the alarm information also contains emergency contact information. This can be the manager's DingTalk email, phone number, instructions for the emergency call button, or a shortcut key directly connected to the enterprise security system. Through the above alarm reminders, the staff can be reminded in time, effectively preventing the voice recognition server from delaying outbound calls, and providing strong support for ensuring the normal operation of intelligent outbound calls. In addition, the above warning information can be used separately according to actual conditions, or can be used in combination of two or more as needed to achieve the best alarm effect. For example, while the sound alarm is used, the visual alarm can ensure the comprehensiveness and accuracy of information transmission.
[0077] Based on the above Figure 2 It can be seen from the implementation method that in this embodiment, a method for monitoring the delay of an intelligent outbound call is provided, which constructs a reliable data packet tracking and response processing mechanism. The mechanism uses a unique identifier to accurately match the response information corresponding to the first data packet and the second data packet, thereby ensuring the accuracy of the data packet tracking process. When the system fails to match the expected response information in time, the retransmission mechanism will be automatically triggered, and the number of retransmissions will be recorded each time. If the number of retransmissions accumulates to the preset maximum number of retransmissions and no valid response information is obtained, it is determined that there is an outbound call service delay problem on the voice recognition server, and the alarm process is immediately triggered to send detailed alarm information to relevant personnel. The design of this mechanism significantly improves the reliability of judgment and effectively avoids misjudgments that may be caused by accidental factors such as network fluctuations and short-term failures. At the same time, through a timely and accurate alarm mechanism, server problems can be discovered and reported in the first place, ensuring the overall stability and availability of the system.
[0078] Furthermore, according to the above Figure 1 In the embodiment of the present invention shown in FIG. 1 , after obtaining the preset audio data of the outbound call test, how to determine the response delay time of the preset audio data and how to determine whether there is an outbound call service delay in the voice recognition server are described in more detail. The specific steps are as follows: Figure 3 As shown, including:
[0079] 301. Obtain preset audio data for an outbound call test.
[0080] In this step, the preset audio data of the outbound call test obtained is a recording data with clear and lossless sound quality, which can be a recording clip or a whole recording. When the preset audio data needs to be transmitted, the preset audio data will enter a preset specific transmission channel. In this transmission channel, in order to ensure that the data can be transmitted efficiently, accurately and orderly, it will be divided into multiple data packets according to established rules. The multiple data packets are data packets containing sound information or features, that is, the preset audio data contains at least a data packet in which sound appears. Exemplarily, the preset audio data is divided into multiple ordered data packets, and any data packet contains a certain amount of data, which may contain information such as timestamps and sequence numbers to ensure the order and synchronization of the audio data. The established rules can be based on the width of the transmission channel or the memory size of the speech recognition server. For example, when the transmission channel width is 5M, the preset audio data can be evenly divided into data packets with a capacity of 0.005M. Among them, the data packet in which the sound appears includes a first data packet, a second data packet and at least one intermediate data packet, wherein the first data packet is used to determine whether the voice recognition server is delayed when the voice recognition server starts to recognize the user's demand, and the purpose of including the second data packet in multiple ordered data packets is to determine whether the voice recognition server is delayed when the user finishes expressing the demand.
[0081] 302. Perform an outbound call test using preset audio data to determine a response delay time of the preset audio data.
[0082] After obtaining the preset audio data in 301, the monitoring system sends the preset audio data including the first data packet, the intermediate data packet and the second data packet to the voice recognition server in the predetermined order in the preset audio data, and records the sending time of the first data packet, the sending time of the second data packet and the sending time of the intermediate data packet. After the voice recognition server feeds back the response information of the first data packet, the response information of the second data packet and the response information of the intermediate data packet to the monitoring system, the monitoring system receives the response information, wherein the response information of the first data packet includes the receiving time of the response to the first data packet, the response information of the second data packet includes the receiving time of the response to the second data packet, and the response information of the intermediate data packet includes the receiving time of the response to the intermediate data packet, thereby determining the response delay time of the above-mentioned data packets.
[0083] After determining the sending time and receiving time of the first data packet, the second data packet, and the intermediate data packet, the response delay time of the first data packet can be determined according to the sending time of the first data packet and the receiving time in the corresponding response information, that is, the response delay time of the first data packet is the time interval between the sending time of the first data packet and the receiving time in the corresponding response information. The response delay time of the second data packet can be determined according to the sending time of the second data packet and the receiving time in the corresponding response information, that is, the response delay time of the second data packet is the time interval between the sending time of the second data packet and the receiving time in the corresponding response information. The response delay time of the intermediate data packet can be determined according to the sending time of the intermediate data packet and the receiving time in the corresponding response information, that is, the response delay time of the intermediate data packet is the time interval between the sending time of the intermediate data packet and the receiving time in the corresponding response information.
[0084] In addition, regarding the response delay time of the preset audio data, it can be selected according to actual needs, such as the response delay time of the preset audio data is the response delay time of the first data packet, the response delay time of the second data packet, the sum of the response delay times of the first data packet and the second data packet, the response delay time of at least one intermediate data packet, the sum of the response delay times of the first data packet, the second data packet and at least one intermediate data packet, the sum of the response delay times of the first data packet and at least one intermediate data packet, and the sum of the response delay times of the second data packet and at least one intermediate data packet. For example, when the concern is whether the voice recognition server has a delay when recognizing the first occurrence of a sound, the response delay time of the first data packet is selected as the response delay time of the preset audio data. At this time, the response delay time of the first data packet is used as the delay time of the preset audio data, that is, this delay time is used as the delay time for the voice recognition server to process the preset audio data; when the concern is whether the voice recognition server has a delay when recognizing the last occurrence of a sound, the response delay time of the second data packet is selected as the response delay time of the preset audio data. At this time, the response delay time of the second data packet is used as the delay time of the preset audio data, that is, this delay time is used as the delay time for the voice recognition server to process the preset audio data; if the concern is not only whether the voice recognition server has a delay when recognizing the first occurrence of a sound, but also whether the voice recognition server has a delay when recognizing the last occurrence of a sound, the sum of the response delay times of the first data packet and the second data packet is selected as the response delay time of the preset audio data. It can be seen that by recording the sending time and receiving time of the first data packet, the second data packet and the intermediate data packet through the monitoring system, the response delay time of the preset audio data under different circumstances can be accurately determined from multiple perspectives, and an accurate data basis is provided for determining whether the voice recognition server has a delay when processing the preset audio data according to the response delay time of the preset audio data.
[0085] 303. Determine whether an outbound call service delay occurs in the voice recognition server.
[0086] After determining the response delay time of the preset audio data at 302, it is possible to further determine whether the voice recognition server has an outbound call service delay, which is implemented as follows:
[0087] Case 1: If the response delay time of the preset audio data is the response delay time of the first data packet, determine whether the response delay time of the first data packet is greater than a first preset value, wherein the first preset value is the shortest time allowed for a response delay in the first data packet, that is, the first preset value is, under ideal conditions, the transmission time of the first data packet between the monitoring system and the voice recognition server and the time the voice recognition server processes the first data packet, that is, the first preset value is, when there is no outbound call delay, the transmission time of the first data packet between the monitoring system and the voice recognition server and the time the voice recognition server processes the first data packet.
[0088] If the response delay time of the first data packet is greater than the first preset value, it means that the first data packet is delayed, that is, the voice recognition server has an outbound call service delay. If the response delay time of the first data packet is less than or equal to the first preset value, it means that the first data packet is not delayed, that is, the voice recognition server has no outbound call service delay.
[0089] Here are some examples to illustrate the above situation:
[0090] A test audio data is now known. After the test, there are multiple time points, such as point A, point B, point C, point D, and point E. Point A is the time when the data packet starts to be sent, that is, time 0, point B is the sending time of the first data packet, point B is the 30ms, point C is the receiving time of the first data packet, point C is the 40ms, point D is the sending time of the second data packet, point D is the 150ms, point E is the receiving time of the second data packet, point E is the 161ms, the first preset value is 5ms, and the second preset value is 10ms.
[0091] At this time, the sending time of the first data packet is 30ms, and the receiving time is 40ms. The response delay time of the voice recognition server tested according to the preset audio data when processing the preset audio data is (40ms-30ms). Since the first preset value is 5ms and 10ms is greater than 5ms, the voice recognition server has an outbound call service delay at this time.
[0092] Case 2: If the response delay time of the preset audio data is the response delay time of the second data packet, determine whether the response delay time of the second data packet is greater than a second preset value, wherein the second preset value is the shortest time allowed for a response delay in the second data packet, that is, the second preset value is, under ideal conditions, the transmission time of the second data packet between the monitoring system and the voice recognition server and the time for the voice recognition server to process the second data packet, that is, the second preset value is, when there is no outbound call delay, the transmission time of the second data packet between the monitoring system and the voice recognition server and the time for the voice recognition server to process the first data packet.
[0093] If the response delay time of the second data packet is greater than the second preset value, it means that the second data packet is delayed, that is, the voice recognition server has an outbound call service delay. If the response delay time of the second data packet is less than or equal to the second preset value, it means that the second data packet is not delayed, that is, the voice recognition server has no outbound call service delay.
[0094] In view of the above situation, we now combine the known data in situation 1 to give an example:
[0095] At this time, the sending time of the second data packet is 150ms, and the receiving time is 161ms. The response delay time of the voice recognition server tested according to the preset audio data when processing the preset audio data is (161ms-150ms). Since the second preset value is 10ms and 11ms is greater than 10ms, the voice recognition server has an outbound call service delay at this time.
[0096] Case 3: If the response delay time of the preset audio data is the sum of the response delay times of the first data packet and the second data packet, determine whether the response delay time of the first data packet is greater than the first preset value and whether the response delay time of the second data packet is greater than the second preset value. If so, determine that the voice recognition server has an outbound call service delay. If during the judgment process, if the response delay time of the first data packet is less than or equal to the first preset value and the response delay time of the second data packet is less than or equal to the second preset value, determine that the voice recognition server has not had an outbound call service delay.
[0097] In view of the above situation, we now combine the known data in situation 1 to give an example:
[0098] According to the above situation one and situation two, the response delay time of the first data packet and the second data packet are (40ms-30ms) and (161ms-150ms) respectively. At this time, the response delay time of the speech recognition server when processing the preset audio data is 10ms and 11ms. At this time, judgment is made according to the first preset value and the second preset value respectively, that is, 10ms is greater than 5ms and 11ms is greater than 10ms, then it is determined that the speech recognition server has an outbound call delay.
[0099] For situation three, it should be noted that when the response delay time of the preset audio data is the sum of the response delay time of the first data packet and the second data packet, the method for judging whether the voice recognition server has an outbound call service delay can also be to compare the response delay time of the preset audio data to be the sum of the response delay time of the first data packet and the second data packet with the fourth preset value, wherein the third preset value is in an ideal state, including the transmission of the first data packet and the second data packet between the monitoring system and the voice recognition server and the processing time of the voice recognition server processing the first data packet and the second data packet. If the response delay time of the preset audio data is greater than the fourth preset value, it is determined that the voice recognition server has a response delay, and if the response delay time of the preset audio data is less than or equal to the fourth preset value, it is determined that the voice recognition server has no response delay, wherein the fourth preset value can be the sum of the first preset value and the second preset value, and can also be set according to actual conditions. At this time, according to the above specific example, it can be known that the fourth preset value is (10ms+5ms), that is, 15ms. At this time, 21ms is greater than 15ms, and it is determined that the voice recognition server has an outbound call delay.
[0100] Case 4: If the response delay time of the preset audio data is the sum of the response delay times of the first data packet, the second data packet and an intermediate data packet, determine whether the response delay time of the first data packet is greater than the first preset value, whether the response delay time of the second data packet is greater than the second preset value, and whether the response delay time of the intermediate data packet is greater than or equal to the third preset value. If so, it is determined that the voice recognition server has an outbound call service delay. If in the judgment process, if the response delay time of the first data packet is less than or equal to the first preset value or the response delay time of the second data packet is less than or equal to the second preset value or the response delay time of the intermediate data packet is less than the third preset value, it is determined that the voice recognition server has no outbound call service delay. Or when the proportion of delayed data packets in the first data packet, the second data packet and at least one intermediate data packet is greater than the preset proportion, an outbound call service delay occurs. The proportion of delayed data packets represents the ratio of the number of delayed data packets to the total number of data packets in the data packet combination.
[0101] For the above situation, here are some examples:
[0102] Known: Now it is known that a test audio data has multiple time points after the test, such as point A, point B, point C, point H1, point H2, point D, and point E, where point A is the time when the data packet starts to be sent, that is, time 0, point B is the sending time of the first data packet, point B is the 30ms, point C is the receiving time of the first data packet, point C is the 40ms, point H1 is the sending time of the first intermediate data packet, point H1 is the 50ms, point H2 is the receiving time of the first intermediate data packet, point H2 is the 60ms, point D is the sending time of the second data packet, point D is the 150ms, point E is the receiving time of the second data packet, point E is the 161ms, the first preset value is 5ms, the second preset value is 10ms, the third preset value is 10ms, and the preset proportion is 95%.
[0103] According to the above content, it can be known that there are two methods to determine whether the voice recognition server has an outbound call delay. First, the response delay time of the first data packet is (40ms-30ms). Since the first preset value is 5ms, 10ms is greater than 5ms; the response delay time of the second data packet is (161ms-150ms). Since the second preset value is 10ms, 11ms is greater than 5ms, the response delay time of the first intermediate data packet is (60ms-50ms). Since the third preset value is 10ms, 10ms is equal to 10ms. At this time, it is determined that the voice recognition server has an outbound call delay. Second, the above-mentioned data packets include the first data packet, the second data packet and the first intermediate data packet, all of which have corresponding delays, that is, the proportion of delayed data packets is 100%, and the preset proportion is 95%. It can be seen that 100% is greater than 95%, and it is determined that the voice recognition server has an outbound call delay.
[0104] Case 5: If the response delay time of the preset audio data is the sum of the response delay times of the first data packet and at least one intermediate data packet, it is determined whether the response delay time of the first data packet is greater than the first preset value, and whether the response delay time of the intermediate data packets is greater than or equal to the third preset value. If so, it is determined that the voice recognition server has an outbound call service delay. Or when the proportion of delayed data packets in the first data packet and at least one intermediate data packet is greater than the preset proportion, an outbound call service delay occurs. The proportion of delayed data packets represents the ratio of the number of delayed data packets to the total number of data packets in the data packet combination.
[0105] For the above situation, here are some examples:
[0106] Known: Now it is known that a test audio data has multiple time points after the test, such as point A, point B, point C, point H1, point H2, point H3 and point H4, where point A is the time when the data packet starts to be sent, that is, time 0, point B is the sending time of the first data packet, point B is the 30ms, point C is the receiving time of the first data packet, point C is the 40ms, point H1 is the sending time of the first intermediate data packet, point H1 is the 50ms, point H2 is the receiving time of the first intermediate data packet, point H2 is the 60ms, point H3 is the sending time of the second intermediate data packet, point H3 is the 80ms, point H4 is the receiving time of the second intermediate data packet, point H4 is the 95ms, the first preset value is 5ms, the third preset value is 10ms, and the preset proportion is 80%.
[0107] According to the above content, it can be known that there are two methods to determine whether the voice recognition server has an outbound call delay. First, the response delay time of the first data packet is (40ms-30ms). Since the first preset value is 5ms, 10ms is greater than 5ms; the response delay time of the first intermediate data packet is (60ms-50ms). Since the third preset value is 10ms, 10ms is equal to 10ms; the response delay time of the second intermediate data packet is (95ms-80ms). Since the third preset value is 10ms, 15ms is equal to 10ms. At this time, it is determined that the voice recognition server has an outbound call delay. Second, there are three data packets in the above case, and all three data packets have outbound call delays. At this time, the proportion of delayed data packets is 100%, and 100% is greater than 80%. It is determined that the voice recognition server has an outbound call delay.
[0108] Case 6: If the response delay time of the preset audio data is the sum of the response delay times of the second data packet and at least one intermediate data packet, it is determined whether the response delay time of the second data packet is greater than the second preset value, and whether the response delay times of the intermediate data packets are greater than or equal to the third preset value. If so, it is determined that the voice recognition server has an outbound call service delay. Or if the sum of the response delay times of the second data packet and all the intermediate data packets is greater than the sum of the product of the third preset value and the intermediate data packets and the second preset value, an outbound call service delay occurs.
[0109] For the above situation, here are some examples:
[0110] Known: Now it is known that a test audio data has multiple time points after the test, such as point A, point H1, point H2, point H3 and point H4, where point A is the time when the data packet starts to be sent, that is, time 0, point H1 is the sending time of the first intermediate data packet, point H1 is the 50ms, point H2 is the receiving time of the first intermediate data packet, point H2 is the 60ms, point H3 is the sending time of the second intermediate data packet, point H3 is the 80ms, point H4 is the receiving time of the second intermediate data packet, point H4 is the 95ms, point D is the sending time of the second data packet, point D is the 150ms, point E is the receiving time of the second data packet, point E is the 161ms, the second preset value is 5ms, and the third preset value is 10ms.
[0111] According to the above content, it can be known that there are two methods to determine whether the voice recognition server has an outbound call delay. First, the response delay time of the second data packet is (161ms-150ms). Since the second preset value is 10ms, 11ms is greater than 10ms; the response delay time of the first intermediate data packet is (60ms-50ms). Since the third preset value is 10ms, 10ms is equal to 10ms; the response delay time of the second intermediate data packet is (95ms-80ms). Since the third preset value is 10ms, 15ms is equal to 10ms. At this time, it is determined that the voice recognition server has an outbound call delay. Second, add the response delay time of the second data packet, the response delay time of the first intermediate data packet and the response delay time of the second intermediate data packet, which is 36ms. Add the two third preset values to the second preset value, which is 30ms. It can be known that 36ms is greater than 30ms. At this time, it is determined that the voice recognition server has an outbound call delay.
[0112] Case 7: If the response delay time of the preset audio data is the sum of the response delay times of at least two intermediate data packets, it is determined whether the response delay times of the intermediate data packets are all greater than or equal to a third preset value, and if they are all greater than or equal to the third preset value, it is determined that the voice recognition server has an outbound call service delay. Or if the sum of the response delay times of all intermediate data packets is greater than the product of the third preset value and the intermediate data packets, an outbound call service delay occurs.
[0113] For the above situation, here are some examples:
[0114] Known: Now it is known that a test audio data has multiple time points after the test, such as point A, point H1, point H2, point H3 and point H4, where point A is the time when the data packet starts to be sent, that is, time 0, point H1 is the sending time of the first intermediate data packet, point H1 is the 50ms, point H2 is the receiving time of the first intermediate data packet, point H2 is the 60ms, point H3 is the sending time of the second intermediate data packet, point H3 is the 80ms, point H4 is the receiving time of the second intermediate data packet, point H4 is the 95ms, the first preset value is 5ms, and the third preset value is 10ms.
[0115] According to the above content, it can be known that there are two methods to determine whether the voice recognition server has an outbound call delay. First, the response delay time of the first intermediate data packet is (60ms-50ms). Since the third preset value is 10ms, 10ms is equal to 10ms; the response delay time of the second intermediate data packet is (95ms-80ms). Since the third preset value is 10ms, 15ms is equal to 10ms. At this time, it is determined that the voice recognition server has an outbound call delay. Second, add the response delay time of the first intermediate data packet to the response delay time of the second intermediate data packet, which is 25ms. Add the two third preset values, which is 20ms. It can be seen that 25ms is greater than 20ms. At this time, it is determined that the voice recognition server has an outbound call delay.
[0116] It can be seen that by determining the response delay time of the preset audio data from the above different angles, it is possible to comprehensively and accurately determine whether the voice recognition server has an outbound call service delay. Whether considering the first or second data packet alone, or making a judgment based on both, there is a clear preset value as a reference, making the judgment result more accurate and objective.
[0117] 304. Determine whether to trigger an alarm mechanism.
[0118] After determining at step 303 that the voice recognition server has an outbound call service delay, it is necessary to further determine whether to trigger an alarm mechanism. The specific determination method is as follows:
[0119] According to a preset statistical period, the test results of the inbound and outbound call tests in the period are obtained, and the test results include the number of tests and the judgment result of whether the voice recognition server has an outbound call service delay based on the preset audio data; according to the number of tests and the judgment result, the probability of the voice recognition server having an outbound call service delay in the preset statistical period is calculated; after obtaining the outbound call service delay probability, it is determined whether it is greater than a first preset probability, wherein the first preset probability is a threshold probability of triggering an alarm mechanism when an outbound call delay occurs in the voice recognition server obtained according to historical data statistics; if it is greater than, the alarm mechanism is triggered.
[0120] In this step, the preset statistical period can be a plurality of continuous outbound call tests traced back from the current outbound call test, wherein the specific number of the plurality of continuous outbound call tests is selected according to the actual situation, and the preset statistical period can also be a set of outbound call tests within a fixed time period, such as all outbound call tests within a time range of one day, one week or one month traced back from the current outbound call test, wherein this fixed time period is set according to the actual situation. In this way, different statistical periods can be flexibly selected according to the actual situation to more accurately evaluate the probability of outbound call service delay of the voice recognition server, so as to more reasonably judge whether to trigger the alarm mechanism. It should be noted that the judgment on whether to trigger the alarm mechanism can be made at the end of the current outbound call test, or it can be made during the current outbound call test. If it is made during the current outbound call test, the preset statistical period does not include the current outbound call test. The above content is now illustrated with examples, as follows:
[0121] Case 1: It is now known that there are 8 outbound call tests within the preset statistical period, namely, outbound call test 1 did not cause outbound call service delay, outbound call test 2 did not cause outbound call service delay, outbound call test 3 did not cause outbound call service delay, outbound call test 4 caused outbound call service delay, outbound call test 5 did not cause outbound call service delay, outbound call test 6 did not cause outbound call service delay, outbound call test 7 did not cause outbound call service delay, and the current outbound call test caused outbound call service delay, and the first preset probability is 30%.
[0122] According to the above content, the number of outbound call tests is 8 times, of which 6 tests did not cause outbound call service delays, and 2 tests caused outbound call service delays. At this time, the probability of outbound call service delays in the voice recognition server is (2 / 8), that is, 25%. At this time, 25% is less than 30%, and the alarm mechanism is not triggered.
[0123] Case 2: It is now known that there are 6 tests within the preset statistical period, namely, outbound call test 1 without outbound call service delay, outbound call test 2 without outbound call service delay, outbound call test 3 without outbound call service delay, outbound call test 4 with outbound call service delay, outbound call test 5 without outbound call service delay, and the current outbound call test is sending preset audio data, and the first preset probability is 10%.
[0124] According to the above content, the current outbound call test is in the process of sending preset audio data, that is, making judgments during the current outbound call test. At this time, the preset statistical period does not include the current outbound call test. That is, the actual number of tests in the preset period is 5 times, of which the number of tests without outbound call service delay is 4 times, and the number of tests with outbound call service delay is 1 time. At this time, the probability of outbound call service delay in the voice recognition server is (1 / 5), that is, 20%. At this time, 20% is greater than 10%, which triggers the alarm mechanism.
[0125] It can be seen that by evaluating the outbound call test results according to the preset statistical period, accurately calculating the delay probability of the voice recognition server, and comparing it with the preset probability, the outbound call service delay status of the voice recognition server can be accurately evaluated. Compared with the alarm when the voice recognition server has an outbound call service delay, triggering the alarm according to probability can reduce false alarms and improve response efficiency.
[0126] In addition, when determining whether to trigger the alarm mechanism, there is no limitation on the response delay time of the preset audio data in the outbound call test within the preset statistical period, and it is only necessary to determine the judgment result of the outbound call test.
[0127] Based on the above Figure 3 It can be seen from the implementation method that in this embodiment, preset audio data is used to perform outbound call testing. According to the specific reception and transmission time of the first data packet and the second data packet, the response delay time of the preset audio data is determined from different angles, and the response delay time under different circumstances is judged, thereby improving the accuracy and pertinence of judging whether an outbound call service delay occurs in the voice recognition server; secondly, after obtaining an accurate delay judgment result, the preset statistical period is flexibly used when judging whether to trigger the alarm mechanism, thereby further enhancing the accuracy of triggering the alarm mechanism.
[0128] Furthermore, as a response to the above Figure 1-3 The embodiment of the method shown in the figure is implemented. The embodiment of the present invention provides an intelligent outbound call delay monitoring device, which is used to accurately determine whether an outbound call service delay occurs in the voice recognition server. The embodiment of the device corresponds to the aforementioned method embodiment. For ease of reading, this embodiment will no longer repeat the details of the aforementioned method embodiment one by one, but it should be clear that the device in this embodiment can correspond to all the contents of the aforementioned method embodiment. Specifically, Figure 4 As shown, the device comprises:
[0129] An acquisition unit 41 is used to acquire preset audio data for an outbound call test, wherein the preset audio data at least contains a data packet in which sound occurs;
[0130] The recording unit 42 is used to send the preset audio data in the acquisition unit 41 to the speech recognition server and record the sending time of the data packet in which the sound appears;
[0131] The receiving unit 43 is used to receive the response information fed back by the speech recognition server in the recording unit 42, wherein the response information includes the receiving time of the first data packet and the second data packet in response;
[0132] A determining unit 44, configured to determine a response delay time of the preset audio data according to the sending time in the recording unit 42 and the receiving time in the receiving unit 43;
[0133] The judging unit 45 is configured to determine whether there is an outbound call service delay in the speech recognition server according to the response delay time in the determining unit 44 .
[0134] Further, such as Figure 5 As shown, the judging unit 45 includes:
[0135] A matching module 451, used for matching the response information fed back by the speech recognition server based on the unique identifier of the data packet where the sound appears;
[0136] The recording module 452 is used for executing the step of sending the preset audio data to the speech recognition server, recording the sending time of the data packet where the sound appears, and recording the number of retransmissions of the preset audio data if the unique identifier of the data packet where the sound appears is not matched to the corresponding response information by the matching module 451 within the preset time;
[0137] A first judging module 453 is used to judge whether the number of retransmissions in the recording module 452 is greater than a preset maximum number of retransmissions;
[0138] The alarm module 454 is used to determine that there is an outbound call service delay in the voice recognition server and send an alarm message if the number of retransmissions in the first judgment module 453 is greater than the preset maximum number of retransmissions.
[0139] Further, such as Figure 5 As shown, when the data packet in which the sound appears in the device includes a first data packet in which the sound appears for the first time, a second data packet in which the sound appears for the last time, and / or at least one intermediate data packet, determining that the determining unit 44 includes:
[0140] A first determining module 441, configured to use a time interval between a sending time and a receiving time of the first data packet as a response delay time of the first data packet;
[0141] A second determining module 442, configured to use the time interval between the sending time and the receiving time of the second data packet as the response delay time of the second data packet;
[0142] A second determining module 442 is used to determine the time interval between the sending time and the receiving time of the intermediate data packet as the response delay time of the intermediate data packet;
[0143] The delay time module 443 is used to use the response delay time of the first data packet in the first determination module 441 or the second data packet or the intermediate data packet in the second determination module 442 as the response delay time of the preset audio data.
[0144] A delay time module 443 is configured to use a response delay time of the first data packet of the first determining module 441 and at least one of the intermediate data packets of the second determining module 442 as a response delay time of the preset audio data; or
[0145] A delay time module 443 is used to use the response delay time of the second data packet and at least one of the intermediate data packets of the second determination module 442 as the response delay time of the preset audio data; or
[0146] A delay time module 443, configured to use the response delay time of the first data packet of the first determining module 441 and the second data packet of the second determining module 442 as the response delay time of the preset audio data; or
[0147] The delay time module 443 is used to use the response delay time of the first data packet of the first determination module 441, the second data packet of the second determination module 442, and at least one of the intermediate data packets as the response delay time of the preset audio data.
[0148] Further, such as Figure 5 As shown, the judging unit 45 further includes:
[0149] The second judgment module 455 is used to determine that the voice recognition server has an outbound call service delay and send an alarm message if the response delay time of the first data packet is greater than a first preset value or the response delay time of the second data packet is greater than a second preset value or the response delay time of the intermediate data packet is greater than a third preset value; wherein the first preset value is the shortest time allowed for a response delay in the first data packet, the second preset value is the shortest time allowed for a response delay in the second data packet, and the third preset value is the shortest time allowed for a response delay in the intermediate data packet;
[0150] The third judgment module 456 is used to determine that the voice recognition server has no outbound call service delay if the response delay time of the first data packet is less than or equal to the first preset value, the response delay time of the second data packet is less than or equal to the second preset value, and the response delay time of the intermediate data packet is less than or equal to the third preset value.
[0151] Further, such as Figure 5 As shown, the device further includes an alarm unit 46, and the alarm unit 46 includes:
[0152] The acquisition module 461 is used to acquire the test result of the outbound call test within the preset statistical period according to the preset statistical period, and the test result includes the number of tests and the judgment result of whether the outbound call service delay occurs on the voice recognition server based on the preset audio data;
[0153] A calculation module 462, configured to calculate the probability of an outbound call service delay occurring in the voice recognition server within the preset statistical period based on the number of tests and the judgment result in the acquisition module 461;
[0154] A fourth judgment module 463 is used to judge whether the probability of an outbound call service delay occurring in the voice recognition server in the calculation module 462 is greater than a first preset probability, where the first preset probability is a threshold probability of triggering an alarm mechanism when an outbound call delay occurs in the voice recognition server, obtained based on historical data statistics;
[0155] The alarm module 464 is determined to send an alarm message if the probability of outbound call service delay occurring in the voice recognition server is greater than a first preset probability.
[0156] Further, such as Figure 5 As shown, the device further includes a marking unit 47, specifically including:
[0157] A fifth determination module 471 is used to determine whether splitting is required according to the amount of the preset audio data;
[0158] The marking module 472 is used to mark the preset audio data if the fifth determination module 471 determines that it is necessary to generate marked preset audio data, wherein the marked preset audio data at least contains the first sound appearance time and the last sound appearance time;
[0159] A splitting module 473, configured to determine the number of splits of the preset audio data based on a data receiving parameter of a speech recognition server;
[0160] The fourth determining module 474 is used to determine the first data packet at the time when the sound first appears and the second data packet at the time when the sound last appears from the splitting module 473 according to the marking information of the marking module 472.
[0161] Further, such as Figure 5 As shown, the splitting module 473 includes:
[0162] A data quantum determination module 4731 is used to determine the maximum data amount of a single data packet to be sent to the speech recognition server according to the received parameters;
[0163] A calculation data quantum module 4732 is used to calculate the number of splits according to the maximum data volume in the determination data quantum module 4731 and the data volume of the preset audio data;
[0164] The splitting submodule 4733 is used to evenly divide the data packets into the number of data packets split in the calculation data quantum module 4732 according to the duration of the preset audio data.
[0165] Furthermore, an embodiment of the present invention also provides a storage medium, wherein the storage medium includes a stored program, and when the program is executed, the device where the storage medium is located is controlled to execute the above Figure 1-3 The method for monitoring the intelligent outbound call delay described in any one of the above.
[0166] Furthermore, an embodiment of the present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the above-mentioned Figure 1-3 The method for monitoring the intelligent outbound call delay described in any one of the above.
[0167] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0168] It is understandable that the related features in the above methods and devices can be referenced to each other. In addition, the "first", "second" and the like in the above embodiments are used to distinguish the embodiments, but do not represent the advantages and disadvantages of the embodiments.
[0169] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0170] The algorithm and display provided herein are not inherently related to any particular computer, virtual system or other device. Various general purpose systems can also be used together with the teachings based on this. According to the above description, it is obvious that the structure required for constructing such systems. In addition, the present invention is not directed to any specific programming language either. It should be understood that various programming languages can be utilized to realize the content of the present invention described herein, and the description of the above specific languages is for disclosing the best mode of the present invention.
[0171] In addition, the memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.
[0172] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0173] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0174] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0175] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0176] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0177] The memory may include non-permanent memory in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.
[0178] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0179] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0180] It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as methods, systems or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
[0181] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.
Claims
1. A method for monitoring intelligent outbound call delay, characterized in that: include: Acquire preset audio data for an outbound call test, wherein the preset audio data at least contains a data packet in which sound occurs; Sending the preset audio data to a speech recognition server, and recording the sending time of the data packet in which the sound appears; Receiving response information fed back by the speech recognition server, wherein the response information includes a reception time of a data packet responding to the sound; Determining a response delay time of the preset audio data according to the sending time and the receiving time; It is determined whether the voice recognition server has an outbound call service delay according to the response delay time.
2. The method according to claim 1, characterized in that After receiving the response information fed back by the speech recognition server, the method further includes: Matching the response information fed back by the speech recognition server based on the unique identifier of the data packet in which the sound appears; If the unique identifier of the data packet where the sound appears does not match the corresponding response information within the preset time, the steps of sending the preset audio data to the speech recognition server, recording the sending time of the data packet where the sound appears, and recording the number of retransmissions of the preset audio data are executed; If the number of retransmissions is greater than the preset maximum number of retransmissions, it is determined that there is an outbound call service delay in the voice recognition server, and an alarm message is sent.
3. The method according to claim 1, characterized in that The step of determining the response delay time of the preset audio data according to the sending time and the receiving time, wherein the data packet in which the sound appears includes a first data packet in which the sound appears for the first time, a second data packet in which the sound appears for the last time, and / or at least one intermediate data packet, includes: Determine the time interval between the sending time and the receiving time of the first data packet as the response delay time of the first data packet; Determine the time interval between the sending time and the receiving time of the second data packet as the response delay time of the second data packet; Determine the time interval between the sending time and the receiving time of the intermediate data packet as the response delay time of the intermediate data packet; using the response delay time of the first data packet, the second data packet, or the intermediate data packet as the response delay time of the preset audio data, or Using the response delay time of the first data packet and at least one of the intermediate data packets as the response delay time of the preset audio data; or Using the response delay time of the second data packet and at least one of the intermediate data packets as the response delay time of the preset audio data; or Using the response delay time of the first data packet and the second data packet as the response delay time of the preset audio data; or The response delay time of the first data packet, the second data packet and at least one of the intermediate data packets is used as the response delay time of the preset audio data.
4. The method according to claim 3, characterized in that: The determining, according to the response delay time, whether the voice recognition server has an outbound call service delay comprises: If the response delay time of the first data packet is greater than a first preset value or the response delay time of the second data packet is greater than a second preset value or the response delay time of the intermediate data packet is greater than a third preset value, it is determined that an outbound call service delay occurs in the voice recognition server, and an alarm message is sent; wherein the first preset value is the shortest time allowed for a response delay in the first data packet, the second preset value is the shortest time allowed for a response delay in the second data packet, and the third preset value is the shortest time allowed for a response delay in the intermediate data packet; If the response delay time of the first data packet is less than or equal to the first preset value, the response delay time of the second data packet is less than or equal to the second preset value, and the response delay time of the intermediate data packet is less than or equal to the third preset value, it is determined that the voice recognition server has no outbound call service delay.
5. The method according to claim 1, characterized in that After determining whether the voice recognition server has an outbound call service delay according to the response delay time, the method further includes: According to a preset statistical period, the test result of the outbound call test within the preset statistical period is obtained, and the test result includes the number of tests and the judgment result of whether the outbound call service delay occurs on the voice recognition server based on the preset audio data; Based on the test times and the judgment results, the probability of outbound call service delay occurring in the voice recognition server within the preset statistical period is calculated; If the probability of outbound call service delay in the voice recognition server is greater than a first preset probability, an alarm message is sent. The first preset probability is a threshold probability of triggering an alarm mechanism when an outbound call delay occurs in the voice recognition server, obtained based on historical data statistics.
6. The method according to any one of claims 3 to 5, characterized in that: Before obtaining the preset audio data of the outbound call test, the method further includes: According to the data volume of the preset audio data, if the preset audio data needs to be split, the preset audio data is marked to generate marked preset audio data, wherein the marked preset audio data at least contains the first sound appearance time and the last sound appearance time; Determining the number of splits of the preset audio data based on the data receiving parameter of the speech recognition server; According to the marking information, a first data packet at the time when the sound first appears and a second data packet at the time when the sound last appears are determined from the split preset audio data.
7. The method according to claim 6, characterized in that Determining the number of splits of the preset audio data based on the data receiving parameter of the speech recognition server includes: Determining the maximum amount of data for a single data packet to be sent to the speech recognition server according to the received parameters; Calculating the number of splits according to the maximum data volume and the data volume of the preset audio data; According to the duration of the preset audio data, the data packets are evenly divided into the split number.
8. An intelligent outbound call delay monitoring device, characterized in that: include: An acquisition unit, used for acquiring preset audio data of an outbound call test, wherein the preset audio data at least contains a data packet in which sound occurs; A recording unit, used to send the preset audio data in the acquisition unit to the speech recognition server, and record the sending time of the data packet in which the sound appears; A receiving unit, configured to receive response information fed back by the speech recognition server in the recording unit, wherein the response information includes a receiving time of a data packet responding to the sound; a determining unit, configured to determine a response delay time of the preset audio data according to a sending time in the recording unit and a receiving time in the receiving unit; The judging unit is used to determine whether there is an outbound call service delay in the speech recognition server according to the response delay time in the determining unit.
9. A storage medium comprising a stored program, characterized in that: When the program is running, the device where the storage medium is located is controlled to execute the intelligent outbound call delay monitoring method described in any one of claims 1 to 7.
10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the program, it implements the monitoring method of intelligent outbound call delay as described in any one of claims 1 to claim 7.
Citation Information
Patent Citations
Real-time data transmission method and system based on transmission control protocol
CN103414956A
Method and system for obtaining bandwidth
CN105634865A
Congestion control method in video call
CN108401128A
Audio transmission delay test method and device, storage medium and electronic equipment
CN110430104A
Network quality detection method and device, electronic equipment and storage medium
CN111556345A