User request allocation method and device, equipment and readable medium

By determining the nature of the request and the working status of the reception object in the user request allocation, ensuring that the user request is processed in the appropriate reception object, solving the problems of low processing efficiency and poor user experience in traditional solutions, and achieving more efficient request processing and Clear allocation of responsibilities.

CN119130008APending Publication Date: 2024-12-13BEIJING JINGDONG YUANSHENG TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411145422.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-20
Publication Date
2024-12-13

AI Technical Summary

Technical Problem

During the user request allocation process, traditional solutions lead to low processing efficiency and poor user experience, user requests are transferred between multiple reception objects, and the scope of responsibility is unclear.

Method used

By determining whether the user request is a first request or a non-first request, matching the appropriate reception object from the reception object set, and determining whether to assign the request to the first reception object or the second reception object associated with it based on its working status, ensuring that the request is made Processing in the same reception object for efficiency and experience.

Benefits of technology

Improve processing efficiency, improve user experience, avoid user requests from flowing between multiple reception objects, and clarify the scope of responsibility.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119130008A_ABST
    Figure CN119130008A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a user request allocation method and device, equipment and a readable medium. The method comprises the following steps: in response to a received user request for a target application, determining whether the user request is a first request or a non-first request; in response to determining that the user request is a non-first request, determining a working state of a first reception object matched with the user request from a reception object set; and based on the working state of the first reception object, determining to distribute the user request to the first reception object or a second reception object associated with the first reception object for processing. In this way, the processing efficiency can be improved, and the user experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Example embodiments of the present disclosure relate generally to the field of computer technology, and more particularly, to methods, apparatuses, devices, and computer-readable storage media for user request allocation. Background Art

[0002] In the process of receiving users, when a user sends multiple user requests within a period of time, the user requests may flow between multiple reception objects, resulting in low processing efficiency and poor user experience. Summary of the invention

[0003] In a first aspect of the present disclosure, a method for allocating user requests is provided. The method includes: in response to receiving a user request for a target application, determining whether the user request is a first request or a non-first request; in response to determining that the user request is a non-first request, determining the working state of a first reception object matching the user request from a reception object set; and based on the working state of the first reception object, determining to allocate the user request to the first reception object or a second reception object associated with the first reception object for processing.

[0004] In a second aspect of the present disclosure, a device for user request allocation is provided. The device includes: a receiving module configured to determine whether the user request is a first request or a non-first request in response to receiving a user request for a target application; a determining module configured to determine the working state of a first reception object matching the user request from a reception object set in response to determining that the user request is a non-first request; and an allocating module configured to determine, based on the working state of the first reception object, whether to allocate the user request to the first reception object or a second reception object associated with the first reception object for processing.

[0005] In a third aspect of the present disclosure, an electronic device is provided. The electronic device includes at least one processing unit; and at least one memory, the at least one memory is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, and when the instructions are executed by the at least one processing unit, the electronic device executes the method of the first aspect of the present disclosure.

[0006] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, wherein a computer program is stored on the computer-readable storage medium, and the computer program can be executed by a processor to perform the method according to the first aspect of the present disclosure.

[0007] In a fifth aspect of the present disclosure, a computer program product is provided, comprising computer executable instructions, wherein the computer executable instructions can be executed by a processor to perform the method according to the first aspect of the present disclosure.

[0008] It should be understood that the contents described in the summary of the invention are not intended to limit the key features or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] In the following, in conjunction with the accompanying drawings and with reference to the following detailed description, the above and other features, advantages and aspects of various implementations of the present disclosure will become more apparent. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:

[0010] Figure 1 A schematic diagram showing an example environment in which embodiments of the present disclosure can be implemented;

[0011] Figure 2 A flowchart showing a process of user request allocation according to some embodiments of the present disclosure;

[0012] Figure 3 A flowchart showing a process of user request allocation according to some embodiments of the present disclosure;

[0013] Figure 4 A flowchart showing a process of first request allocation according to some embodiments of the present disclosure;

[0014] Figure 5 A flowchart showing a process of non-first request allocation according to some embodiments of the present disclosure;

[0015] Figure 6 A schematic diagram showing a process of work order processing according to some embodiments of the present disclosure;

[0016] Figure 7 A schematic structural block diagram showing an apparatus for user request allocation according to some embodiments of the present disclosure; and

[0017] Figure 8 A block diagram of an electronic device is shown in which one or more embodiments of the present disclosure may be implemented. DETAILED DESCRIPTION

[0018] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments described herein. On the contrary, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.

[0019] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below.

[0020] It should be noted that the acquisition, storage and application of user personal information involved in the technical solution of the present disclosure are in compliance with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0021] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.

[0022] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be performed will require obtaining and using the user's personal information, so that the user can independently choose whether to provide personal information to software or hardware such as electronic devices, applications, servers or storage media that execute operations of the technical solution of the present disclosure based on the prompt message.

