Sdílet prostřednictvím


Job Router Operations - Upsert Job

Vytvoří nebo aktualizuje úlohu směrovače.

PATCH {endpoint}/routing/jobs/{jobId}?api-version=2023-11-01

Parametry identifikátoru URI

Name V Vyžadováno Typ Description
endpoint
path True

string

Identifikátor URI vašeho komunikačního prostředku

jobId
path True

string

ID úlohy.

api-version
query True

string

minLength: 1

Verze rozhraní API, která se má použít pro tuto operaci.

Hlavička požadavku

Media Types: "application/merge-patch+json"

Name Vyžadováno Typ Description
If-Match

string

Požadavek by měl pokračovat pouze v případě, že entita odpovídá tomuto řetězci.

If-Unmodified-Since

string (date-time-rfc7231)

Požadavek by měl pokračovat pouze v případě, že po této době nebyla entita změněna.

Text požadavku

Media Types: "application/merge-patch+json"

Name Typ Description
channelId

string

Identifikátor kanálu. Např. hlas, chat atd.

channelReference

string

Odkaz na externí nadřazený kontext, např. ID volání.

classificationPolicyId

string

ID zásady klasifikace použité ke klasifikaci této úlohy.

dispositionCode

string

Kód důvodu zrušených nebo uzavřených úloh

labels

Sada párů klíč/hodnota, které identifikují atributy používané moduly pravidel k rozhodování. Hodnoty musí být primitivní hodnoty – číslo, řetězec, logická hodnota.

matchingMode JobMatchingModeCreateOrUpdate:

V případě potřeby určí, jak se bude provádět porovnávání úloh. Výchozí režim: QueueAndMatchMode.

notes

RouterJobNote[]

Poznámky připojené k úloze seřazené podle časového razítka

priority

integer (int32)

Priorita této úlohy. Hodnota musí být mezi -100 až 100.

queueId

string

ID fronty, do které je tato úloha zařazena do fronty.

requestedWorkerSelectors

RouterWorkerSelector[]

Kolekce ručně zadaných selektorů pracovních procesů, které musí pracovní proces splnit, aby bylo možné tuto úlohu zpracovat.

tags

Sada neidentifikovaných atributů připojených k této úloze. Hodnoty musí být primitivní hodnoty – číslo, řetězec, logická hodnota.

Odpovědi

Name Typ Description
200 OK

RouterJob

Požadavek byl úspěšný.

Hlavičky

  • ETag: string
  • Last-Modified: string
201 Created

RouterJob

Požadavek byl úspěšný a v důsledku toho byl vytvořen nový prostředek.

Hlavičky

  • ETag: string
  • Last-Modified: string
Other Status Codes

Azure.Core.Foundations.ErrorResponse

Neočekávaná chybová odpověď

Hlavičky

x-ms-error-code: string

Zabezpečení

AadOauth2Auth

Tok Azure Active Directory OAuth2

Typ: oauth2
Tok: accessCode
URL autorizace: https://login.microsoftonline.com/common/oauth2/authorize
URL tokenu: https://login.microsoftonline.com/common/oauth2/token

Rozsahy

Name Description
https://communication.azure.com/.default

Příklady

Creates a new job
Creates a new scheduled router job
Updates a router job

Creates a new job

Ukázkový požadavek

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"
  }
}

Ukázková odpověď

{
  "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

Ukázkový požadavek

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"
  }
}

Ukázková odpověď

{
  "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

Ukázkový požadavek

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"
}

Ukázková odpověď

{
  "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"
}

Definice

Name Description
Azure.Core.Foundations.Error

Objekt chyby.

Azure.Core.Foundations.ErrorResponse

Odpověď obsahující podrobnosti o chybě.

Azure.Core.Foundations.InnerError

Objekt obsahující konkrétnější informace o chybě. Podle pokynů k rozhraní API Microsoft One – https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

JobMatchingModeKind

