CN114079698A - Method and device for polling intelligent outbound robot and storage medium - Google Patents
Method and device for polling intelligent outbound robot and storage medium Download PDFInfo
- Publication number
- CN114079698A CN114079698A CN202010833041.4A CN202010833041A CN114079698A CN 114079698 A CN114079698 A CN 114079698A CN 202010833041 A CN202010833041 A CN 202010833041A CN 114079698 A CN114079698 A CN 114079698A
- Authority
- CN
- China
- Prior art keywords
- thread
- sub
- program
- main thread
- target user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000002452 interceptive effect Effects 0.000 claims description 9
- 230000003993 interaction Effects 0.000 description 14
- 230000000694 effects Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 230000004048 modification Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 239000003795 chemical substances by application Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005034 decoration Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/527—Centralised call answering arrangements not requiring operator intervention
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/42017—Customized ring-back tones
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2242/00—Special services or facilities
- H04M2242/18—Automated outdialling systems
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
Abstract
The application discloses a polling method and device for an intelligent outbound robot and a storage medium. The polling method of the intelligent outbound robot comprises the following steps: calling a main thread for interacting with a target user of the outbound call according to a preset script program; starting a sub thread through a main thread according to a script program, and inquiring an idle robot program through the sub thread; and when the idle robot program is inquired through the sub thread, the inquired robot program is used for interacting with the target user through the main thread.
Description
Technical Field
The present application relates to the field of computer technologies, and in particular, to a polling method, a polling device, and a polling storage medium for an intelligent outbound robot.
Background
The intelligent chat robot is widely applied in various fields at present, including intelligent customer service, intelligent sound box, entertainment products and the like, and the intelligent voice robot is more and more favored in the industry as an advanced form thereof to a more natural and convenient interactive mode (voice). In the SaaS scene, the intelligent voice robot is abstracted into robot seats on logic one by one, and merchants purchase the intelligent voice robot as required to obtain corresponding computing resources. At present, the intelligent voice robot generally adopts a resource pool scheme, and can be always connected to the robot for calling out as long as the calling-out quantity does not reach the upper limit of the whole system; the scheme is not beneficial to the quantitative presentation of cost and resources in SaaS operation, brings trouble to merchants and is also not beneficial to the maximum utilization of resources. After the intelligent voice robot is abstracted into robot seats on one logic, telephone traffic distribution and seats exist, and the problem of customer queuing is solved. The current implementation scheme is that a manual seat scheme is sleeved on a robot, the manual seat scheme needs a series of operations such as seat registration and state recording, the access of the robot needs a great deal of improvement on the existing system, the time is long, the cost is high (as shown in fig. 7), the robot seat is relatively simple in manual operation, states such as small break and leaving are not needed, the management cost is almost zero, and a manual seat management method is not needed to be completely applied.
Aiming at the technical problems of long modification time and high cost in the existing method for realizing the robot seat on the manual seat scheme in the prior art, an effective solution is not provided at present.
Disclosure of Invention
The embodiment of the disclosure provides a polling method, a polling device and a polling storage medium for an intelligent outbound robot, which are used for solving the technical problems of long modification time and high cost in the existing method for realizing the robot seat on the manual seat scheme in the prior art.
According to an aspect of the embodiments of the present disclosure, there is provided a method for polling an intelligent outbound robot, including: calling a main thread for interacting with a target user of the outbound call according to a preset script program; starting a sub thread through a main thread according to a script program, and inquiring an idle robot program through the sub thread; and when the idle robot program is inquired through the sub thread, the inquired robot program is used for interacting with the target user through the main thread.
According to another aspect of the embodiments of the present disclosure, there is also provided a storage medium including a stored program, wherein the method of any one of the above is performed by a processor when the program is executed.
According to another aspect of the embodiment of the present disclosure, there is also provided a polling device for an intelligent outbound robot, including a calling module, configured to call a main thread interacting with a target user of an outbound call according to a preset script program; the query module is used for starting a sub-thread through the main thread according to the script program and querying an idle robot program through the sub-thread; and the first interaction module is used for interacting with the target user by using the inquired robot program through the main thread under the condition that the idle robot program is inquired through the sub-thread.
According to another aspect of the embodiments of the present disclosure, there is also provided an apparatus for polling an intelligent outbound robot, including: a processor; and a memory coupled to the processor for providing instructions to the processor for processing the following processing steps: calling a main thread for interacting with a target user of the outbound call according to a preset script program; starting a sub thread through a main thread according to a script program, and inquiring an idle robot program through the sub thread; and when the idle robot program is inquired through the sub thread, the inquired robot program is used for interacting with the target user through the main thread.
Therefore, according to the embodiment, the computing device polls the idle robot program in a multithreading mode in the process of communicating with the target person who calls out, and the technical effect of effectively utilizing the robot program is achieved. The intelligent voice robot is low in deployment and application cost of intelligent voice robot seating, and is easy to popularize. Meanwhile, the technical effect of ensuring the stability of the system is achieved without modifying the telephone traffic distribution code of the existing call center. And the technical problems of long modification time and high cost in the existing method for realizing the robot seat on the manual seat scheme in the prior art are solved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the disclosure and together with the description serve to explain the disclosure and not to limit the disclosure. In the drawings:
fig. 1 is a hardware block diagram of a computing device for implementing the method according to embodiment 1 of the present disclosure;
fig. 2 is a schematic flow chart of a method for polling an intelligent outbound robot according to a first aspect of embodiment 1 of the present disclosure;
fig. 3 is another schematic flow chart of a method for polling an intelligent outbound robot according to embodiment 1 of the present disclosure;
fig. 4 is a system block diagram of intelligent outbound robot polling according to embodiment 1 of the present disclosure;
fig. 5 is a schematic diagram of an apparatus for polling an intelligent outbound robot according to embodiment 2 of the present disclosure;
fig. 6 is a schematic diagram of an apparatus for polling an intelligent outbound robot according to embodiment 3 of the present disclosure; and
fig. 7 is a prior art of a robot agent implemented based on an artificial agent.
Detailed Description
In order to make those skilled in the art better understand the technical solutions of the present disclosure, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings in the embodiments of the present disclosure. It is to be understood that the described embodiments are merely exemplary of some, and not all, of the present disclosure. All other embodiments, which can be derived by a person skilled in the art from the embodiments disclosed herein without making any creative effort, shall fall within the protection scope of the present disclosure.
It should be noted that the terms "first," "second," and the like in the description and claims of the present disclosure and in the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the disclosure described herein are capable of operation in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Example 1
In accordance with the present embodiment, there is provided an embodiment of a method for intelligent outbound robotic polling, it being noted that the steps illustrated in the flowchart of the figure may be performed in a computer system such as a set of computer-executable instructions and that, although a logical order is illustrated in the flowchart, in some cases the steps illustrated or described may be performed in an order different than here.
The method embodiments provided by the present embodiment may be executed in a mobile terminal, a computer terminal, a server or a similar computing device. Fig. 1 illustrates a hardware architecture block diagram of a computing device for implementing a method of intelligent outbound robotic polling. As shown in fig. 1, the computing device may include one or more processors (which may include, but are not limited to, a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory for storing data, and a transmission device for communication functions. Besides, the method can also comprise the following steps: a display, an input/output interface (I/O interface), a Universal Serial Bus (USB) port (which may be included as one of the ports of the I/O interface), a network interface, a power source, and/or a camera. It will be understood by those skilled in the art that the structure shown in fig. 1 is only an illustration and is not intended to limit the structure of the electronic device. For example, the computing device may also include more or fewer components than shown in FIG. 1, or have a different configuration than shown in FIG. 1.
It should be noted that the one or more processors and/or other data processing circuitry described above may be referred to generally herein as "data processing circuitry". The data processing circuitry may be embodied in whole or in part in software, hardware, firmware, or any combination thereof. Further, the data processing circuitry may be a single, stand-alone processing module, or incorporated in whole or in part into any of the other elements in the computing device. As referred to in the disclosed embodiments, the data processing circuit acts as a processor control (e.g., selection of a variable resistance termination path connected to the interface).
The memory may be configured to store software programs and modules of application software, such as program instructions/data storage devices corresponding to the method for polling the intelligent outbound robot in the embodiments of the present disclosure, and the processor executes various functional applications and data processing by running the software programs and modules stored in the memory, that is, implements the method for polling the intelligent outbound robot of the application software. The memory may include high speed random access memory, and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory may further include memory located remotely from the processor, which may be connected to the computing device over a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The transmission device is used for receiving or transmitting data via a network. Specific examples of such networks may include wireless networks provided by communication providers of the computing devices. In one example, the transmission device includes a Network adapter (NIC) that can be connected to other Network devices through a base station to communicate with the internet. In one example, the transmission device may be a Radio Frequency (RF) module, which is used for communicating with the internet in a wireless manner.
The display may be, for example, a touch screen type Liquid Crystal Display (LCD) that may enable a user to interact with a user interface of the computing device.
It should be noted here that in some alternative embodiments, the computing device shown in fig. 1 described above may include hardware elements (including circuitry), software elements (including computer code stored on a computer-readable medium), or a combination of both hardware and software elements. It should be noted that FIG. 1 is only one example of a particular specific example and is intended to illustrate the types of components that may be present in a computing device as described above.
In the operating environment described above, according to a first aspect of the present embodiment, a method for polling an intelligent outbound robot is provided. Fig. 2 shows a flow diagram of the method, which, with reference to fig. 2, comprises:
s202: calling a main thread for interacting with a target user of the outbound call according to a preset script program;
s204: starting a sub thread through a main thread according to a script program, and inquiring an idle robot program through the sub thread; and
s206: and in the case that the idle robot program is inquired through the sub thread, the inquired robot program is utilized by the main thread to interact with the target user.
As described in the background art, after an intelligent voice robot is abstracted into robot seats on a logic basis, telephone traffic distribution and seats exist, and the problem of customer queuing is solved. The existing realization scheme is that a scheme of manual seats is sleeved on a robot, the scheme needs a series of operations such as registration of the seats and state recording, the access of the robot needs a great deal of improvement on the existing system, the time is long, the cost is high, the seats of the robot are relatively simple in manual work, states such as small break and leaving are not needed, the management cost is almost zero, and a management method of the manual seats is not needed to be completely used.
In view of this, the present embodiment provides a polling method for an intelligent outbound robot, where in a case where a certain number of robots perform an outbound task, a computing device allocates traffic to the robots, and therefore in this scheme, first, the computing device calls a main thread interacting with a target user of an outbound call according to a preset script program (e.g., Lua script, Python, or other script languages) (corresponding to step S202).
Further, the computing device starts a child thread B by the main thread a and inquires about an idle robot program by the child thread B according to the script program (corresponding to step S204). Wherein the robot program may be an api interface corresponding to the robot. When the main thread A starts the sub-thread B, the channel ID of the main thread A and the task ID of the outbound call are transmitted to the sub-thread B. And the sub-thread B polls all the robot programs according to the task ID of the outbound call to inquire whether idle robot programs exist.
Furthermore, the invention can interface all standard api interfaces, wherein the specific implementation of the api interface determines on which strategy the existing idle robot program is based. The strategy can be, for example, a predictive outbound strategy, an accurate outbound strategy, and the like. And the mechanism of the robot seat resource concurrent locking and the like is realized by the inside of the api interface.
In addition, the main thread A can start the sub-thread B through a loopback and can also start the sub-thread B in a coroutine mode.
Further, in the case where the computing device inquires about an idle robot program through the sub-thread B, the computing device may interact with the target user through the main thread a using the inquired robot program (corresponding to step S206). Further, in the case where the computing device inquires about an idle robot program through the sub-thread B, the computing device may end the sub-thread B by the sub-thread B occupying the idle robot program and notifying the main thread a that the idle robot program has been inquired about.
Therefore, in the manner described above, the computing device uses the preset script program to realize polling and allocation of the idle robot program in a multi-thread combination manner. The intelligent voice robot is low in deployment and application cost of intelligent voice robot seating, and is easy to popularize. Meanwhile, the technical effect of ensuring the stability of the system is achieved without modifying the telephone traffic distribution code of the existing call center. And the technical problems of long modification time and high cost in the existing method for realizing the robot seat on the manual seat scheme in the prior art are solved.
Optionally, in a case where an idle robot program is queried by the sub-thread, after performing an interactive operation with the target user by using the queried robot program through the main thread, the method further includes: in case the interaction with the target user is ended, the queried bot is released by the main thread.
Specifically, when the computing device monitors that the interaction of the robot program with the target user is finished. Namely, under the condition that the robot or the target user hangs up the outbound call, the computing device can release the robot program interacting with the target user through the main thread A. Therefore, the technical effect of efficient polling of the robot program is achieved by timely releasing the robot program.
Optionally, invoking, according to a preset script program, an operation of a main thread interacting with a target user, including: carrying out outbound call on a target user by using preset interactive software; and calling a main thread interacting with the target user according to a preset script program under the condition that the target user receives the outbound call.
Specifically, in a case where an outbound call to a target user is required, first, the computing device may perform the outbound call to the target user by using preset interactive software. Wherein the interactive software can be Freeswitch telephony switching platform software, Asterisk software, and the like. And then, under the condition that the target user receives the outbound call, the computing equipment calls a main thread A interacting with the target user according to a preset script program. Therefore, the operation of calling the main thread is carried out after the target user of the outbound call is received, and the technical effect of effectively utilizing the existing idle robot resources is achieved.
Optionally, invoking a main thread interacting with a target user according to a preset script program, further comprising: and playing preset waiting music through the main thread.
Specifically, after the computing device enters the main thread A, the main thread A calls the sub-thread B to inquire the idle robot program, and meanwhile, the preset waiting music is played through the main thread A. So that the target user can be made aware that the call is still in progress by waiting for music without the robot interacting with the target user.
Optionally, in a case where an idle robot program is queried by the sub-thread, an operation of interacting with the target user by using the queried robot program through the main thread includes: under the condition that an idle robot program is inquired through the sub-thread, the sub-thread occupies the robot program; and stopping playing the waiting music through the main thread, and interacting with the target user through the main thread by using the inquired robot program.
Specifically, in the case where the computing device inquires about an idle robot program through the sub-thread B, the sub-thread B may seize the robot program, and the sub-thread B may transmit a message to the main thread a that an idle robot program is found through the ID of the main thread a received in advance. The computing device then stops playing the waiting music through main thread a, and the computing device interacts with the target user with the queried bot through main thread a. Therefore, the technical effect of starting interaction with the target user by utilizing the idle robot program is achieved by the mode under the condition that the idle robot program is found.
Optionally, after the operation of playing the preset waiting music through the main thread, the method further includes: and when the music is waited to play for the preset time and no idle robot program is inquired, ending the outbound call through the main thread.
Specifically, the computing device may preset a playback time period of the waiting music. That is, when waiting for the music to be played for a preset duration and no idle robot program is found, the computing device may end the outbound call through the main thread. Therefore, the technical effect that the waiting time of the target user is too long due to the fact that no idle robot program exists for a long time is avoided by presetting the longest playing time of the waiting music.
Optionally, this embodiment further includes: when the idle robot program is not inquired by the sub thread within the preset times, sending the information of the idle robot program which is not inquired to the main thread; and the main thread receives the information of the idle robot program which is not inquired, and ends the outbound call.
Specifically, in the case that the sub-thread B does not inquire about an idle robot program within a preset number of times, the computing device transmits information of the robot program that is not inquired about to be idle to the main thread a through the sub-thread B. For example, if the sub-thread B circularly requests the robot program once at intervals of a preset time (e.g. 200ms) and the number of requests reaches a preset upper limit (e.g. the upper limit of calls is preset to 150 times), the sub-thread B does not continue to search for the idle robot program, and notifies the main thread a that the robot program is not found. And then the computing equipment receives the information of the robot program which is not inquired to be idle through the main thread A and ends the outbound call. The outbound call is ended in the mode, so that the problem that the target user waits too long under the condition that no idle robot program exists for a long time is avoided.
Optionally, this embodiment further includes: and when the target user hangs up the outbound call and the sub-thread does not inquire the idle robot program, the sub-thread stops inquiring the idle robot program.
Specifically, in the case where the target user hangs up the outbound call and the sub-thread does not inquire about an idle robot program, the sub-thread stops inquiring about the idle robot program. Therefore, after the outbound call is finished, the waste of robot program resources caused by the fact that the sub-thread B continuously inquires the idle robot program is avoided through the method.
Optionally, this embodiment further includes: and under the condition that the operation of the sub-thread inquiring idle robot program is reported in error, the preset strategy is utilized to interact with the target user.
Specifically, in the event that an operation of a sub-thread query for an idle robot program is reported in error, the computing device interacts with the target user using a preset policy. For example, a computing device may utilize a pool of resources to find a bot to interact with a target user. Therefore, the problem that the calling-out conversation with the target user cannot be carried out due to the error of the program is avoided.
Further, referring to fig. 1, according to a second aspect of the present embodiment, there is provided a storage medium. The storage medium comprises a stored program, wherein the method of any of the above is performed by a processor when the program is run.
In addition, fig. 3 shows another schematic flow chart of polling by the intelligent outbound robot in the embodiment of the present application, and referring to fig. 3, the flow of steps is as follows:
1. the robot calls out a number, after a target user receives the number, the number enters a lua main thread A, the A polls whether an idle robot seat exists or not through a loopback promoter thread B of an FS, and acquires a channel id of the B: uuidB
2. The main thread A transmits the following necessary information to the sub-thread B through the channel variables by uuidB: channel id of main thread a: uuidA, task id: taskId
3. The main thread A defaults to having no idle robot program and starts to play the waiting music
4. The sub-thread B inquires whether an idle robot program exists or not through the taskId and the api interface (the invention does not relate to the api interface, but the invention can be butted with all standard api interfaces, the concrete realization of the api interface determines whether the idle robot program is returned or not based on which strategy, such as a predictive outbound strategy, a precise outbound strategy and the like, and the mechanism of concurrent locking of the seat resource and the like is realized inside the api interface)
4.1 if there is an idle robot program at all, the sub-thread B occupies the seat resource by using the api interface, interrupts the waiting music playing in the main thread A through the uuidA, informs the A that the idle robot program is found, and ends the sub-thread B thread; the main thread A continues to execute downwards, enters the main thread, starts to perform voice interaction with a target user, and informs the api interface to release the robot program resource after the voice interaction with the target user is finished;
4.2 if there is no idle robot program, sub-thread B will request the api interface again every 200ms until the specified number of calls is reached (currently specified is the call upper limit 150, approximately 30 s); repeating the previous flow once the idle robot program exists in the midway; if no idle robot program exists when the maximum calling times are reached, the sub-thread B interrupts the waiting music playing in the main thread A through uuidA, informs the main thread A that no idle robot program exists, and hangs up the telephone of the main thread A;
4.3 if the requested api interface reports errors, in order to ensure that the outbound service is not affected, after 5 continuous error reports (about 1s), the sub-thread B interrupts the waiting music playing in the main thread a through uuidA, and notifies the main thread a of the error report of the interface, but the process can be continuously executed; a continues to be executed downwards, the main flow is entered, voice interaction with a target user is started, and after the voice interaction is finished, an api interface is not called to release the robot program (because the application is not applied at first); the robot program data thereafter is repaired by the repair.
5. If the target user actively hangs up the phone while the main thread A plays the waiting music, the main thread A informs the sub thread B to stop polling, and releases the idle robot program if the idle robot program has been requested.
Therefore, by the mode, on the premise of not greatly changing the existing intelligent call center architecture (a call center java background (responsible for agent management, traffic distribution and the like) + FreeSFIVTCH + Lua), the polling and traffic distribution of the robot program (various external call strategies can be connected, such as predictive external call, accurate external call), occupation/release/state modification of the agent (idle to busy, busy to idle) and various conditions are covered (for example, when a client is actively hung up in a queue, the agent polling is stopped, when the client is still not provided with an idle robot program after the client is queued up, the calling end is actively hung up and the like). The method is accurate in control and convenient to realize, and is beneficial to quickly landing on the ground in related service scenes. The requirements of merchants on charging and resource quantitative presentation under the SaaS scene of the intelligent voice robot are adapted, and the maximum utilization of the resources of the outbound robot can be realized by matching with a predictive outbound strategy.
In addition, fig. 4 shows a system block diagram of polling by the intelligent outbound robot according to the embodiment of the present application, and referring to fig. 4, the steps of polling by the intelligent outbound robot are as follows:
1. intelligently sending out a number to a target client, and receiving by the target client;
2. the method comprises the following steps of entering Lua A (main thread, hereinafter referred to as A), starting Lua B (sub-thread, hereinafter referred to as B) by the Lua A, enabling the Lua A and the A to run in parallel, calling api to circularly inquire whether an idle robot program exists or not by the B, and playing waiting music by the A;
if the idle robot program is inquired, the B occupies the idle robot program, stops the playing of the waiting music in the A, informs the A that the idle robot program is occupied, and finally ends the operation of the B;
4, the A enters the main flow of intelligent voice after obtaining the notice that the B occupies one seat, so that the voice robot and the C-end client perform voice interaction, and the occupied robot program is released after the interaction is finished;
5. exception handling: the client actively hangs up when queuing, A informs B to stop the agent polling (if the idle robot program is occupied, the agent polling is released); b, informing the A of active hang-up when no idle robot program is available after queuing for a certain time; and calling the api to continuously report the error time B to inform A to enter the flow, but not releasing the agent.
Therefore, the invention realizes the polling and distribution of the idle robot by directly using the Lua multithreading and combining the background api, does not need to modify the existing codes of the call center telephone traffic distribution, and ensures the stability of the system. And the deployment and application cost of intelligent voice robot seat is reduced, so that the intelligent voice robot seat is easier to popularize and meets the requirements of clients at the B end. The scheme adopted by the invention has good robustness, various scenes are considered and covered, and a corresponding degradation scheme is provided when a system part fails, so that the outbound task of a client at the B end is furthest prevented from being influenced. At present, no patent is found to provide a solution for intelligent voice robot seating, and the scheme solves the pain point in the application of the intelligent voice robot SaaS.
It should be noted that, for simplicity of description, the above-mentioned method embodiments are described as a series of acts or combination of acts, but those skilled in the art will recognize that the present invention is not limited by the order of acts, as some steps may occur in other orders or concurrently in accordance with the invention. Further, those skilled in the art should also appreciate that the embodiments described in the specification are preferred embodiments and that the acts and modules referred to are not necessarily required by the invention.
Through the above description of the embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but the former is a better implementation mode in many cases. Based on such understanding, the technical solutions of the present invention may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, or a network device) to execute the method according to the embodiments of the present invention.
Example 2
Fig. 5 shows an apparatus 500 for polling by an intelligent outbound robot according to the present embodiment, the apparatus 500 corresponding to the method according to the first aspect of embodiment 1. Referring to fig. 5, the apparatus 500 includes: a calling module 510, configured to call a main thread interacting with a target user of an outbound call according to a preset script program; a query module 520, configured to start a sub-thread through the main thread according to the script program, and query an idle robot program through the sub-thread; and a first interaction module 530 for interacting with the target user by the main thread using the queried robot program in case that an idle robot program is queried by the sub thread.
Optionally, the apparatus 500 further comprises: and the releasing module is used for releasing the inquired robot program through the main thread.
Optionally, the invoking module 510 includes: the outbound call sub-module is used for carrying out outbound call on a target user by utilizing preset interactive software; and the calling submodule is used for calling a main thread interacting with the target user according to a preset script program under the condition that the target user receives the outbound call.
Optionally, the invoking module 510 further includes: and the playing submodule plays preset waiting music through the main thread.
Optionally, the first interaction module 530 includes: the occupation submodule is used for occupying the robot program by the sub-thread under the condition that the idle robot program is inquired by the sub-thread; and the interaction submodule is used for stopping playing the waiting music through the main thread and interacting with the target user through the main thread by utilizing the inquired robot program.
Optionally, the apparatus 500 further comprises: and the first ending module is used for ending the outbound call through the main thread under the condition of waiting for the preset duration of music playing and not inquiring the idle robot program.
Optionally, the apparatus 500 further comprises: the sending module is used for sending the information of the robot program which is not inquired to be idle to the main thread through the sub-thread under the condition that the sub-thread does not inquire the idle robot program within the preset times; and the second ending module is used for receiving the information of the idle robot program by the main thread and ending the outbound call through the main thread.
Optionally, the apparatus 500 further comprises: and the query stopping module is used for stopping querying the idle robot program through the sub-thread under the condition that the target user hangs up the outbound call and the sub-thread does not query the idle robot program.
Optionally, the apparatus 500 further comprises: and the second interaction module is used for interacting with the target user by utilizing a preset strategy under the condition that the operation of the idle robot program inquired by the sub-thread is reported by mistake.
Therefore, according to the embodiment, the computing device polls the idle robot program in a multithreading mode in the process of communicating with the target person who calls out, and the technical effect of effectively utilizing the robot program is achieved. The intelligent voice robot is low in deployment and application cost of intelligent voice robot seating, and is easy to popularize. Meanwhile, the technical effect of ensuring the stability of the system is achieved without modifying the telephone traffic distribution code of the existing call center. And the technical problems of long modification time and high cost in the existing method for realizing the robot seat on the manual seat scheme in the prior art are solved.
Example 3
Fig. 6 shows an apparatus 600 for polling by an intelligent outbound robot according to the present embodiment, the apparatus 600 corresponding to the method according to the first aspect of embodiment 1. Referring to fig. 6, the apparatus 600 includes: a processor 610; and a memory 620 coupled to the processor 610 for providing instructions to the processor 610 to process the following processing steps: calling a main thread for interacting with a target user of the outbound call according to a preset script program; starting a sub thread through a main thread according to a script program, and inquiring an idle robot program through the sub thread; and when the idle robot program is inquired through the sub thread, the inquired robot program is used for interacting with the target user through the main thread.
Optionally, in a case where an idle robot program is queried by the sub-thread, after performing an interactive operation with the target user by using the queried robot program through the main thread, the method further includes: the queried bot is released by the main thread.
Optionally, invoking, according to a preset script program, an operation of a main thread interacting with a target user, including: carrying out outbound call on a target user by using preset interactive software; and calling a main thread interacting with the target user according to a preset script program under the condition that the target user receives the outbound call.
Optionally, invoking a main thread interacting with a target user according to a preset script program, further comprising: and playing preset waiting music through the main thread.
Optionally, in a case where an idle robot program is queried by the sub-thread, an operation of interacting with the target user by using the queried robot program through the main thread includes: under the condition that an idle robot program is inquired through the sub-thread, the sub-thread occupies the robot program; and stopping playing the waiting music through the main thread, and interacting with the target user through the main thread by using the inquired robot program.
Optionally, after the operation of playing the preset waiting music through the main thread, the method further includes: and when the music is waited to play for the preset time and no idle robot program is inquired, ending the outbound call through the main thread.
Optionally, the memory 620 also provides instructions to the processor 610 to process the following processing steps: when the idle robot program is not inquired by the sub-thread within the preset times, the information of the robot program which is not inquired to be idle is sent to the main thread through the sub-thread; and the main thread receives the information of the idle robot program which is not inquired, and the outbound call is ended through the main thread.
Optionally, the memory 620 also provides instructions to the processor 610 to process the following processing steps: and stopping querying the idle robot program through the sub-thread under the condition that the target user hangs up the outbound call and the sub-thread does not query the idle robot program.
Optionally, the memory 620 also provides instructions to the processor 610 to process the following processing steps: and under the condition that the operation of the sub-thread inquiring idle robot program is reported in error, the preset strategy is utilized to interact with the target user.
Therefore, according to the embodiment, the computing device polls the idle robot program in a multithreading mode in the process of communicating with the target person who calls out, and the technical effect of effectively utilizing the robot program is achieved. The intelligent voice robot is low in deployment and application cost of intelligent voice robot seating, and is easy to popularize. Meanwhile, the technical effect of ensuring the stability of the system is achieved without modifying the telephone traffic distribution code of the existing call center. And the technical problems of long modification time and high cost in the existing method for realizing the robot seat on the manual seat scheme in the prior art are solved.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
In the above embodiments of the present invention, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
In the embodiments provided in the present application, it should be understood that the disclosed technology can be implemented in other ways. The above-described embodiments of the apparatus are merely illustrative, and for example, the division of the units is only one type of division of logical functions, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or may be integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, units or modules, and may be in an electrical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: a U-disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a removable hard disk, a magnetic or optical disk, and other various media capable of storing program codes.
The foregoing is only a preferred embodiment of the present invention, and it should be noted that, for those skilled in the art, various modifications and decorations can be made without departing from the principle of the present invention, and these modifications and decorations should also be regarded as the protection scope of the present invention.
Claims (10)
1. A method for polling an intelligent outbound robot, comprising:
calling a main thread for interacting with a target user of the outbound call according to a preset script program;
according to the script program, starting a sub-thread through the main thread, and inquiring an idle robot program through the sub-thread; and
and when the idle robot program is inquired through the sub thread, the main thread interacts with the target user by utilizing the inquired robot program.
2. The method of claim 1, wherein after the operation of interacting with the target user by the main thread using the queried robot program in case of querying an idle robot program by the sub-thread, further comprising:
releasing the queried bot by the main thread.
3. The method of claim 1, wherein invoking the operation of the main thread interacting with the target user according to a preset script program comprises:
carrying out the outbound call on a target user by using preset interactive software; and
and calling a main thread interacting with the target user according to a preset script program under the condition that the target user receives the outbound call.
4. The method of claim 1, wherein the main thread for interacting with the target user is invoked according to a preset script program, further comprising:
and playing preset waiting music through the main thread.
5. The method of claim 4, wherein the act of interacting with the target user with the queried bot by the main thread in the event that a free bot is queried by the sub-thread comprises:
when the sub thread queries an idle robot program, the sub thread occupies the robot program; and
and stopping playing the waiting music through the main thread, and interacting with the target user through the main thread by utilizing the inquired robot program.
6. The method of claim 4, wherein after the operation of playing the preset wait music through the main thread, further comprising:
and when the preset time length for waiting music playing is up and no idle robot program is inquired, ending the outbound call through the main thread.
7. The method of claim 1, further comprising:
when the idle robot program is not inquired by the sub thread within the preset times, the information of the robot program which is not inquired is sent to the main thread through the sub thread; and
and the main thread receives the information of the robot program which is not inquired to be idle, and the outbound call is ended through the main thread.
8. The method of claim 1, further comprising: and stopping querying the idle robot program through the sub-thread when the target user hangs up the outbound call and the sub-thread does not query the idle robot program.
9. The method of claim 1, further comprising: and under the condition that the operation of the sub-thread query idle robot program is reported in error, interacting with the target user by utilizing a preset strategy.
10. A storage medium comprising a stored program, wherein the method of any one of claims 1 to 9 is performed by a processor when the program is run.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010808234 | 2020-08-12 | ||
CN2020108082344 | 2020-08-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114079698A true CN114079698A (en) | 2022-02-22 |
Family
ID=80281669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010833041.4A Pending CN114079698A (en) | 2020-08-12 | 2020-08-18 | Method and device for polling intelligent outbound robot and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114079698A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114598778A (en) * | 2022-03-21 | 2022-06-07 | 鼎富新动力(北京)智能科技有限公司 | Session construction method, device, session system and storage medium |
CN115914466A (en) * | 2023-01-06 | 2023-04-04 | 北京健康之家科技有限公司 | Voice interaction method and device based on voice stream robot and storage medium |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103179294A (en) * | 2013-03-12 | 2013-06-26 | 厦门亿联网络技术股份有限公司 | Method for preventing task congestion in VOIP (voice over internet protocols) phone through thread pool |
CN105843592A (en) * | 2015-01-12 | 2016-08-10 | 芋头科技(杭州)有限公司 | System for implementing script operation in preset embedded system |
CN107613150A (en) * | 2016-07-12 | 2018-01-19 | 深圳联友科技有限公司 | A kind of method and device of call center's automatic outer call |
CN108471478A (en) * | 2018-03-13 | 2018-08-31 | 杭州声讯网络科技有限公司 | A method of improving telephone outbound call efficiency |
CN109873909A (en) * | 2019-03-15 | 2019-06-11 | 腾讯科技(深圳)有限公司 | A kind of voice call method, device and equipment and computer storage medium |
CN110392168A (en) * | 2018-04-16 | 2019-10-29 | 华为技术有限公司 | Call processing method, device, server, storage medium and system |
CN110569121A (en) * | 2019-09-12 | 2019-12-13 | 华润万家有限公司 | Multithreading concurrent processing method and device based on application robot |
CN111061259A (en) * | 2018-10-15 | 2020-04-24 | 上海肇观电子科技有限公司 | Incident driving method, system, device and storage medium for walking robot |
CN111309892A (en) * | 2020-05-09 | 2020-06-19 | 浙江百应科技有限公司 | Multi-service system linkage and interaction method based on intelligent robot |
-
2020
- 2020-08-18 CN CN202010833041.4A patent/CN114079698A/en active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103179294A (en) * | 2013-03-12 | 2013-06-26 | 厦门亿联网络技术股份有限公司 | Method for preventing task congestion in VOIP (voice over internet protocols) phone through thread pool |
CN105843592A (en) * | 2015-01-12 | 2016-08-10 | 芋头科技(杭州)有限公司 | System for implementing script operation in preset embedded system |
CN107613150A (en) * | 2016-07-12 | 2018-01-19 | 深圳联友科技有限公司 | A kind of method and device of call center's automatic outer call |
CN108471478A (en) * | 2018-03-13 | 2018-08-31 | 杭州声讯网络科技有限公司 | A method of improving telephone outbound call efficiency |
CN110392168A (en) * | 2018-04-16 | 2019-10-29 | 华为技术有限公司 | Call processing method, device, server, storage medium and system |
CN111061259A (en) * | 2018-10-15 | 2020-04-24 | 上海肇观电子科技有限公司 | Incident driving method, system, device and storage medium for walking robot |
CN109873909A (en) * | 2019-03-15 | 2019-06-11 | 腾讯科技(深圳)有限公司 | A kind of voice call method, device and equipment and computer storage medium |
CN110569121A (en) * | 2019-09-12 | 2019-12-13 | 华润万家有限公司 | Multithreading concurrent processing method and device based on application robot |
CN111309892A (en) * | 2020-05-09 | 2020-06-19 | 浙江百应科技有限公司 | Multi-service system linkage and interaction method based on intelligent robot |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114598778A (en) * | 2022-03-21 | 2022-06-07 | 鼎富新动力(北京)智能科技有限公司 | Session construction method, device, session system and storage medium |
CN115914466A (en) * | 2023-01-06 | 2023-04-04 | 北京健康之家科技有限公司 | Voice interaction method and device based on voice stream robot and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4243391A2 (en) | System and method for omni-channel notification and selection | |
CN110162314B (en) | Software upgrading management method, server, terminal, device and storage medium | |
CN108920120B (en) | Information display control method and device | |
CN114079698A (en) | Method and device for polling intelligent outbound robot and storage medium | |
WO2016029706A1 (en) | Service processing method and apparatus for terminal | |
CN108270732A (en) | A kind of Streaming Media processing method and system | |
US20090129562A1 (en) | Method, system and device for dispatching calls | |
WO2022056081A1 (en) | A wireless device and a method for automatic recovery from failures | |
CN107959761B (en) | Transmit-receive double-link realization method and device based on open source telephone soft switching system | |
US20120173726A1 (en) | Apparatus and Method for Resource Contention | |
EP3116221A1 (en) | Method for multi-picture control in video conference, related device, and storage medium | |
US8082339B2 (en) | Electronic device network having graceful denial of service | |
CN111328061A (en) | Audio resource control method, vehicle-mounted terminal and system | |
US11134154B2 (en) | Call-out method and apparatus having immediate callback function | |
CN103428381B (en) | The redistribution method and device attended a banquet | |
CN105992071B (en) | Service presentation method and device | |
CN114286293A (en) | Message push management method, device, system, computer equipment and storage medium | |
CN110119111B (en) | Communication method and device, storage medium, and electronic device | |
CN103731337A (en) | Transfer method, system and device for text chat and conversation and agent client terminal | |
CN111782366A (en) | Distributed task scheduling method and device | |
CN111031357A (en) | Play resource management system | |
CN106162767A (en) | Talking management method, device and multisystem terminal | |
CN105025468A (en) | Method of realizing data transmission management, apparatus and terminal equipment | |
CN103780780B (en) | A kind of method, device and switch ensureing voip call center quality of voice transmission | |
US20230309191A1 (en) | Emergency call method and apparatus, storage medium, and terminal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |