Partilhar via


Job Router Operations - Upsert Job

Cria ou atualiza uma tarefa de router.

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

Parâmetros do URI

Name Em Necessário Tipo Description
endpoint
path True

string

URI do recurso de Comunicação

jobId
path True

string

ID de um emprego.

api-version
query True

string

A versão da API a utilizar para esta operação.

Cabeçalho do Pedido

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

Name Necessário Tipo Description
If-Match

string

O pedido só deve prosseguir se uma entidade corresponder a esta cadeia.

If-Unmodified-Since

string

date-time-rfc7231

O pedido só deve prosseguir se a entidade não tiver sido modificada após este período de tempo.

Corpo do Pedido

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

Name Tipo Description
channelId

string

O identificador do canal. por exemplo, voz, chat, etc.

channelReference

string

Referência a um contexto principal externo, por exemplo. chamar ID.

classificationPolicyId

string

ID de uma política de classificação utilizada para classificar esta tarefa.

dispositionCode

string

Código do motivo para tarefas canceladas ou fechadas.

labels

Um conjunto de pares chave/valor que identificam atributos utilizados pelos motores de regras para tomar decisões. Os valores têm de ser valores primitivos - número, cadeia, booleano.

matchingMode JobMatchingModeCreateOrUpdate:

Se for fornecido, determinará a forma como a correspondência de tarefas será realizada. Modo predefinido: QueueAndMatchMode.

notes

RouterJobNote[]

Notas anexadas a uma tarefa, ordenadas por carimbo de data/hora.

priority

integer

Prioridade deste trabalho. O valor tem de estar entre -100 e 100.

queueId

string

ID de uma fila para a qual esta tarefa está em fila.

requestedWorkerSelectors

RouterWorkerSelector[]

Uma coleção de seletores de trabalho especificados manualmente, que uma função de trabalho tem de satisfazer para processar esta tarefa.

tags

Um conjunto de atributos não identificativos anexados a esta tarefa. Os valores têm de ser valores primitivos - número, cadeia, booleano.

Respostas

Name Tipo Description
200 OK

RouterJob

O pedido foi efetuada com êxito.

Cabeçalhos

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

RouterJob

O pedido foi efetuado com êxito e foi criado um novo recurso como resultado.

Cabeçalhos

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

Azure.Core.Foundations.ErrorResponse

Uma resposta de erro inesperada.

Cabeçalhos

x-ms-error-code: string

Exemplos

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

Creates a new job

Pedido de amostra

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

Resposta da amostra

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

Pedido de amostra

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

Resposta da amostra

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

Pedido de amostra

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

Resposta da amostra

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

Definições

Name Description
Azure.Core.Foundations.Error

O objeto de erro.

Azure.Core.Foundations.ErrorResponse

Uma resposta que contém detalhes de erro.

Azure.Core.Foundations.InnerError

Um objeto que contém informações mais específicas sobre o erro. De acordo com as diretrizes da Microsoft One API – https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

JobMatchingModeKind

Discriminadores para tipos de modo de correspondência suportados.

LabelOperator

Descreve as operações suportadas em valores de etiqueta.

QueueAndMatchMode

Descreve um modo correspondente em que a função de trabalho correspondente a uma tarefa é iniciada automaticamente após a colocação da tarefa em fila com êxito.

QueueAndMatchModeCreateOrUpdate

Descreve um modo correspondente em que a função de trabalho correspondente a uma tarefa é iniciada automaticamente após a colocação da tarefa em fila com êxito.

RouterJob

Uma unidade de trabalho a ser encaminhada

RouterJobAssignment

Detalhes da atribuição de um trabalho a uma função de trabalho.

RouterJobCreateOrUpdate

Uma unidade de trabalho a ser encaminhada

RouterJobNote

Uma nota anexada a uma tarefa.

RouterJobStatus

Descreve os vários estados de uma tarefa.

RouterWorkerSelector

Descreve uma condição que tem de ser cumprida num conjunto de etiquetas para seleção de trabalho.

RouterWorkerSelectorStatus

Descreve o estado de um seletor de trabalho.

ScheduleAndSuspendMode

Descreve um modo correspondente utilizado para agendar tarefas a serem em fila num futuro futuro. No momento especificado, a função de trabalho correspondente a uma tarefa não será iniciada automaticamente.

ScheduleAndSuspendModeCreateOrUpdate

Descreve um modo correspondente utilizado para agendar tarefas a serem colocadas em fila num futuro futuro. No momento especificado, a função de trabalho correspondente a uma tarefa não será iniciada automaticamente.

SuspendMode

Descreve um modo correspondente em que a função de trabalho correspondente a uma tarefa é suspensa.

SuspendModeCreateOrUpdate

Descreve um modo correspondente em que a função de trabalho correspondente a uma tarefa é suspensa.

Azure.Core.Foundations.Error

O objeto de erro.

Name Tipo Description
code

string