Diskriminátor podporovaných typů odpovídajících režimů.

LabelOperator

Popisuje podporované operace s hodnotami popisků.

QueueAndMatchMode

Popisuje odpovídající režim, kdy se po úspěšném vytvoření fronty úlohy automaticky spustí odpovídající pracovní proces s úlohou.

QueueAndMatchModeCreateOrUpdate

Popisuje odpovídající režim, kdy se po úspěšném vytvoření fronty úlohy automaticky spustí odpovídající pracovní proces s úlohou.

RouterJob

Jednotka práce, která se má směrovat

RouterJobAssignment

Podrobnosti o přiřazení úlohy pracovnímu procesu

RouterJobCreateOrUpdate

Jednotka práce, která se má směrovat

RouterJobNote

Poznámka připojená k úloze

RouterJobStatus

Popisuje různé stavy úlohy.

RouterWorkerSelector

Popisuje podmínku, která musí být splněna u sady popisků pro výběr pracovního procesu.

RouterWorkerSelectorStatus

Popisuje stav selektoru pracovního procesu.

ScheduleAndSuspendMode

Popisuje odpovídající režim používaný pro plánování úloh, které se mají v budoucnu zařazovat do fronty. V zadaném čase se odpovídající pracovní proces s úlohou nespustí automaticky.

ScheduleAndSuspendModeCreateOrUpdate

Popisuje odpovídající režim používaný pro plánování úloh, které se mají v budoucnu zařazovat do fronty. V zadaném čase se odpovídající pracovní proces s úlohou nespustí automaticky.

SuspendMode

Popisuje odpovídající režim, kdy je odpovídající pracovní proces s úlohou pozastaven.

SuspendModeCreateOrUpdate

Popisuje odpovídající režim, kdy je odpovídající pracovní proces s úlohou pozastaven.

Azure.Core.Foundations.Error

Objekt chyby.

Name Typ Description
code

string

Jedna ze serverově definovaných kódů chyb.

details

Azure.Core.Foundations.Error[]

Pole podrobností o konkrétních chybách, které vedly k této nahlášené chybě.

innererror

Azure.Core.Foundations.InnerError

Objekt obsahující konkrétnější informace, než je aktuální objekt o chybě.

message

string

Čitelné znázornění chyby člověkem.

target

string

Cíl chyby.

Azure.Core.Foundations.ErrorResponse

Odpověď obsahující podrobnosti o chybě.

Name Typ Description
error

Azure.Core.Foundations.Error

Objekt chyby.

Azure.Core.Foundations.InnerError

Objekt obsahující konkrétnější informace o chybě. Podle pokynů k rozhraní API Microsoft One – https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name Typ Description
code

string

Jedna ze serverově definovaných kódů chyb.

innererror

Azure.Core.Foundations.InnerError

Vnitřní chyba.

JobMatchingModeKind

Diskriminátor podporovaných typů odpovídajících režimů.

Hodnota Description
queueAndMatch

Diskriminující hodnota pro QueueAndMatchMode.

scheduleAndSuspend

Diskriminující hodnota pro ScheduleAndSuspendMode.

suspend

Diskriminující hodnota pro SuspendMode.

LabelOperator

Popisuje podporované operace s hodnotami popisků.

Hodnota Description
equal

Rovný.

greaterThan

Větší než.

greaterThanOrEqual

Větší než nebo rovno.

lessThan

Méně než.

lessThanOrEqual

Menší než nebo rovno.

notEqual

Nerovná se.

QueueAndMatchMode

Popisuje odpovídající režim, kdy se po úspěšném vytvoření fronty úlohy automaticky spustí odpovídající pracovní proces s úlohou.

Name Typ Description
kind string:

queueAndMatch

Typ diskriminující podtyp JobMatchingMode.

QueueAndMatchModeCreateOrUpdate

Popisuje odpovídající režim, kdy se po úspěšném vytvoření fronty úlohy automaticky spustí odpovídající pracovní proces s úlohou.