[0023] As an optional but non-limiting implementation, in response to receiving an active request from the user, the prompt information is sent to the user in a manner such as a pop-up window, in which the prompt information can be presented in text form. In addition, the pop-up window can also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.

[0024] In the traditional user request allocation scheme, when a user has multiple user requests within a period of time, the reception object that handles each user request may be different, resulting in low processing efficiency. Furthermore, after the first reception object that handles the user request cannot handle the user request, this scheme will transfer the user request to other reception objects to handle the user request, so that the user needs to consult with multiple reception objects, resulting in a poor user experience. Moreover, the use of the traditional user request allocation scheme may also result in that the scope of responsibility of each reception object is unclear because the user request may flow between multiple reception objects.

[0025] In view of this, an embodiment of the present disclosure provides a scheme for allocating user requests. The scheme includes: in response to receiving a user request for a target application, determining whether the user request is a first request or a non-first request; in response to determining that the user request is a non-first request, determining the working state of a first reception object that matches the user request from a reception object set; and based on the working state of the first reception object, determining to allocate the user request to the first reception object or a second reception object associated with the first reception object for processing. In this way, processing efficiency can be improved, and user experience can also be enhanced.

[0026] Figure 1 A schematic diagram of an example environment 100 is shown in which embodiments of the present disclosure can be implemented.

[0027] like Figure 1 As shown, the distribution system 110 may determine a reception object 132 matching the user request 120 from the reception object set 130 based on receiving the user request 120 for the target application. Further, the distribution system 110 may provide the user request 120 to the reception object 132 to determine a processing result 140 for the user request 120.

[0028] In some examples, user request 120 may be a consultation request for the target application. It will be understood that this is merely exemplary and not restrictive. In other examples, the target application may indicate a shopping application. It will be understood that this is merely exemplary and not restrictive. In other examples, the target application may also indicate a logistics application. It will be understood that this is merely exemplary and not restrictive. In other examples, assuming that the target application indicates a shopping application, the user request 120 may be a consultation on the goods in the shopping application, and the reception object may be online customer service. In more examples, assuming that the target application indicates a logistics application, the user request 120 may be a complaint, consultation, or urging for a logistics package, and the reception object may be online customer service, telephone customer service, etc. It will be understood that this is merely exemplary and not restrictive.

[0029] The distribution system 110 may include any computing system with computing capabilities, such as various computing devices / systems, terminal devices, server devices, etc. The terminal device may be any type of mobile terminal, fixed terminal or portable terminal, including a mobile phone, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a media computer, a multimedia tablet, a handheld computer, a portable game terminal, a VR / AR device, a personal communication system (PCS) device, a personal navigation device, a personal digital assistant (PDA), an audio / video player, a digital camera / camcorder, a positioning device, a television receiver, a radio broadcast receiver, an e-book device, a game device, or any combination of the foregoing, including accessories and peripherals of these devices or any combination thereof.

[0030] It should be understood that the structure and function of the various elements in the environment 100 are described for exemplary purposes only and do not imply any limitation on the scope of the present disclosure.

[0031] Some example embodiments of the present disclosure will be described below with continued reference to the accompanying drawings.

[0032] Figure 2 1 shows a flowchart of a process 200 for user request allocation according to some embodiments of the present disclosure. The process 200 may be implemented at the allocation system 110. For ease of discussion, reference will be made to Figure 1 The process 200 is described with reference to the environment 100 of FIG.

[0033] At block 210 , the distribution system 110 , in response to receiving a user request 120 for a target application, determines whether the user request 120 is a first request or a non-first request.

[0034] In some embodiments, in response to determining that the user request 120 is a first request, the distribution system 110 determines the attributes of the user request 120. In some examples, the attributes of the user request may be at least one of a user tag, a consulting channel, a consulting object classification, and a question type. Specifically, the user tag may indicate whether the user is a member user, and the consulting channel may indicate from which channel of the target application (e.g., IM system, applet, telephone, etc.) the user sends the user request. Further, in the case where the consulting object indicates a logistics package, the consulting object classification may indicate an extra heavy class, an express class, and an air transport class, etc. Furthermore, in the case where the consulting object indicates a commodity, the consulting object classification may indicate a digital class, a household class, and a food class, etc.

[0035] In other embodiments, the distribution system 110 determines the first reception object that matches the attribute of the user request 120 from the reception object set 130. In some examples, a database for recording the user request 120 within a period of history may be queried to determine whether there is a reception record. If there is a reception record, the first reception object may be determined from the reception record. In more examples, the database for recording the user request 120 may be at least one of a MySQL (My Structured Query Language) database and a Redis (Remote Dictionary Server) database. In this way, processing efficiency may be improved.

