기본 작업자를 대상으로 지정
콜 센터의 컨텍스트에서 고객은 계정 관리자를 할당받거나 특정 작업자와 관계를 가질 수 있습니다. 따라서 가능하면 특정 작업을 특정 작업자에게 라우팅하려고 합니다.
필수 조건
- 활성 구독이 있는 Azure 계정. 체험 계정을 만듭니다.
- 배포된 Communication Services 리소스. Communication Services 리소스 만들기
- 선택 사항: 빠른 시작을 완료하여 작업 라우터 시작
작업자 선택기 설정
모든 작업자는 자동으로 Id
레이블을 갖습니다. 작업자 선택기를 작업에 적용하여 특정 작업자를 대상으로 지정할 수 있습니다.
다음 예에서는 특정 작업자를 대상으로 하는 작업이 만들어집니다. 해당 작업자가 1분의 제안 만료 기간 내에 작업을 수락하지 않으면 특정 작업자에 대한 조건이 더 이상 유효하지 않으며 작업이 아무 작업자에게 이동할 수 있습니다.
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))));
팁
각 작업자에게 고유한 사용자 지정 레이블을 사용할 수도 있습니다.