Freigeben über


So erhalten Sie die geschätzte Wartezeit und die Position des Auftrags

Im Kontext eines Callcenters möchten Kunden möglicherweise wissen, wie lange sie warten müssen, bevor sie mit einem Agenten verbunden sind. So kann Der Auftragsrouter die geschätzte Wartezeit oder Position eines Auftrags in einer Warteschlange berechnen.

Voraussetzungen

Abrufen der geschätzten Wartezeit und Der Länge einer Warteschlange

Geschätzte Wartezeit für eine Warteschlange mit wird abgerufen, indem die Eigenschaft aufgerufen GetQueueStatisticsAsync und überprüft EstimatedWaitTimeMinutes wird. Die geschätzte Wartezeit wird nach Auftragspriorität gruppiert. Der Auftragsrouter gibt auch die Länge der Warteschlange und den längsten Warteauftrag in der Warteschlange zurück.

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());

Wenn Sie den obigen Code ausführen, sollte eine Meldung wie der folgende Codeausschnitt gedruckt werden (Hinweis: Die EstimatedWaitTimeMinutes Eigenschaft wird nach Auftragspriorität gruppiert):

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

Abrufen geschätzter Wartezeiten und der Position eines Auftrags in einer Warteschlange

Geschätzte Wartezeit für einen Auftrag mit ID job1 wird abgerufen, indem die EstimatedWaitTimeMinutes Eigenschaft aufgerufen GetQueuePositionAsync und überprüft wird. Der Auftragsrouter gibt auch die Position des Auftrags in der Warteschlange zurück.

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));

Wenn Sie den obigen Code ausführen, sollte eine Meldung wie der folgende Codeausschnitt gedruckt werden:

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