[0036] In some embodiments, the allocation system 110 determines at least one capability set corresponding to the reception object set 130, each capability set in the at least one capability set corresponds to at least one capability, and each capability set at least indicates at least one reception object 132 having the corresponding capability. In some examples, each capability set may correspond to an identifier (ID), and each capability set may be bound to a reception object list. In other examples, since the business level of each reception object 132 is different, for example, the processing speed of a customer service with a higher business level is faster than that of a customer service with a lower business level, a corresponding processing indicator may be determined for each reception object 132, and the user request 120 may be allocated to the first reception object 132 for processing by performing a proportional allocation calculation on the processing indicator.

[0037] In other embodiments, in response to the matching result indicating that the attribute of the user request 120 and the capability set in the at least one capability set match successfully, the allocation system 110 may determine a first reception object from the at least one reception object 132 in the capability set. In some embodiments, the allocation system 110 determines the processing index of each reception object 132 in the at least one reception object 132 using a proportional allocation algorithm. Further, the allocation system 110 may determine the first reception object based on the processing index of each reception object 132 in the at least one reception object 132.

[0038] At block 220 , in response to determining that the user request 120 is a non-first request, the allocation system 110 determines the working status of a first hospitality object matching the user request 120 from the hospitality object set 130 .

[0039] In some embodiments, the working status of each reception object 132 in the reception object set 130 can be updated through a scheduled task. In this way, the working status of each reception object 132 can be updated in time to avoid problems, improve processing efficiency, and enhance user experience.

[0040] In block 230, the allocation system 110 determines to allocate the user request 120 to the first reception object or the second reception object associated with the first reception object for processing based on the working status of the first reception object. In some embodiments, if the working status of the first reception object indicates that it is working, the allocation system 110 may allocate the user request 120 to the first reception object for processing. In other embodiments, if the working status of the first reception object indicates that it is not working, the allocation system 110 may allocate the user request 120 to the second reception object associated with the first reception object for processing. In some examples, reception object J may correspond to an associated reception object W, and reception object W may also correspond to an associated reception object K, and so on. In this case, when the working status of reception object J indicates that it is not working, the working status of reception object W is first determined. If the working status of reception object W also indicates that it is not working, then the working status of reception object K is confirmed. If the working status of reception object K also indicates that it is not working, then the reception object 132 associated with reception object K is continuously determined until the reception object 132 indicating that the working status is working is found. In some examples, if the number of user requests 120 received by the same reception object 132 has reached a number threshold, the user requests 120 exceeding the number threshold are submitted to the superior of the reception object 132 to reallocate the user requests 120. In this way, processing efficiency can be improved.

[0041] In some embodiments, the allocation system 110 may determine the processing result 140 of the user request 120 in the following manner. Specifically, the allocation system 110 may determine whether the user request 120 exceeds the capacity range of the first reception object or the second reception object. Further, if it is determined that the user request 120 does not exceed the capacity range of the first reception object or the second reception object, the allocation system 110 may determine the processing result 140 of the user request 120. Further, if it is determined that the user request 120 exceeds the capacity range of the first reception object or the second reception object, the allocation system 110 may provide the user request 120 to the work order system to determine the processing result 140 of the user request 120 from the work order system. In some embodiments, the allocation system 110 controls the work order system to provide the user request 120 to a third reception object whose capacity range matches the user request 120 to determine the processing result 140 of the user request 120. In this way, processing efficiency can be improved and user experience can be enhanced.

[0042] In some embodiments, if the response time of the third reception object exceeds the response time threshold corresponding to the type of user request 120, the allocation system 110 may send a response reminder to the third reception object. Further, different types of user requests 120 may correspond to different response time thresholds. In this way, the progress of work order processing can be monitored in real time to improve processing efficiency.

[0043] In some embodiments, if the first reception object or the second reception object completes the user request 120, the distribution system 110 may store the association relationship between the first reception object or the second reception object and the user corresponding to the user request 120. In some examples, the association relationship between the first reception object or the second reception object and the user corresponding to the user request 120 may be stored in a MySQL database. Specifically, the Apache Flink (Flink for short) task can be automatically stored in an asynchronous Redis database through Binlog (Binary Log, binary log) monitoring, and a verification query can be performed after the second entry. Further, Binlog is a binary log file in a MySQL database, which can be used to record all changes to the database. Furthermore, Apache Flink is a distributed open source computing framework for data stream processing and batch data processing. More, Redis is an open source, memory-based key-value non-relational database. Specifically, the attributes of the user request 120 can be used as keywords (key), and the association relationship between the reception objects 132 can be used as values ​​(value). In this way, processing efficiency can be improved and user experience can be enhanced.

[0044] Continue to refer to Figure 3 The example process of user request 120 allocation is further described. It can be understood that this is only exemplary and not restrictive.

