Job Router Operations - Upsert Worker
Erstellt oder aktualisiert einen Worker.
PATCH {endpoint}/routing/workers/{workerId}?api-version=2023-11-01
URI-Parameter
Name | In | Erforderlich | Typ | Beschreibung |
---|---|---|---|---|
endpoint
|
path | True |
string |
URI Ihrer Kommunikationsressource |
worker
|
path | True |
string |
Id eines Workers. |
api-version
|
query | True |
string |
Hierbei handelt es sich um die für diesen Vorgang zu verwendende API-Version. |
Anforderungsheader
Media Types: "application/merge-patch+json"
Name | Erforderlich | Typ | Beschreibung |
---|---|---|---|
If-Match |
string |
Die Anforderung sollte nur fortgesetzt werden, wenn eine Entität mit dieser Zeichenfolge übereinstimmt. |
|
If-Unmodified-Since |
string date-time-rfc7231 |
Die Anforderung sollte nur fortgesetzt werden, wenn die Entität nach diesem Zeitpunkt nicht geändert wurde. |
Anforderungstext
Media Types: "application/merge-patch+json"
Name | Typ | Beschreibung |
---|---|---|
availableForOffers |
boolean |
Ein Flag, das angibt, dass dieser Worker für den Empfang von Angeboten geöffnet ist oder nicht. |
capacity |
integer |
Die Gesamtkapazitätsbewertung, die dieser Worker zum Verwalten mehrerer gleichzeitiger Aufträge hat. |
channels |
Sammlung von Kanälen, die dieser Worker verarbeiten kann, und deren Auswirkungen auf die Workerkapazität. |
|
labels |
Eine Reihe von Schlüssel-Wert-Paaren, die Attribute identifizieren, die von den Regel-Engines zum Treffen von Entscheidungen verwendet werden. Werte müssen primitive Werte sein – Zahl, Zeichenfolge, boolesch. |
|
queues |
string[] |
Sammlung von Warteschlangen, von denen dieser Worker Arbeit empfangen kann. |
tags |
Eine Reihe von nicht identifizierenden Attributen, die diesem Worker angefügt sind. Werte müssen primitive Werte sein – Zahl, Zeichenfolge, boolesch. |
Antworten
Name | Typ | Beschreibung |
---|---|---|
200 OK |
Die Anforderung wurde erfolgreich durchgeführt. Headers
|
|
201 Created |
Die Anforderung war erfolgreich, und als Ergebnis wurde eine neue Ressource erstellt. Headers
|
|
Other Status Codes |
Eine unerwartete Fehlerantwort. Headers x-ms-error-code: string |
Beispiele
Creates a worker |
De-register an active worker |
De-register an inactive worker |
Register a worker |
Updates a worker |
Creates a worker
Sample Request
PATCH https://contoso.westus.communications.azure.com/routing/workers/WorkerId?api-version=2023-11-01
{
"capacity": 10,
"queues": [
"MainQueue"
],
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"availableForOffers": false
}
Sample Response
{
"id": "WorkerId",
"state": "inactive",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": false,
"etag": "etag"
}
{
"id": "WorkerId",
"state": "inactive",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": false,
"etag": "etag"
}
De-register an active worker
Sample Request
PATCH https://contoso.westus.communications.azure.com/routing/workers/WorkerId?api-version=2023-11-01
{
"availableForOffers": false,
"capacity": 10
}
Sample Response
{
"id": "WorkerId",
"state": "draining",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": false,
"etag": "etag"
}
{
"id": "WorkerId",
"state": "draining",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": false,
"etag": "etag"
}
De-register an inactive worker
Sample Request
PATCH https://contoso.westus.communications.azure.com/routing/workers/WorkerId?api-version=2023-11-01
{
"availableForOffers": false,
"capacity": 10
}
Sample Response
{
"id": "WorkerId",
"state": "inactive",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": false,
"etag": "etag"
}
{
"id": "WorkerId",
"state": "inactive",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": false,
"etag": "etag"
}
Register a worker
Sample Request
PATCH https://contoso.westus.communications.azure.com/routing/workers/WorkerId?api-version=2023-11-01
{
"availableForOffers": true,
"capacity": 10
}
Sample Response
{
"id": "WorkerId",
"state": "active",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": true,
"etag": "etag"
}
{
"id": "WorkerId",
"state": "active",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": true,
"etag": "etag"
}
Updates a worker
Sample Request
PATCH https://contoso.westus.communications.azure.com/routing/workers/WorkerId?api-version=2023-11-01
{
"capacity": 10,
"queues": [
"MainQueue",
"SecondaryQueue"
],
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"availableForOffers": false
}
Sample Response
{
"id": "WorkerId",
"state": "inactive",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": false,
"etag": "etag"
}
{
"id": "WorkerId",
"state": "inactive",
"queues": [
"MainQueue"
],
"capacity": 10,
"labels": {},
"tags": {},
"channels": [
{
"channelId": "CustomChatChannel",
"capacityCostPerJob": 11,
"maxNumberOfJobs": 4
},
{
"channelId": "CustomVoiceChannel",
"capacityCostPerJob": 10,
"maxNumberOfJobs": 1
}
],
"offers": [],
"assignedJobs": [],
"loadRatio": 0,
"availableForOffers": false,
"etag": "etag"
}
Definitionen
Name | Beschreibung |
---|---|
Azure. |
Das Fehlerobjekt. |
Azure. |
Eine Antwort, die Fehlerdetails enthält. |
Azure. |
Ein Objekt, das spezifischere Informationen zum Fehler enthält. Gemäß den Microsoft One-API-Richtlinien: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses. |
Router |
Stellt die Kapazität dar, die ein Auftrag in diesem Kanal von einem Worker beansprucht. |
Router |
Ein Angebot eines Auftrags für einen Mitarbeiter. |
Router |
Eine Entität, an die Aufträge weitergeleitet werden sollen. |
Router |
Die Zuweisung eines Workers zu einem Auftrag. |
Router |
Eine Entität, an die Aufträge weitergeleitet werden sollen. |
Router |
Enumerationen für Workerzustände. |
Azure.Core.Foundations.Error
Das Fehlerobjekt.
Name | Typ | Beschreibung |
---|---|---|
code |
string |
Einer der vom Server definierten Fehlercodes. |
details |
Ein Array von Details zu bestimmten Fehlern, die zu diesem gemeldeten Fehler geführt haben. |
|
innererror |
Ein Objekt, das spezifischere Informationen enthält als das aktuelle Objekt über den Fehler. |
|
message |
string |
Eine für Menschen lesbare Darstellung des Fehlers. |
target |
string |
Das Ziel des Fehlers. |
Azure.Core.Foundations.ErrorResponse
Eine Antwort, die Fehlerdetails enthält.
Name | Typ | Beschreibung |
---|---|---|
error |
Das Fehlerobjekt. |
Azure.Core.Foundations.InnerError
Ein Objekt, das spezifischere Informationen zum Fehler enthält. Gemäß den Microsoft One-API-Richtlinien: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.
Name | Typ | Beschreibung |
---|---|---|
code |
string |
Einer der vom Server definierten Fehlercodes. |
innererror |
Innerer Fehler. |
RouterChannel
Stellt die Kapazität dar, die ein Auftrag in diesem Kanal von einem Worker beansprucht.
Name | Typ | Beschreibung |
---|---|---|
capacityCostPerJob |
integer |
Die Menge der Kapazität, die ein instance eines Auftrags dieses Kanals von der gesamten Workerkapazität beansprucht. |
channelId |
string |
Id eines Kanals. |
maxNumberOfJobs |
integer |
Die maximale Anzahl von Aufträgen, die gleichzeitig für diesen Kanal unterstützt werden können. Der Wert muss größer als 0 sein. |
RouterJobOffer
Ein Angebot eines Auftrags für einen Mitarbeiter.
Name | Typ | Beschreibung |
---|---|---|
capacityCost |
integer |
Die vom Auftragsangebot beanspruchten Kapazitätskosten. |
expiresAt |
string |
Zeitstempel, zu dem das Angebot in UTC abläuft. |
jobId |
string |
Id des Auftrags. |
offerId |
string |
Id eines Angebots. |
offeredAt |
string |
Zeitstempel, zu dem das Angebot in UTC erstellt wurde. |
RouterWorker
Eine Entität, an die Aufträge weitergeleitet werden sollen.
Name | Typ | Beschreibung |
---|---|---|
assignedJobs |
Eine Liste der zugewiesenen Aufträge, die diesem Worker zugeordnet sind. |
|
availableForOffers |
boolean |
Ein Flag, das angibt, dass dieser Worker für den Empfang von Angeboten geöffnet ist oder nicht. |
capacity |
integer |
Die Gesamtkapazitätsbewertung, die dieser Worker zum Verwalten mehrerer gleichzeitiger Aufträge hat. |
channels |
Sammlung von Kanälen, die dieser Worker verarbeiten kann, und deren Auswirkungen auf die Workerkapazität. |
|
etag |
string |
Das Entitätstag für diese Ressource. |
id |
string |
Id eines Workers. |
labels |
Eine Reihe von Schlüssel-Wert-Paaren, die Attribute identifizieren, die von den Regel-Engines zum Treffen von Entscheidungen verwendet werden. Werte müssen primitive Werte sein – Zahl, Zeichenfolge, boolesch. |
|
loadRatio |
number |
Ein Wert, der die Kapazität der Worker angibt. Der Wert "1" bedeutet, dass die gesamte Kapazität verbraucht wird. Der Wert "0" bedeutet, dass derzeit keine Kapazität verbraucht wird. |
offers |
Eine Liste der aktiven Angebote, die diesem Worker ausgestellt wurden. |
|
queues |
string[] |
Sammlung von Warteschlangen, von denen dieser Worker Arbeit empfangen kann. |
state |
Aktueller Status eines Workers. |
|
tags |
Eine Reihe von nicht identifizierenden Attributen, die diesem Worker angefügt sind. Werte müssen primitive Werte sein – Zahl, Zeichenfolge, boolesch. |
RouterWorkerAssignment
Die Zuweisung eines Workers zu einem Auftrag.
Name | Typ | Beschreibung |
---|---|---|
assignedAt |
string |
Die Zuweisungszeit des Auftrags in UTC. |
assignmentId |
string |
ID der Zuweisung. |
capacityCost |
integer |
Die Menge an Kapazität, die diese Zuweisung für den Worker verbraucht hat. |
jobId |
string |
Id des zugewiesenen Auftrags. |
RouterWorkerCreateOrUpdate
Eine Entität, an die Aufträge weitergeleitet werden sollen.
Name | Typ | Beschreibung |
---|---|---|
availableForOffers |
boolean |
Ein Flag, das angibt, dass dieser Worker für den Empfang von Angeboten geöffnet ist oder nicht. |
capacity |
integer |
Die Gesamtkapazitätsbewertung, die dieser Worker zum Verwalten mehrerer gleichzeitiger Aufträge hat. |
channels |
Sammlung von Kanälen, die dieser Worker verarbeiten kann, und deren Auswirkungen auf die Workerkapazität. |
|
labels |
Eine Reihe von Schlüssel-Wert-Paaren, die Attribute identifizieren, die von den Regel-Engines zum Treffen von Entscheidungen verwendet werden. Werte müssen primitive Werte sein – Zahl, Zeichenfolge, boolesch. |
|
queues |
string[] |
Sammlung von Warteschlangen, von denen dieser Worker Arbeit empfangen kann. |
tags |
Eine Reihe von nicht identifizierenden Attributen, die diesem Worker angefügt sind. Werte müssen primitive Werte sein – Zahl, Zeichenfolge, boolesch. |
RouterWorkerState
Enumerationen für Workerzustände.
Name | Typ | Beschreibung |
---|---|---|
active |
string |
Worker ist aktiv und verfügbar, um Angebote anzunehmen. |
draining |
string |
Worker ist nicht aktiv, wenn angebote vorhanden sind, werden sie widerrufen. Es werden keine neuen Angebote gesendet. |
inactive |
string |
Worker ist nicht aktiv. Es werden keine neuen Angebote gesendet. |