Um dos conjuntos de códigos de erro definidos pelo servidor.

details

Azure.Core.Foundations.Error[]

Uma matriz de detalhes sobre erros específicos que levaram a este erro reportado.

innererror

Azure.Core.Foundations.InnerError

Um objeto que contém informações mais específicas do que o objeto atual sobre o erro.

message

string

Uma representação legível por humanos do erro.

target

string

O destino do erro.

Azure.Core.Foundations.ErrorResponse

Uma resposta que contém detalhes de erro.

Name Tipo Description
error

Azure.Core.Foundations.Error

O objeto de erro.

Azure.Core.Foundations.InnerError

Um objeto que contém informações mais específicas sobre o erro. De acordo com as diretrizes da Microsoft One API – https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.

Name Tipo Description
code

string

Um dos conjuntos de códigos de erro definidos pelo servidor.

innererror

Azure.Core.Foundations.InnerError

Erro interno.

JobMatchingModeKind

Discriminadores para tipos de modo de correspondência suportados.

Name Tipo Description
queueAndMatch

string

Valor discriminatório para QueueAndMatchMode.

scheduleAndSuspend

string

Valor discriminatório para ScheduleAndSuspendMode.

suspend

string

Valor discriminatório para SuspendMode.

LabelOperator

Descreve as operações suportadas em valores de etiqueta.

Name Tipo Description
equal

string

Igual.

greaterThan

string

Maior que.

greaterThanOrEqual

string

Maior ou igual.

lessThan

string

Menos do que.

lessThanOrEqual

string

Menor ou igual.

notEqual

string

Não é Igual.

QueueAndMatchMode

Descreve um modo correspondente em que a função de trabalho correspondente a uma tarefa é iniciada automaticamente após a colocação da tarefa em fila com êxito.

Name Tipo Description
kind string:

queueAndMatch

O tipo discriminatório que descreve um subtipo de JobMatchingMode.

QueueAndMatchModeCreateOrUpdate

Descreve um modo correspondente em que a função de trabalho correspondente a uma tarefa é iniciada automaticamente após a colocação da tarefa em fila com êxito.

Name Tipo Description
kind string:

queueAndMatch

O tipo discriminatório que descreve um sub-tipo de JobMatchingMode.

RouterJob

Uma unidade de trabalho a ser encaminhada

Name Tipo Description
assignments

<string,  RouterJobAssignment>

Uma coleção das atribuições da tarefa. A chave é AssignmentId.

attachedWorkerSelectors

RouterWorkerSelector[]

Uma coleção de seletores de trabalho anexados por uma política de classificação, que um trabalhador tem de satisfazer para processar esta tarefa.

channelId

string

O identificador do canal. por exemplo, voz, chat, etc.

channelReference

string

Referência a um contexto principal externo, por exemplo. chamar ID.

classificationPolicyId

string

ID de uma política de classificação utilizada para classificar esta tarefa.

dispositionCode

string

Código de motivo para tarefas canceladas ou fechadas.

enqueuedAt

string

Carimbo de data/hora em que uma tarefa foi em fila de colocação em fila em UTC.

etag

string

A etiqueta de entidade para este recurso.

id

string

ID de um trabalho.

labels

Um conjunto de pares chave/valor que identificam atributos utilizados pelos motores de regras para tomar decisões. Os valores têm de ser valores primitivos - número, cadeia, booleano.

matchingMode JobMatchingMode:

Se for fornecido, determinará a forma como a correspondência de tarefas será realizada. Modo predefinido: QueueAndMatchMode.

notes

RouterJobNote[]

Notas anexadas a uma tarefa, ordenadas por carimbo de data/hora.

priority

integer

Prioridade deste trabalho. O valor tem de estar entre -100 e 100.

queueId

string

ID de uma fila à qual esta tarefa está em fila de espera.

requestedWorkerSelectors

RouterWorkerSelector[]

Uma coleção de seletores de trabalho especificados manualmente, que uma função de trabalho tem de satisfazer para processar esta tarefa.

scheduledAt

string

Se estiver definido, a tarefa será agendada para ser colocada em fila num determinado momento.

status

RouterJobStatus

O estado da tarefa.

tags

Um conjunto de atributos não identificadores anexados a esta tarefa. Os valores têm de ser valores primitivos - número, cadeia, booleano.

RouterJobAssignment

Detalhes da atribuição de um trabalho a uma função de trabalho.

Name Tipo Description
assignedAt

string

Carimbo de data/hora quando a tarefa foi atribuída a um trabalhador em UTC.

assignmentId

string

ID de uma tarefa.

closedAt

string

Carimbo de data/hora quando a tarefa foi marcada como fechada depois de ter sido concluída em UTC.

completedAt

string

Carimbo de data/hora quando a tarefa foi marcada como concluída depois de ter sido atribuída em UTC.

workerId

string

ID da Função de Trabalho atribuída à tarefa.