[0045] Figure 3 1 shows a flowchart of a process 300 for user request allocation according to some embodiments of the present disclosure. The process 300 may be implemented at the allocation system 110. For ease of discussion, reference will be made to Figure 1 The process 300 is described with reference to the environment 100 of FIG.

[0046] At block 310 , the distribution system 110 receives a user request 120 .

[0047] In some examples, the user request 120 may be a consultation request for the target application. For example, assuming that the target application is a shopping application, the user request 120 may be an after-sales consultation for a product purchased in the shopping application, or the user request 120 may be a consultation for a product of interest in the shopping application. It is understood that this is merely exemplary and not restrictive.

[0048] After the allocation system 110 receives the user request 120, the allocation system 110 determines whether it is a first request in block 320. In some examples, a database for recording user requests 120 within a period of history may be queried to determine whether there is a reception record. If there is a reception record, the user request 120 may be determined to be a first request. If there is no reception record, the user request 120 may be determined to be a first request.

[0049] If the distribution system 110 determines that the user request 120 is a first request, at block 325 , the distribution system 110 determines a first reception object.

[0050] If the allocation system 110 determines that the user request 120 is not a first request (also referred to as a non-first request), in block 330 , the allocation system 110 determines the working status of the first reception object.

[0051] In some examples, if the user request 120 is not the first request, the working status of the first reception object is determined first, so as to preferentially assign the user request 120 to the first reception object that has previously received the user request 120 .

[0052] At block 335 , the allocation system 110 determines that the operating status of the first hospitality object indicates that it is operating.

[0053] In some examples, if it is determined that the working status of the first hospitality object indicates that it is working, block 340 may be performed to assign the user request 120 to the first hospitality object for processing.

[0054] At block 340 , the distribution system 110 distributes the user request 120 to the first hospitality object.

[0055] At block 350 , the allocation system 110 determines that the operating status of the first hospitality object indicates that it is not operating.

[0056] In some examples, if it is determined that the operational status of the first hospitality object indicates that it is not operational, block 355 may be executed to assign the user request 120 to a second hospitality object for processing.

[0057] At block 355 , the distribution system 110 distributes the user request 120 to a second hospitality object.

[0058] After executing block 340 or block 355 , block 360 may be executed.

[0059] At block 360 , the allocation system 110 determines whether the capacity of the first hospitality target or the second hospitality target is exceeded.

[0060] In some examples, if after executing block 340, block 360 is executed, the allocation system 110 determines whether the capacity range of the first hospitality object is exceeded in block 360. In some examples, if after executing block 355, block 360 is executed, the allocation system 110 determines whether the capacity range of the second hospitality object is exceeded in block 360.

[0061] If the allocation system 110 determines that the capabilities of the first hospitality object or the second hospitality object are exceeded, at block 370 , the allocation system 110 provides the user request 120 to a work order system.

[0062] In some examples, when the user request 120 exceeds the capability range of the first hospitality object or the second hospitality object, the allocation system 110 may provide the user request 120 to the work order system to determine a processing result 140 of the user request 120 from the work order system.

[0063] If the allocation system 110 determines that the capacity range of the first hospitality target or the second hospitality target has not been exceeded, at block 380 , the allocation system 110 determines the processing result 140 .

[0064] In some examples, when the user request 120 does not exceed the capability range of the first hospitality object or the second hospitality object, the allocation system 110 may directly determine the processing result 140 of the user request 120 from the first hospitality object or the second hospitality object.

[0065] Continue to refer to Figure 4 The example process of first request allocation is further described. It can be understood that this is only exemplary and not restrictive.

[0066] Figure 4 4 is a flowchart of a process 400 for requesting an allocation for the first time according to some embodiments of the present disclosure. The process 400 may be implemented at the allocation system 110. For ease of discussion, reference will be made to Figure 1 The process 400 is described with reference to the environment 100 of FIG.

[0067] At block 410 , the distribution system 110 receives a first request.

[0068] In the event that the user request 120 is a first time request, at block 420 , the distribution system 110 determines attributes of the user request 120 .

[0069] In some examples, when the user request 120 indicates an order for a target application, the user request 120 may indicate the province to which the order belongs, the type of inquiry question, the user's membership level in the target application, the product category, the order channel, etc. Specifically, the inquiry question type may indicate after-sales questions, expediting questions, pre-sales questions, etc., the product category may indicate the type of product in the user's order for the target application (e.g., home furnishings, digital products, etc.), and the order channel may indicate the channel of the user's order for the target application (e.g., the mini program of the target application, the official account of the target application, etc.).

[0070] At block 430 , allocation system 110 determines at least one capability set.