Name Typ Description
kind string:

queueAndMatch

Typ diskriminující podtyp JobMatchingMode.

RouterJob

Jednotka práce, která se má směrovat

Name Typ Description
assignments

<string,  RouterJobAssignment>

Kolekcepřiřazeních Klíč je AssignmentId.

attachedWorkerSelectors

RouterWorkerSelector[]

Kolekce selektorů pracovních procesů připojených zásadami klasifikace, které musí pracovní proces splnit, aby bylo možné tuto úlohu zpracovat.

channelId

string

Identifikátor kanálu. Např. hlas, chat atd.

channelReference

string

Odkaz na externí nadřazený kontext, např. ID volání.

classificationPolicyId

string

ID zásady klasifikace použité ke klasifikaci této úlohy.

dispositionCode

string

Kód důvodu zrušených nebo uzavřených úloh

enqueuedAt

string (date-time)

Časové razítko, ve kterém byla úloha zařazena do fronty ve standardu UTC.

etag

string

Značka entity pro tento prostředek.

id

string

ID úlohy.

labels

Sada párů klíč/hodnota, které identifikují atributy používané moduly pravidel k rozhodování. Hodnoty musí být primitivní hodnoty – číslo, řetězec, logická hodnota.

matchingMode JobMatchingMode:

V případě potřeby určí, jak se bude provádět porovnávání úloh. Výchozí režim: QueueAndMatchMode.

notes

RouterJobNote[]

Poznámky připojené k úloze seřazené podle časového razítka

priority

integer (int32)

Priorita této úlohy. Hodnota musí být mezi -100 až 100.

queueId

string

ID fronty, do které je tato úloha zařazena do fronty.

requestedWorkerSelectors

RouterWorkerSelector[]

Kolekce ručně zadaných selektorů pracovních procesů, které musí pracovní proces splnit, aby bylo možné tuto úlohu zpracovat.

scheduledAt

string (date-time)

Pokud je nastavená, bude úloha naplánována tak, aby se v daném okamžiku zapíše do fronty.

status

RouterJobStatus

Stav úlohy.

tags

Sada neidentifikovaných atributů připojených k této úloze. Hodnoty musí být primitivní hodnoty – číslo, řetězec, logická hodnota.

RouterJobAssignment

Podrobnosti o přiřazení úlohy pracovnímu procesu

Name Typ Description
assignedAt

string (date-time)

Časové razítko, kdy byla úloha přiřazena pracovnímu procesu v UTC.

assignmentId

string

ID přiřazení úlohy.

closedAt

string (date-time)

Časové razítko, kdy byla úloha označena jako uzavřená po dokončení v UTC.

completedAt

string (date-time)

Časové razítko, kdy byla úloha označena jako dokončená po přiřazení v UTC.

workerId

string

ID pracovního procesu přiřazeného k úloze.

RouterJobCreateOrUpdate

Jednotka práce, která se má směrovat

Name Typ Description
channelId

string

Identifikátor kanálu. Např. hlas, chat atd.

channelReference

string

Odkaz na externí nadřazený kontext, např. ID volání.

classificationPolicyId

string

ID zásady klasifikace použité ke klasifikaci této úlohy.

dispositionCode

string

Kód důvodu zrušených nebo uzavřených úloh

labels

Sada párů klíč/hodnota, které identifikují atributy používané moduly pravidel k rozhodování. Hodnoty musí být primitivní hodnoty – číslo, řetězec, logická hodnota.

matchingMode JobMatchingModeCreateOrUpdate:

V případě potřeby určí, jak se bude provádět porovnávání úloh. Výchozí režim: QueueAndMatchMode.

notes

RouterJobNote[]

Poznámky připojené k úloze seřazené podle časového razítka

priority

integer (int32)

Priorita této úlohy. Hodnota musí být mezi -100 až 100.

queueId

string

ID fronty, do které je tato úloha zařazena do fronty.

