The increase in interactions through chat and other messaging channels requires customer service representatives (CSRs) to communicate with multiple customers simultaneously. Because the client-server communication is single-threaded, it prevents the CSR from working on multiple interactions simultaneously. A CSR can start processing an interaction and move on another interaction to update the intent task without knowing whether the round trip was completed on the original task of the first interaction. This causes the CSR to lose their work, or in many cases, blocks the CSR from completing their work until the user interface is ready.
When a customer interacts through chat or email, the CSR responds by using an interaction object. The interaction object uses the only available requester object, which is locked. The lock on the requestor object prevents the CSR from responding to other chat or email interactions because all requests are processed in a sequence on a single requestor.
In Pega Customer Service 8.1, this issue is resolved by using a dedicated requestor object for each chat, email, and social interaction, which allows the CSR to send concurrent responses. The dedicated requestor is known as the Associated Requestor object, which is created at the launch of an interaction and is deleted when the interaction is closed.
An Associated Requestor object is created by passing the parameter ShouldCreateAssociateRequestor=true. This property helps with creating the interaction in the Associated Requestor mode, which acts as a child requestor to the main requestor. Multiple associated requestor objects can exist under the main requestor object, thereby allowing the application to run concurrent interactions without blocking the CSRs work.