[0071] Specifically, at least one capability set corresponds to the reception object set 130, each capability set in the at least one capability set corresponds to at least one capability, and each capability set at least indicates at least one reception object 132 having the corresponding capability. In some examples, assuming that capability set A corresponds to the capability of receiving questions about household goods, and capability set A includes reception object B, reception object F, and reception object G, then reception object B, reception object F, and reception object G all have the capability of receiving questions about household goods. In other examples, assuming that capability set A corresponds to the capability of receiving questions about household goods and digital goods, and capability set A includes reception object B, reception object F, and reception object G, then reception object B, reception object F, and reception object G all have the capability of receiving questions about household goods and digital goods.

[0072] At block 440 , the allocation system 110 determines a first hospitality object.

[0073] Specifically, if the attribute of the user request 120 and the matching result of the capability set in the at least one capability set indicate a successful match, the distribution system 110 may determine a first reception object from the at least one reception object 132 in the capability set. In some examples, the distribution system 110 may include a routing system, and the first reception object may be determined by the routing system using an MVEL (MVFLEX Expression Language) expression.

[0074] At block 450 , the allocation system 110 determines whether the first reception object is within the capacity range.

[0075] If it is determined that the user request 120 exceeds the capabilities of the first hospitality subject, at block 460 , the allocation system 110 provides the user request 120 to the work order system.

[0076] In some examples, if it is determined that the user request 120 exceeds the capability range of the first reception object, the user request 120 is provided to the work order system to determine a processing result 140 of the user request 120 from the work order system.

[0077] If it is determined that the user request 120 does not exceed the capabilities of the first accommodation object, at block 470 , the allocation system 110 determines a processing result 140 .

[0078] Continue to refer to Figure 5 The example process of non-first request allocation is further described. It can be understood that this is only exemplary and not restrictive.

[0079] Figure 5 1 shows a flowchart of a process 500 for non-first request allocation according to some embodiments of the present disclosure. The process 500 may be implemented at the allocation system 110. For ease of discussion, reference will be made to Figure 1 The process 500 is described with reference to the environment 100 of FIG.

[0080] At block 510 , the distribution system 110 receives a non-first request.

[0081] In the event that the user request 120 is a non-first request, at block 520 , the allocation system 110 determines whether the first hospitality object is working.

[0082] If the distribution system 110 determines that the first hospitality object is operating, at block 530 , the distribution system 110 distributes the user request 120 to the first hospitality object for processing.

[0083] If the allocation system 110 determines that the first hospitality object is not operational, at block 540 , the allocation system 110 determines a second hospitality object that is associated with the first hospitality object.

[0084] In some examples, the correspondence between the first hospitality object and the second hospitality object may be predetermined based on the capability type and capability range of the hospitality object 132. It is understood that this is merely exemplary and not limiting.

[0085] At block 545, the allocation system 110 determines whether the second hospitality object is operating.

[0086] If the distribution system 110 determines that the second hospitality object is operating, at block 550 , the distribution system 110 distributes the user request 120 to the second hospitality object for processing.

[0087] If the distribution system 110 determines that the second hospitality object is operating, at block 555 , the distribution system 110 distributes the user request 120 to another hospitality object for processing.

[0088] In some examples, if the working status of the second reception object also indicates that it is not working, then the working status of other reception objects associated with the second reception object is confirmed until a reception object 132 whose working status indicates that it is working is found. In other examples, if the number of user requests 120 received by the same reception object 132 has reached a number threshold, then the user requests 120 exceeding the number threshold are submitted to the superior of the reception object to reallocate these user requests 120.

[0089] After executing block 530 , block 550 , or block 555 , at block 560 , the allocation system 110 determines whether the capacity of the reception object 132 has been exceeded.

[0090] In some examples, if block 530 is executed, the allocation system 110 determines whether the capacity of the first hospitality object is exceeded at block 560. In other examples, if block 550 is executed, the allocation system 110 determines whether the capacity of the second hospitality object is exceeded at block 560. In other examples, if block 555 is executed, the allocation system 110 determines whether the capacity of other hospitality objects is exceeded at block 560.

[0091] If the distribution system 110 determines that the user request 120 exceeds the capabilities of the reception object 132 , at block 570 , the distribution system 110 provides the user request 120 to a work order system.

[0092] In some examples, if it is determined that the user request 120 exceeds the capabilities of the reception object 132 , the user request 120 is provided to a work order system to determine a processing result 140 of the user request 120 from the work order system.

[0093] At block 580 , the distribution system 110 determines the processing results 140 .

[0094] In some examples, processing result 140 may be an answer or solution to the consulting question in user request 120 .

[0095] Continue to refer to Figure 6 The example process of work order processing is further described. It can be understood that this is only exemplary and not restrictive.

[0096] Figure 6 Schematic diagram of a process 600 of work order processing according to some embodiments of the present disclosure is shown. Process 600 can be implemented at the distribution system 110. For ease of discussion, reference will be made to Figure 1 The process 600 is described with reference to the environment 100 of FIG.

[0097] At block 601 , the work order system creates a work order.