RouterJobCreateOrUpdate

Uma unidade de trabalho a ser encaminhada

Name Tipo Description
channelId

string

O identificador do canal. por exemplo, voz, chat, etc.

channelReference

string

Referência a um contexto principal externo, por exemplo. chamar ID.

classificationPolicyId

string

ID de uma política de classificação utilizada para classificar esta tarefa.

dispositionCode

string

Código de motivo para tarefas canceladas ou fechadas.

labels

Um conjunto de pares chave/valor que identificam atributos utilizados pelos motores de regras para tomar decisões. Os valores têm de ser valores primitivos - número, cadeia, booleano.

matchingMode JobMatchingModeCreateOrUpdate:

Se for fornecido, determinará a forma como a correspondência de tarefas será realizada. Modo predefinido: QueueAndMatchMode.

notes

RouterJobNote[]

Notas anexadas a uma tarefa, ordenadas por carimbo de data/hora.

priority

integer

Prioridade deste trabalho. O valor tem de estar entre -100 e 100.

queueId

string

ID de uma fila à qual esta tarefa está em fila de espera.

requestedWorkerSelectors

RouterWorkerSelector[]

Uma coleção de seletores de trabalho especificados manualmente, que uma função de trabalho tem de satisfazer para processar esta tarefa.

tags

Um conjunto de atributos não identificadores anexados a esta tarefa. Os valores têm de ser valores primitivos - número, cadeia, booleano.

RouterJobNote

Uma nota anexada a uma tarefa.

Name Tipo Description
addedAt

string

O momento em que a nota foi adicionada em UTC. Se não for fornecido, a predefinição será a hora atual.

message

string

A mensagem contida na nota.

RouterJobStatus

Descreve os vários estados de uma tarefa.

Name Tipo Description
assigned

string

A tarefa foi atribuída a um trabalhador.

cancelled

string

A tarefa foi cancelada.

classificationFailed

string

O processo de classificação falhou para a tarefa.

closed

string

O trabalho foi fechado por um trabalhador.

completed

string

A tarefa foi concluída por um trabalhador.

created

string

A tarefa foi criada.

pendingClassification

string

A tarefa está à espera de ser classificada.

pendingSchedule

string

A tarefa foi criada, mas ainda não foi agendada.

queued

string

O trabalho foi colocado em fila.

scheduleFailed

string

O agendamento de tarefas falhou.

scheduled

string

A tarefa foi agendada com êxito.

waitingForActivation

string

A tarefa está num estado suspenso e a aguardar por uma atualização.

RouterWorkerSelector

Descreve uma condição que tem de ser cumprida num conjunto de etiquetas para seleção de trabalho.

Name Tipo Description
expedite

boolean

Envia uma tarefa para a frente da fila, desde que este seletor esteja ativo.

expiresAfterSeconds

number

Descreve quanto tempo este seletor de etiquetas é válido em segundos.

expiresAt

string

O momento em que este seletor de trabalho expira em UTC.

key

string

A chave de etiqueta para consultar.

labelOperator

LabelOperator

Descreve como o valor da etiqueta é comparado com o valor definido no seletor de trabalho.

status

RouterWorkerSelectorStatus

Estado do seletor de trabalho.

value

O valor a comparar com o valor de etiqueta real com o operador especificado. Os valores têm de ser valores primitivos - número, cadeia, booleano.

RouterWorkerSelectorStatus

Descreve o estado de um seletor de trabalho.

Name Tipo Description
active

string

O seletor de trabalho é válido.

expired

string

O seletor de trabalho não é válido.

ScheduleAndSuspendMode

Descreve um modo correspondente utilizado para agendar tarefas a serem em fila num futuro futuro. No momento especificado, a função de trabalho correspondente a uma tarefa não será iniciada automaticamente.

Name Tipo Description
kind string:

scheduleAndSuspend

O tipo discriminatório que descreve um subtipo de JobMatchingMode.

scheduleAt

string

Hora de agenda pedida.

ScheduleAndSuspendModeCreateOrUpdate

Descreve um modo correspondente utilizado para agendar tarefas a serem colocadas em fila num futuro futuro. No momento especificado, a função de trabalho correspondente a uma tarefa não será iniciada automaticamente.

Name Tipo Description
kind string:

scheduleAndSuspend

O tipo discriminatório que descreve um sub-tipo de JobMatchingMode.

scheduleAt

string

Hora de agenda pedida.

SuspendMode

Descreve um modo correspondente em que a função de trabalho correspondente a uma tarefa é suspensa.

Name Tipo Description
kind string:

suspend

O tipo discriminatório que descreve um subtipo de JobMatchingMode.

SuspendModeCreateOrUpdate

Descreve um modo correspondente em que a função de trabalho correspondente a uma tarefa é suspensa.

Name Tipo Description
kind string:

suspend

O tipo discriminatório que descreve um sub-tipo de JobMatchingMode.