requestedWorkerSelectors

RouterWorkerSelector[]

Kolekce ručně zadaných selektorů pracovních procesů, které musí pracovní proces splnit, aby bylo možné tuto úlohu zpracovat.

tags

Sada neidentifikovaných atributů připojených k této úloze. Hodnoty musí být primitivní hodnoty – číslo, řetězec, logická hodnota.

RouterJobNote

Poznámka připojená k úloze

Name Typ Description
addedAt

string (date-time)

Čas, kdy byla poznámka přidána v UTC. Pokud není zadaný, použije se výchozí hodnota aktuálního času.

message

string

Zpráva obsažená v poznámce.

RouterJobStatus

Popisuje různé stavy úlohy.

Hodnota Description
assigned

Úloha byla přiřazena pracovníkovi.

cancelled

Úloha byla zrušena.

classificationFailed

Proces klasifikace pro úlohu selhal.

closed

Pracovní pozice byla uzavřena pracovníkem.

completed

Pracovní proces dokončil úlohu.

created

Úloha byla vytvořena.

pendingClassification

Úloha čeká na klasifikaci.

pendingSchedule

Úloha byla vytvořena, ale zatím nebyla naplánována.

queued

Úloha byla zařazena do fronty.

scheduleFailed

Plánování úloh se nezdařilo.

scheduled

Úloha byla úspěšně naplánována.

waitingForActivation

Úloha je v pozastaveném stavu a čeká na aktualizaci.

RouterWorkerSelector

Popisuje podmínku, která musí být splněna u sady popisků pro výběr pracovního procesu.

Name Typ Description
expedite

boolean

Nasdílí úlohu do fronty, pokud je tento selektor aktivní.

expiresAfterSeconds

number (double)

Popisuje, jak dlouho je tento selektor popisků platný v sekundách.

expiresAt

string (date-time)

Čas vypršení platnosti tohoto selektoru pracovního procesu ve standardu UTC.

key

string

Klíč popisku pro dotazování.

labelOperator

LabelOperator

Popisuje, jak se hodnota popisku porovnává s hodnotou definovanou v selektoru pracovního procesu.

status

RouterWorkerSelectorStatus

Stav selektoru pracovního procesu

value

Hodnota, která se má porovnat se skutečnou hodnotou popisku s daným operátorem. Hodnoty musí být primitivní hodnoty – číslo, řetězec, logická hodnota.

RouterWorkerSelectorStatus

Popisuje stav selektoru pracovního procesu.

Hodnota Description
active

Selektor pracovního procesu je platný.

expired

Selektor pracovního procesu není platný.

ScheduleAndSuspendMode

Popisuje odpovídající režim používaný pro plánování úloh, které se mají v budoucnu zařazovat do fronty. V zadaném čase se odpovídající pracovní proces s úlohou nespustí automaticky.

Name Typ Description
kind string:

scheduleAndSuspend

Typ diskriminující podtyp JobMatchingMode.

scheduleAt

string (date-time)

Požadovaný čas plánu.

ScheduleAndSuspendModeCreateOrUpdate

Popisuje odpovídající režim používaný pro plánování úloh, které se mají v budoucnu zařazovat do fronty. V zadaném čase se odpovídající pracovní proces s úlohou nespustí automaticky.

Name Typ Description
kind string:

scheduleAndSuspend

Typ diskriminující podtyp JobMatchingMode.

scheduleAt

string (date-time)

Požadovaný čas plánu.

SuspendMode

Popisuje odpovídající režim, kdy je odpovídající pracovní proces s úlohou pozastaven.

Name Typ Description
kind string:

suspend

Typ diskriminující podtyp JobMatchingMode.

SuspendModeCreateOrUpdate

Popisuje odpovídající režim, kdy je odpovídající pracovní proces s úlohou pozastaven.

Name Typ Description
kind string:

suspend

Typ diskriminující podtyp JobMatchingMode.