[0098] Specifically, the distribution system 110 may include a work order system, which may indicate a message transfer platform between reception objects 132. In some examples, after the distribution system 110 determines that the user request 120 exceeds the capacity of the first reception object or the second reception object, the work order initiator may create a work order in the work order system.

[0099] After the work order system creates a work order, at block 610 , the work order system determines an assignee of the work order.

[0100] In some examples, the work order acceptor may be a third reception object whose capability range matches the user request 120. For example, assuming that the allocation system 110 determines that the user request 120 exceeds the capability range of reception object N, reception object K, or third reception object L, it may determine the work order acceptor G (also referred to as reception object G) to provide the user request 120 to the work order acceptor for processing. In other examples, the work order acceptor may be specified by the work order initiator. In more examples, the work order acceptor may also be matched according to the user request 120 by using the work order system.

[0101] At block 620 , the work ticket system receives the work ticket message.

[0102] In some examples, the work order message may include the work order acceptor and the created form. It is understood that this is merely exemplary and not restrictive. In other examples, the work order message may be expressed as "received a newly created work order, specifying the work order acceptor as the reception object Y". It is understood that this is merely exemplary and not restrictive. In more examples, the work order message may be sent to the work order system via MQ (Message Queue).

[0103] At block 622 , the work ticket system assigns the user request 120 to a work ticket assignee.

[0104] In some examples, the work order system can determine to which work order acceptor the user request 120 is assigned based on the received work order message. In other examples, the work order system can also use the work order system to determine the work order acceptor that matches the user request 120. In more examples, after the user request 120 is assigned to the work order acceptor, the work order acceptor can be reminded through online real-time communication reminders and emails, and the processing progress can also be monitored through scheduled scans of scheduled tasks.

[0105] After the work ticket system assigns the user request 120 to the work ticket assignee, at block 624 , the work ticket system monitors the response time.

[0106] In some examples, the work order system may continuously monitor the response time after assigning the user request 120 to the work order assignee until the work order assignee receives the work order, so as to supervise the processing timeliness of the user request 120 .

[0107] At block 626 , the work order system determines whether the response time is greater than a response time threshold.

[0108] In some examples, different types of user requests 120 correspond to different response time thresholds. Specifically, the response time threshold of a member-type user may be smaller than the response time threshold of a non-member-type member. It is understood that this is merely exemplary and not restrictive.

[0109] After the work ticket system determines that the response time is greater than the time threshold, at block 628 , the work ticket system sends a response reminder.

[0110] In some examples, the response reminder may be a reminder message, such as "You have a task that has not been processed, please check it in time, it has timed out for XX minutes." It is understood that this is merely exemplary and not restrictive.

[0111] In block 630 , the work order system detects that the work order assignee receives the work order.

[0112] In some examples, after receiving the work order, the work order acceptor processes the user request 120 and provides the processing result 140 to the work order initiator (eg, the first reception object or the second reception object) through the work order system.

[0113] In block 640 , the work order system detects that the work order assignee completes the work order.

[0114] In some examples, after the work order assignee provides the processing result 140 to the work order system, the work order assignee may be instructed to complete the work order.

[0115] At block 650 , the work order system receives the processing results 140 .

[0116] After the work order system receives the processing result 140 , at block 660 , the work order system stops monitoring the response time.

[0117] In some examples, after detecting that the work order acceptor has received the work order, it is also possible to stop monitoring the response time and modify the work order status to replied. It is understood that this is merely exemplary and not restrictive.

[0118] At block 670 , the work ticket system provides the processing results 140 to the work ticket initiator.

[0119] In some examples, the work order initiator may be the first reception object or the second reception object. In other examples, the processing result 140 may be provided to the work order initiator through an MQ message queue.

[0120] At block 680 , the distribution system 110 receives the processing results 140 .

[0121] In some examples, after receiving the processing result 140 , the allocation system 110 provides the processing result 140 to the user through the work order initiator.

[0122] In summary, the embodiments of the present disclosure can preferentially assign user requests to the same reception object for processing when multiple user requests are received, thereby preventing the user requests from circulating among multiple reception objects. In this way, processing efficiency can be improved and user experience can be enhanced.

[0123] The embodiments of the present disclosure also provide corresponding devices for implementing the above methods or processes.

[0124] Figure 7 A schematic structural block diagram of an apparatus 700 for user request allocation according to some embodiments of the present disclosure is shown. The apparatus 700 may be implemented as or included in the allocation system 110. Each module / component in the apparatus 700 may be implemented by hardware, software, firmware or any combination thereof.

[0125] like Figure 7 As shown, the apparatus 700 includes a receiving module 710, configured to determine whether the user request is a first request or a non-first request in response to receiving a user request for a target application. The apparatus 700 also includes a determining module 720, configured to determine the working state of a first reception object matching the user request from a reception object set in response to determining that the user request is a non-first request. The apparatus 700 also includes an allocating module 730, configured to determine, based on the working state of the first reception object, whether to allocate the user request to the first reception object or a second reception object associated with the first reception object for processing.

