Dela via


Rikta in dig på en föredragen arbetare

I samband med ett callcenter kan kunder tilldelas en kontoansvarig eller ha en relation med en viss arbetare. Därför vill du dirigera ett visst jobb till en viss arbetare om det är möjligt.

Förutsättningar

Konfigurera arbetarväljare

Varje arbetare har automatiskt en Id etikett. Du kan använda arbetarväljare för jobbet för att rikta in dig på en viss arbetare.

I följande exempel skapas ett jobb som riktar sig till en specifik arbetare. Om den arbetaren inte accepterar jobbet inom erbjudandets giltighetstid på 1 minut är villkoret för den specifika arbetaren inte längre giltigt och jobbet kan gå till alla arbetare.

await client.CreateJobAsync(
    new CreateJobOptions(jobId: "job1", channelId: "Xbox_Chat_Channel", queueId: queue.Value.Id)
    {
        RequestedWorkerSelectors =
        {
            new RouterWorkerSelector(key: "Id", labelOperator: LabelOperator.Equal, value: new RouterValue("<preferred_worker_id>")) {
                Expedite = true,
                ExpiresAfter = TimeSpan.FromSeconds(45)
            }
        }
    });
await client.path("/routing/jobs/{jobId}", "job1").patch({
    body: {
        channelId: "Xbox_Chat_Channel",
        queueId: queue.body.id,
        requestedWorkerSelectors: [
        {
            key: "Id",
            labelOperator: "equal",
            value: "<preferred worker id>",
            expiresAfterSeconds: 45
        }]
    },
    contentType: "application/merge-patch+json"
});
client.upsert_job(job_id = "job1",
    channel_id = "Xbox_Chat_Channel",
    queue_id = queue.id,
    requested_worker_selectors = [
        RouterWorkerSelector(
            key = "Id",
            label_operator = LabelOperator.EQUAL,
            value = "<preferred worker id>",
            expires_after_seconds = 45
        )
    ]
)
client.createJob(new CreateJobOptions("job1", "Xbox_Chat_Channel", queue.getId())
    .setRequestedWorkerSelectors(List.of(
        new RouterWorkerSelector("Id", LabelOperator.EQUAL, new RouterValue("<preferred_worker_id>"))
          .setExpiresAfter(Duration.ofSeconds(45.0))
          .setExpedite(true))));

Dricks

Du kan också använda alla anpassade etiketter som är unika för varje arbetare.