Aracılığıyla paylaş


Tahmini bekleme süresini ve iş konumunu alma

Bir çağrı merkezi bağlamında müşteriler, bir aracıya bağlanmadan önce ne kadar beklemeleri gerektiğini bilmek isteyebilir. Bu nedenle İş Yönlendiricisi, bir işin kuyruktaki tahmini bekleme süresini veya konumunu hesaplayabilir.

Ön koşullar

Bir kuyruğun tahmini bekleme süresini ve uzunluğunu alma

ile bir kuyruk için tahmini bekleme süresi, özelliği çağrılarak GetQueueStatisticsAsync ve denetlenerek EstimatedWaitTimeMinutes alınır. Tahmini bekleme süresi iş önceliğine göre gruplandırılır. İş Yönlendiricisi ayrıca kuyruğun uzunluğunu ve kuyruktaki en uzun bekleme işini döndürür.

var queueStatistics = await client.GetQueueStatisticsAsync(queueId: "queue1");
Console.WriteLine($"Queue statistics: {JsonSerializer.Serialize(queueStatistics.Value)}");
var queueStatistics = await client.path("/routing/queues/{queueId}/statistics", "queue-1").get();
console.log(`Queue statistics: ${JSON.stringify(queueStatistics.body)}`);
queue_statistics = client.get_queue_statistics(queue_id = "queue1")
print("Queue statistics: " + queue_statistics)
RouterQueueStatistics queueStatistics = client.getQueueStatisticsWithResponse("queue1").getValue();
System.out.println("Queue statistics: " + BinaryData.fromObject(queueStatistics).toString());

Yukarıdaki kodun yürütülmesi aşağıdaki kod parçacığına benzer bir ileti yazdırmalıdır (Not: EstimatedWaitTimeMinutes özellik iş önceliğine göre gruplandırılır):

Queue statistics: { "QueueId":"queue1", "Length": 15, "EstimatedWaitTimeMinutes": { "1": 10 }, "LongestJobWaitTimeMinutes": 4.724 }

Bir işin kuyruktaki tahmini bekleme süresini ve konumunu alma

Kimliği job1 olan bir işin tahmini bekleme süresi, özelliği çağrılarak GetQueuePositionAsync ve denetlenerek EstimatedWaitTimeMinutes alınır. İş Yönlendiricisi ayrıca işin kuyruktaki konumunu döndürür.

var queuePositionDetails = await client.GetQueuePositionAsync(jobId: "job1");
Console.WriteLine($"Queue position details: {JsonSerializer.Serialize(queuePositionDetails.Value)}");
var queuePositionDetails = await client.path("/routing/jobs/{jobId}/position", "job1").get();
console.log(`Queue position details: ${JSON.stringify(queuePositionDetails.body)}`);
queue_position_details = client.get_queue_position(job_id = "job1")
print("Queue position details: " + queue_position_details)
var queuePositionDetails = client.getQueuePosition("job1");
System.out.println("Queue position details: " + new GsonBuilder().toJson(queuePositionDetails));

Yukarıdaki kodu yürütürken aşağıdaki kod parçacığına benzer bir ileti yazdırılmalıdır:

Queue position details: { "JobId": "job1", "Position": 4, "QueueId": "queue1", "QueueLength":15, "EstimatedWaitTimeMinutes": 5 }