[0126] In some embodiments, the allocation module 730 is further configured to allocate the user request to the first reception object for processing in response to the working status of the first reception object indicating that it is working; and allocate the user request to a second reception object associated with the first reception object for processing in response to the working status of the first reception object indicating that it is not working.

[0127] In some embodiments, the allocation module 730 is also configured to determine whether the user request exceeds the capacity scope of the first reception object or the second reception object; in response to determining that the user request does not exceed the capacity scope of the first reception object or the second reception object, determine the processing result of the user request; and in response to determining that the user request exceeds the capacity scope of the first reception object or the second reception object, provide the user request to the work order system to determine the processing result of the user request from the work order system.

[0128] In some embodiments, the allocation module 730 is further configured to control the work order system to provide the user request to a third reception object with a capability scope and the user request to determine a processing result of the user request.

[0129] In some embodiments, the allocation module 730 is also configured to send a response reminder to the third reception object in response to the response time of the third reception object exceeding the response time threshold corresponding to the type of user request, where different types of user requests correspond to different response time thresholds.

[0130] In some embodiments, the determination module 720 is further configured to, in response to determining that the user request is a first request, determine the attributes of the user request; and determine a first hospitality object matching the attributes of the user request from the hospitality object set.

[0131] In some embodiments, the determination module 720 is further configured to determine at least one capability set corresponding to the reception object set, each capability set in the at least one capability set corresponds to at least one capability, and each capability set at least indicates at least one reception object having the corresponding capability; and in response to the matching result indicating a successful match between the attribute of the user request and the capability set in the at least one capability set, determine a first reception object from the at least one reception object in the capability set.

[0132] In some embodiments, the determination module 720 is further configured to determine the processing index of each reception object in the at least one reception object by using a proportional allocation algorithm; and determine the first reception object based on the processing index of each reception object in the at least one reception object.

[0133] In some embodiments, the allocation module 730 is further configured to store an association relationship between the first reception object or the second reception object and a user corresponding to the user request in response to the first reception object or the second reception object completing the user request.

[0134] In some embodiments, the working status of each reception object in the reception object set is updated through a scheduled task.

[0135] The units and / or modules included in the device 700 can be implemented in various ways, including software, hardware, firmware, or any combination thereof. In some embodiments, one or more units and / or modules can be implemented using software and / or firmware, such as machine executable instructions stored on a storage medium. In addition to or as an alternative to machine executable instructions, some or all of the units and / or modules in the device 700 can be implemented at least in part by one or more hardware logic components. As an example and not limitation, exemplary types of hardware logic components that can be used include field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.

[0136] It should be understood that one or more steps in the above method can be performed by a suitable electronic device or a combination of electronic devices. Such an electronic device or a combination of electronic devices may include, for example, Figure 1 The distribution system 110 in.

[0137] Figure 8 8 is a block diagram of an electronic device 800 in which one or more embodiments of the present disclosure may be implemented. It should be understood that Figure 8 The electronic device 800 shown is merely exemplary and should not constitute any limitation on the functionality and scope of the embodiments described herein. Figure 8 The electronic device 800 shown can be used to implement Figure 1 The distribution system 110 or Figure 7 Device 700.

[0138] like Figure 8 As shown, the electronic device 800 is in the form of a general electronic device. The components of the electronic device 800 may include, but are not limited to, one or more processors or processing units 810, a memory 820, a storage device 830, one or more communication units 840, one or more input devices 850, and one or more output devices 860. The processing unit 810 may be an actual or virtual processor and is capable of performing various processes according to a program stored in the memory 820. In a multi-processor system, multiple processing units execute computer executable instructions in parallel to improve the parallel processing capability of the electronic device 800.

[0139] The electronic device 800 typically includes a plurality of computer storage media. Such media can be any available media accessible to the electronic device 800, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 820 can be a volatile memory (e.g., register, cache, random access memory (RAM)), a non-volatile memory (e.g., a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), flash memory) or some combination thereof. The storage device 830 can be a removable or non-removable medium, and can include a machine-readable medium, such as a flash drive, a disk, or any other medium, which can be used to store information and / or data and can be accessed within the electronic device 800.

[0140] The electronic device 800 may further include additional removable / non-removable, volatile / non-volatile storage media. Figure 8 As shown in , a disk drive for reading or writing from a removable, non-volatile disk (e.g., a "floppy disk") and an optical drive for reading or writing from a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to the bus (not shown) by one or more data media interfaces. The memory 820 may include a computer program product 825 having one or more program modules that are configured to perform various methods or actions of various embodiments of the present disclosure.

