Job Router Operations - Upsert Job
建立或更新路由器作業。
PATCH {endpoint}/routing/jobs/{jobId}?api-version=2023-11-01
URI 參數
名稱 | 位於 | 必要 | 類型 | Description |
---|---|---|---|---|
endpoint
|
path | True |
string |
通訊資源的 URI |
job
|
path | True |
string |
作業的標識碼。 |
api-version
|
query | True |
string |
用於此作業的 API 版本。 |
要求標頭
Media Types: "application/merge-patch+json"
名稱 | 必要 | 類型 | Description |
---|---|---|---|
If-Match |
string |
只有在實體符合此字串時,才應該繼續要求。 |
|
If-Unmodified-Since |
string date-time-rfc7231 |
只有在此時間之後未修改實體時,才應該繼續要求。 |
要求本文
Media Types: "application/merge-patch+json"
名稱 | 類型 | Description |
---|---|---|
channelId |
string |
通道標識碼。例如語音、聊天等 |
channelReference |
string |
外部父內容的參考,例如呼叫標識碼。 |
classificationPolicyId |
string |
用於分類此作業的分類原則標識碼。 |
dispositionCode |
string |
取消或已關閉作業的原因碼。 |
labels |
一組索引鍵/值組,用來識別規則引擎用來做出決策的屬性。 值必須是基本值 - number、string、boolean。 |
|
matchingMode | JobMatchingModeCreateOrUpdate: |
如果提供,將會決定如何執行作業比對。默認模式:QueueAndMatchMode。 |
notes |
附加至作業的附註,依時間戳排序。 |
|
priority |
integer |
此作業的優先順序。 值必須介於 -100 到 100 之間。 |
queueId |
string |
此作業已排入佇列的佇列標識碼。 |
requestedWorkerSelectors |
手動指定的背景工作選取器集合,背景工作角色必須滿足此集合才能處理此作業。 |
|
tags |
附加至此作業的一組非識別屬性。 值必須是基本值 - number、string、boolean。 |
回應
名稱 | 類型 | Description |
---|---|---|
200 OK |
要求成功。 標題
|
|
201 Created |
要求成功,而且已建立新的資源作為結果。 標題
|
|
Other Status Codes |
非預期的錯誤回應。 標題 x-ms-error-code: string |
範例
Creates a new job |
Creates a new scheduled router job |
Updates a router job |
Creates a new job
範例要求
PATCH https://contoso.westus.communications.azure.com/routing/jobs/JobId?api-version=2023-11-01
{
"channelId": "CustomChatChannel",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
"queueId": "MainQueue",
"priority": 5,
"requestedWorkerSelectors": [
{
"key": "Sales",
"labelOperator": "equal",
"value": true
}
],
"labels": {},
"matchingMode": {
"kind": "queueAndMatch"
}
}
範例回覆
{
"id": "JobId",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
"status": "queued",
"enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
"channelId": "CustomChatChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
"priority": 5,
"dispositionCode": null,
"requestedWorkerSelectors": [
{
"key": "Sales",
"labelOperator": "equal",
"value": true,
"expiresAfterSeconds": null
}
],
"attachedWorkerSelectors": [],
"labels": {},
"assignments": {},
"notes": [],
"matchingMode": {
"kind": "queueAndMatch"
},
"etag": "etag"
}
{
"id": "JobId",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
"status": "queued",
"enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
"channelId": "CustomChatChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
"priority": 5,
"dispositionCode": null,
"requestedWorkerSelectors": [
{
"key": "Sales",
"labelOperator": "equal",
"value": true,
"expiresAfterSeconds": null
}
],
"attachedWorkerSelectors": [],
"labels": {},
"assignments": {},
"notes": [],
"matchingMode": {
"kind": "queueAndMatch"
},
"etag": "etag"
}
Creates a new scheduled router job
範例要求
PATCH https://contoso.westus.communications.azure.com/routing/jobs/JobId?api-version=2023-11-01
{
"channelId": "CustomChatChannel",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
"queueId": "MainQueue",
"priority": 5,
"requestedWorkerSelectors": [
{
"key": "Sales",
"labelOperator": "equal",
"value": true
}
],
"labels": {},
"matchingMode": {
"kind": "scheduleAndSuspend",
"scheduleAt": "2023-05-26T23:22:12.0774222+00:00"
}
}
範例回覆
{
"id": "JobId",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
"status": "queued",
"enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
"channelId": "CustomChatChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
"priority": 5,
"dispositionCode": null,
"requestedWorkerSelectors": [
{
"key": "Sales",
"labelOperator": "equal",
"value": true,
"expiresAfterSeconds": null
}
],
"attachedWorkerSelectors": [],
"labels": {},
"assignments": {},
"notes": [],
"matchingMode": {
"kind": "scheduleAndSuspend",
"scheduleAt": "2023-05-26T23:22:12.0774222+00:00"
},
"scheduledAt": null,
"etag": "etag"
}
{
"id": "JobId",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
"status": "queued",
"enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
"channelId": "CustomChatChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
"priority": 5,
"dispositionCode": null,
"requestedWorkerSelectors": [
{
"key": "Sales",
"labelOperator": "equal",
"value": true,
"expiresAfterSeconds": null
}
],
"attachedWorkerSelectors": [],
"labels": {},
"assignments": {},
"notes": [],
"matchingMode": {
"kind": "scheduleAndSuspend",
"scheduleAt": "2023-05-26T23:22:12.0774222+00:00"
},
"scheduledAt": null,
"etag": "etag"
}
Updates a router job
範例要求
PATCH https://contoso.westus.communications.azure.com/routing/jobs/8780b28c-7079-4de1-9143-4d369289e958?api-version=2023-11-01
{
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af"
}
範例回覆
{
"id": "383541b3-5637-4af6-8aac-3391da8a578a",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
"status": "queued",
"enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
"channelId": "CustomVoiceChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
"priority": 5,
"dispositionCode": null,
"requestedWorkerSelectors": [
{
"key": "Sales",
"labelOperator": "equal",
"value": true,
"expiresAfterSeconds": null
}
],
"attachedWorkerSelectors": [],
"labels": {},
"assignments": {},
"notes": [],
"matchingMode": {
"kind": "queueAndMatch"
},
"etag": "etag"
}
{
"id": "383541b3-5637-4af6-8aac-3391da8a578a",
"channelReference": "1d5896f3-8b54-40be-82d3-910323f5e2af",
"status": "queued",
"enqueuedAt": "2021-09-30T23:59:04.5311999+00:00",
"channelId": "CustomVoiceChannel",
"classificationPolicyId": null,
"queueId": "MainQueue",
"priority": 5,
"dispositionCode": null,
"requestedWorkerSelectors": [
{
"key": "Sales",
"labelOperator": "equal",
"value": true,
"expiresAfterSeconds": null
}
],
"attachedWorkerSelectors": [],
"labels": {},
"assignments": {},
"notes": [],
"matchingMode": {
"kind": "queueAndMatch"
},
"etag": "etag"
}
定義
名稱 | Description |
---|---|
Azure. |
error 物件。 |
Azure. |
包含錯誤詳細數據的回應。 |
Azure. |
物件,包含錯誤的詳細資訊。 根據 Microsoft One API 指導方針 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses。 |
Job |
支援比對模式類型的辨別子。 |
Label |
描述標籤值上支援的作業。 |
Queue |
描述比對背景工作與作業的比對模式,會在工作排入佇列成功之後自動啟動。 |
Queue |
描述比對背景工作與作業的比對模式,會在工作排入佇列成功之後自動啟動。 |
Router |
要路由傳送的工作單位 |
Router |
工作指派詳細數據給背景工作。 |
Router |
要路由傳送的工作單位 |
Router |
附加至作業的附註。 |
Router |
描述作業的各種狀態。 |
Router |
描述必須針對一組標籤來選取背景工作角色的條件。 |
Router |
描述背景工作角色選取器的狀態。 |
Schedule |
描述用來排程未來排入佇列之作業的比對模式。 在指定的時間,比對背景工作與作業不會自動啟動。 |
Schedule |
描述用來排程未來排入佇列之作業的比對模式。 在指定的時間,比對背景工作與作業不會自動啟動。 |
Suspend |
描述比對背景工作與作業的比對模式已暫止。 |
Suspend |
描述比對背景工作與作業的比對模式已暫止。 |
Azure.Core.Foundations.Error
error 物件。
名稱 | 類型 | Description |
---|---|---|
code |
string |
其中一組伺服器定義的錯誤碼。 |
details |
導致此錯誤之特定錯誤的詳細數據陣列。 |
|
innererror |
物件,包含比目前對象有關錯誤更具體的資訊。 |
|
message |
string |
人類可讀取的錯誤表示法。 |
target |
string |
錯誤的目標。 |
Azure.Core.Foundations.ErrorResponse
包含錯誤詳細數據的回應。
名稱 | 類型 | Description |
---|---|---|
error |
error 物件。 |
Azure.Core.Foundations.InnerError
物件,包含錯誤的詳細資訊。 根據 Microsoft One API 指導方針 - https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses。
名稱 | 類型 | Description |
---|---|---|
code |
string |
其中一組伺服器定義的錯誤碼。 |
innererror |
內部錯誤。 |
JobMatchingModeKind
支援比對模式類型的辨別子。
名稱 | 類型 | Description |
---|---|---|
queueAndMatch |
string |
QueueAndMatchMode 的辨別子值。 |
scheduleAndSuspend |
string |
ScheduleAndSuspendMode 的鑒別子值。 |
suspend |
string |
SuspendMode 的辨別子值。 |
LabelOperator
描述標籤值上支援的作業。
名稱 | 類型 | Description |
---|---|---|
equal |
string |
平等。 |
greaterThan |
string |
大於。 |
greaterThanOrEqual |
string |
大於或等於。 |
lessThan |
string |
小於。 |
lessThanOrEqual |
string |
小於或等於。 |
notEqual |
string |
不相等。 |
QueueAndMatchMode
描述比對背景工作與作業的比對模式,會在工作排入佇列成功之後自動啟動。
名稱 | 類型 | Description |
---|---|---|
kind |
string:
queue |
描述 JobMatchingMode 子類型的型別辨別子。 |
QueueAndMatchModeCreateOrUpdate
描述比對背景工作與作業的比對模式,會在工作排入佇列成功之後自動啟動。
名稱 | 類型 | Description |
---|---|---|
kind |
string:
queue |
描述 JobMatchingMode 子類型的型別辨別子。 |
RouterJob
要路由傳送的工作單位
名稱 | 類型 | Description |
---|---|---|
assignments |
<string,
Router |
作業指派的集合。 機碼為 AssignmentId。 |
attachedWorkerSelectors |
由分類原則附加的背景工作選取器集合,背景工作角色必須滿足此工作才能處理此作業。 |
|
channelId |
string |
通道標識碼。例如語音、聊天等 |
channelReference |
string |
外部父內容的參考,例如呼叫標識碼。 |
classificationPolicyId |
string |
用於分類此作業的分類原則標識碼。 |
dispositionCode |
string |
取消或已關閉作業的原因碼。 |
enqueuedAt |
string |
作業排入 UTC 的時間戳。 |
etag |
string |
此資源的實體標籤。 |
id |
string |
作業的標識碼。 |
labels |
一組索引鍵/值組,用來識別規則引擎用來做出決策的屬性。 值必須是基本值 - number、string、boolean。 |
|
matchingMode | JobMatchingMode: |
如果提供,將會決定如何執行作業比對。默認模式:QueueAndMatchMode。 |
notes |
附加至作業的附註,依時間戳排序。 |
|
priority |
integer |
此作業的優先順序。 值必須介於 -100 到 100 之間。 |
queueId |
string |
此作業已排入佇列的佇列標識碼。 |
requestedWorkerSelectors |
手動指定的背景工作選取器集合,背景工作角色必須滿足此集合才能處理此作業。 |
|
scheduledAt |
string |
如果設定,作業將會排程在指定時間加入佇列。 |
status |
工作的狀態。 |
|
tags |
附加至此作業的一組非識別屬性。 值必須是基本值 - number、string、boolean。 |
RouterJobAssignment
工作指派詳細數據給背景工作。
名稱 | 類型 | Description |
---|---|---|
assignedAt |
string |
在UTC中將作業指派給背景工作時的時間戳。 |
assignmentId |
string |
作業指派的標識碼。 |
closedAt |
string |
在UTC完成之後,作業標示為已關閉的時間戳。 |
completedAt |
string |
在UTC指派之後,作業標示為已完成的時間戳。 |
workerId |
string |
指派給作業之背景工作角色的標識碼。 |
RouterJobCreateOrUpdate
要路由傳送的工作單位
名稱 | 類型 | Description |
---|---|---|
channelId |
string |
通道標識碼。例如語音、聊天等 |
channelReference |
string |
外部父內容的參考,例如呼叫標識碼。 |
classificationPolicyId |
string |
用於分類此作業的分類原則標識碼。 |
dispositionCode |
string |
取消或已關閉作業的原因碼。 |
labels |
一組索引鍵/值組,用來識別規則引擎用來做出決策的屬性。 值必須是基本值 - number、string、boolean。 |
|
matchingMode | JobMatchingModeCreateOrUpdate: |
如果提供,將會決定如何執行作業比對。默認模式:QueueAndMatchMode。 |
notes |
附加至作業的附註,依時間戳排序。 |
|
priority |
integer |
此作業的優先順序。 值必須介於 -100 到 100 之間。 |
queueId |
string |
此作業已排入佇列的佇列標識碼。 |
requestedWorkerSelectors |
手動指定的背景工作選取器集合,背景工作角色必須滿足此集合才能處理此作業。 |
|
tags |
附加至此作業的一組非識別屬性。 值必須是基本值 - number、string、boolean。 |
RouterJobNote
附加至作業的附註。
名稱 | 類型 | Description |
---|---|---|
addedAt |
string |
在UTC中新增附注的時間。 如果未提供,則會預設為目前時間。 |
message |
string |
附註中包含的訊息。 |
RouterJobStatus
描述作業的各種狀態。
名稱 | 類型 | Description |
---|---|---|
assigned |
string |
作業已指派給背景工作角色。 |
cancelled |
string |
作業已取消。 |
classificationFailed |
string |
作業的分類程序失敗。 |
closed |
string |
背景工作已關閉。 |
completed |
string |
工作已經由背景工作完成。 |
created |
string |
已建立作業。 |
pendingClassification |
string |
作業正在等候分類。 |
pendingSchedule |
string |
作業已建立,但尚未排程。 |
queued |
string |
作業已排入佇列。 |
scheduleFailed |
string |
作業排程失敗。 |
scheduled |
string |
作業已成功排程。 |
waitingForActivation |
string |
作業處於暫停狀態,正在等候更新。 |
RouterWorkerSelector
描述必須針對一組標籤來選取背景工作角色的條件。
名稱 | 類型 | Description |
---|---|---|
expedite |
boolean |
只要此選取器作用中,即會將作業推送至佇列前端。 |
expiresAfterSeconds |
number |
描述此標籤選取器在秒內有效的時間長度。 |
expiresAt |
string |
此背景工作角色選取器在UTC到期的時間。 |
key |
string |
要查詢的標籤索引鍵。 |
labelOperator |
描述標籤的值如何與背景工作角色選取器上定義的值進行比較。 |
|
status |
背景工作角色選取器的狀態。 |
|
value |
要與實際標籤值與指定運算子比較的值。 值必須是基本值 - number、string、boolean。 |
RouterWorkerSelectorStatus
描述背景工作角色選取器的狀態。
名稱 | 類型 | Description |
---|---|---|
active |
string |
背景工作角色選取器有效。 |
expired |
string |
背景工作角色選取器無效。 |
ScheduleAndSuspendMode
描述用來排程未來排入佇列之作業的比對模式。 在指定的時間,比對背景工作與作業不會自動啟動。
名稱 | 類型 | Description |
---|---|---|
kind |
string:
schedule |
描述 JobMatchingMode 子類型的型別辨別子。 |
scheduleAt |
string |
要求的排程時間。 |
ScheduleAndSuspendModeCreateOrUpdate
描述用來排程未來排入佇列之作業的比對模式。 在指定的時間,比對背景工作與作業不會自動啟動。
名稱 | 類型 | Description |
---|---|---|
kind |
string:
schedule |
描述 JobMatchingMode 子類型的型別辨別子。 |
scheduleAt |
string |
要求的排程時間。 |
SuspendMode
描述比對背景工作與作業的比對模式已暫止。
名稱 | 類型 | Description |
---|---|---|
kind |
string:
suspend |
描述 JobMatchingMode 子類型的型別辨別子。 |
SuspendModeCreateOrUpdate
描述比對背景工作與作業的比對模式已暫止。
名稱 | 類型 | Description |
---|---|---|
kind |
string:
suspend |
描述 JobMatchingMode 子類型的型別辨別子。 |