[0141] The communication unit 840 implements communication with other electronic devices through a communication medium. Additionally, the functions of the components of the electronic device 800 can be implemented with a single computing cluster or multiple computing machines that can communicate through a communication connection. Therefore, the electronic device 800 can operate in a networked environment using a logical connection with one or more other servers, a network personal computer (PC), or another network node.

[0142] The input device 850 may be one or more input devices, such as a mouse, a keyboard, a tracking ball, etc. The output device 860 may be one or more output devices, such as a display, a speaker, a printer, etc. The electronic device 800 may also communicate with one or more external devices (not shown) through the communication unit 840 as needed, such as a storage device, a display device, etc., communicate with one or more devices that allow a user to interact with the electronic device 800, or communicate with any device that allows the electronic device 800 to communicate with one or more other electronic devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).

[0143] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above.

[0144] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices, equipment, and computer program products implemented according to the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.

[0145] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0146] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable data processing apparatus, or other device implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0147] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple implementations of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of a module, program segment or instruction includes one or more executable instructions for realizing the logical function of the specification. In some implementations as replacements, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.

[0148] The above descriptions of various implementations of the present disclosure are exemplary, non-exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described implementations. The selection of terms used herein is intended to best explain the principles of the implementations, practical applications, or improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the various implementations disclosed herein.

Claims

1. A method for user request allocation, comprising: In response to receiving a user request for a target application, determining whether the user request is a first request or a non-first request; In response to determining that the user request is not a first request, determining a working state of a first reception object matching the user request from a reception object set; as well as Based on the working state of the first reception object, it is determined to allocate the user request to the first reception object or a second reception object associated with the first reception object for processing.

2. The method according to claim 1, wherein determining to assign the user request to the first reception object or a second reception object corresponding to the first reception object for processing comprises: In response to the working state of the first reception object indicating that the first reception object is working, assigning the user request to the first reception object for processing; as well as In response to the working status of the first hospitality object indicating that the first hospitality object is not working, the user request is assigned to a second hospitality object associated with the first hospitality object for processing.

3. The method according to claim 1, wherein the processing result of the user request is determined in the following manner: Determining whether the user request exceeds the capability range of the first reception object or the second reception object; In response to determining that the user request does not exceed the capability range of the first reception object or the second reception object, determining the processing result of the user request; and In response to determining that the user request exceeds the capability range of the first reception object or the second reception object, the user request is provided to a work order system to determine the processing result of the user request from the work order system.

4. The method according to claim 3, wherein providing the user request to a work order system to determine the processing result of the user request from the work order system comprises: The work order system is controlled to provide the user request to a third reception object whose capability range matches the user request, so as to determine the processing result of the user request.

5. The method according to claim 4, further comprising: In response to the response time of the third reception object exceeding the response time threshold corresponding to the type of the user request, a response reminder is sent to the third reception object, wherein different types of user requests correspond to different response time thresholds.

6. The method according to claim 1, further comprising: In response to determining that the user request is a first request, determining an attribute of the user request; as well as The first hospitality object matching the attribute of the user request is determined from the hospitality object set.

7. The method according to claim 6, wherein determining the first hospitality object matching the attribute of the user request from the hospitality object set comprises: Determine at least one capability set corresponding to the reception object set, each capability set in the at least one capability set corresponds to at least one capability, and each capability set at least indicates at least one reception object having the corresponding capability; as well as In response to a matching result between the attribute of the user request and a capability set in the at least one capability set indicating a successful match, determining the first hospitality object from the at least one hospitality object in the capability set.

8. The method according to claim 7, wherein determining the first hospitality object from the at least one hospitality object in the capability set comprises: Determine the processing index of each reception object in the at least one reception object by using a proportional allocation algorithm; And based on the processing indicator of each reception object in the at least one reception object, the first reception object is determined.

9. The method according to claim 1, further comprising: In response to the first reception object or the second reception object completing the user request, an association relationship between the first reception object or the second reception object and a user corresponding to the user request is stored.

10. The method according to claim 1, wherein the working status of each reception object in the reception object set is updated through a scheduled task.

11. An apparatus for user request allocation, comprising: a receiving module configured to, in response to receiving a user request for a target application, determine whether the user request is a first request or a non-first request; a determination module configured to, in response to determining that the user request is not a first request, determine a working status of a first reception object matching the user request from a reception object set; as well as The allocation module is configured to determine, based on the working state of the first reception object, to allocate the user request to the first reception object or a second reception object associated with the first reception object for processing.

12. An electronic device comprising: at least one processing unit; as well as At least one memory, the at least one memory is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the electronic device to perform the method according to any one of claims 1 to 10.

13. A computer-readable storage medium having a computer program stored thereon, wherein the computer program can be executed by a processor to implement the method according to any one of claims 1 to 10.

14. A computer program product comprising computer executable instructions, wherein the computer executable instructions, when executed by a processor, implement the method according to any one of claims 1 to 10.