Job Router Operations - Upsert Job
Crea o actualiza un trabajo de enrutador.
PATCH {endpoint}/routing/jobs/{jobId}?api-version=2023-11-01
Parámetros de identificador URI
Nombre | En | Requerido | Tipo | Description |
---|---|---|---|---|
endpoint
|
path | True |
string |
URI del recurso de comunicación |
job
|
path | True |
string |
Id. de un trabajo. |
api-version
|
query | True |
string |
Versión de API que se usará para la operación. |
Encabezado de la solicitud
Media Types: "application/merge-patch+json"
Nombre | Requerido | Tipo | Description |
---|---|---|---|
If-Match |
string |
La solicitud solo debe continuar si una entidad coincide con esta cadena. |
|
If-Unmodified-Since |
string date-time-rfc7231 |
La solicitud solo debe continuar si la entidad no se modificó después de este tiempo. |
Cuerpo de la solicitud
Media Types: "application/merge-patch+json"
Nombre | Tipo | Description |
---|---|---|
channelId |
string |
Identificador del canal. Eg. voz, chat, etc. |
channelReference |
string |
Referencia a un contexto primario externo, por ejemplo, id. de llamada. |
classificationPolicyId |
string |
Identificador de una directiva de clasificación que se usa para clasificar este trabajo. |
dispositionCode |
string |
Código de motivo para trabajos cancelados o cerrados. |
labels |
Conjunto de pares clave-valor que identifican los atributos usados por los motores de reglas para tomar decisiones. Los valores deben ser valores primitivos: número, cadena y booleano. |
|
matchingMode | JobMatchingModeCreateOrUpdate: |
Si se proporciona, determinará cómo se llevará a cabo la coincidencia de trabajos. Modo predeterminado: QueueAndMatchMode. |
notes |
Notas adjuntas a un trabajo, ordenadas por marca de tiempo. |
|
priority |
integer |
Prioridad de este trabajo. El valor debe estar comprendido entre -100 y 100. |
queueId |
string |
Identificador de una cola a la que se pone en cola este trabajo. |
requestedWorkerSelectors |
Colección de selectores de trabajo especificados manualmente, que un trabajo debe satisfacer para procesar este trabajo. |
|
tags |
Un conjunto de atributos que no son de identificación asociados a este trabajo. Los valores deben ser valores primitivos: número, cadena y booleano. |
Respuestas
Nombre | Tipo | Description |
---|---|---|
200 OK |
La solicitud se ha realizado correctamente. Encabezados
|
|
201 Created |
La solicitud se ha realizado correctamente y se ha creado un nuevo recurso como resultado. Encabezados
|
|
Other Status Codes |
Respuesta de error inesperada. Encabezados x-ms-error-code: string |
Ejemplos
Creates a new job |
Creates a new scheduled router job |
Updates a router job |
Creates a new job
Solicitud de ejemplo
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"
}
}
Respuesta de muestra
{
"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
Solicitud de ejemplo
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"
}
}
Respuesta de muestra
{
"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
Solicitud de ejemplo
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"
}
Respuesta de muestra
{
"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"
}
Definiciones
Nombre | Description |
---|---|
Azure. |
Objeto de error. |
Azure. |
Una respuesta que contiene los detalles del error. |
Azure. |
Objeto que contiene información más específica sobre el error. Según las directrices de la API de Microsoft One: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses. |
Job |
Discriminadores para los tipos de modo coincidentes admitidos. |
Label |
Describe las operaciones admitidas en los valores de etiqueta. |
Queue |
Describe un modo coincidente en el que el trabajo coincidente con un trabajo se inicia automáticamente después de que el trabajo se pone en cola correctamente. |
Queue |
Describe un modo coincidente en el que el trabajo coincidente con un trabajo se inicia automáticamente después de que el trabajo se pone en cola correctamente. |
Router |
Una unidad de trabajo que se va a enrutar |
Router |
Detalles de asignación de un trabajo a un trabajo. |
Router |
Una unidad de trabajo que se va a enrutar |
Router |
Nota adjunta a un trabajo. |
Router |
Describe el estado de un trabajo. |
Router |
Describe una condición que se debe cumplir con un conjunto de etiquetas para la selección de trabajo. |
Router |
Describe el estado de un selector de trabajo. |
Schedule |
Describe un modo coincidente que se usa para programar trabajos que se ponen en cola en un momento futuro. En el momento especificado, el trabajo coincidente con un trabajo no se iniciará automáticamente. |
Schedule |
Describe un modo coincidente que se usa para programar trabajos que se ponen en cola en un momento futuro. En el momento especificado, el trabajo coincidente con un trabajo no se iniciará automáticamente. |
Suspend |
Describe un modo coincidente en el que se suspende el trabajo coincidente con un trabajo. |
Suspend |
Describe un modo coincidente en el que se suspende el trabajo coincidente con un trabajo. |
Azure.Core.Foundations.Error
Objeto de error.
Nombre | Tipo | Description |
---|---|---|
code |
string |
Uno de los conjuntos de códigos de error definidos por el servidor. |
details |
Matriz de detalles sobre errores específicos que llevaron a este error notificado. |
|
innererror |
Objeto que contiene información más específica que el objeto actual sobre el error. |
|
message |
string |
Representación legible del error. |
target |
string |
Destino del error. |
Azure.Core.Foundations.ErrorResponse
Una respuesta que contiene los detalles del error.
Nombre | Tipo | Description |
---|---|---|
error |
Objeto de error. |
Azure.Core.Foundations.InnerError
Objeto que contiene información más específica sobre el error. Según las directrices de la API de Microsoft One: https://github.com/Microsoft/api-guidelines/blob/vNext/Guidelines.md#7102-error-condition-responses.
Nombre | Tipo | Description |
---|---|---|
code |
string |
Uno de los conjuntos de códigos de error definidos por el servidor. |
innererror |
Error interno. |
JobMatchingModeKind
Discriminadores para los tipos de modo coincidentes admitidos.
Nombre | Tipo | Description |
---|---|---|
queueAndMatch |
string |
Valor de discriminador para QueueAndMatchMode. |
scheduleAndSuspend |
string |
Valor de discriminador para ScheduleAndSuspendMode. |
suspend |
string |
Valor de discriminador para SuspendMode. |
LabelOperator
Describe las operaciones admitidas en los valores de etiqueta.
Nombre | Tipo | Description |
---|---|---|
equal |
string |
Igual. |
greaterThan |
string |
Mayor que. |
greaterThanOrEqual |
string |
Mayor o igual que. |
lessThan |
string |
Menor que. |
lessThanOrEqual |
string |
Menor o igual que. |
notEqual |
string |
No es igual. |
QueueAndMatchMode
Describe un modo coincidente en el que el trabajo coincidente con un trabajo se inicia automáticamente después de que el trabajo se pone en cola correctamente.
Nombre | Tipo | Description |
---|---|---|
kind |
string:
queue |
El discriminador de tipos que describe un subtipo de JobMatchingMode. |
QueueAndMatchModeCreateOrUpdate
Describe un modo coincidente en el que el trabajo coincidente con un trabajo se inicia automáticamente después de que el trabajo se pone en cola correctamente.
Nombre | Tipo | Description |
---|---|---|
kind |
string:
queue |
El discriminador de tipos que describe un subtipo de JobMatchingMode. |
RouterJob
Una unidad de trabajo que se va a enrutar
Nombre | Tipo | Description |
---|---|---|
assignments |
<string,
Router |
Colección de las asignaciones del trabajo. La clave es AssignmentId. |
attachedWorkerSelectors |
Colección de selectores de trabajo adjuntos por una directiva de clasificación, que un trabajo debe satisfacer para procesar este trabajo. |
|
channelId |
string |
Identificador del canal. Eg. voz, chat, etc. |
channelReference |
string |
Referencia a un contexto primario externo, por ejemplo, id. de llamada. |
classificationPolicyId |
string |
Identificador de una directiva de clasificación que se usa para clasificar este trabajo. |
dispositionCode |
string |
Código de motivo para trabajos cancelados o cerrados. |
enqueuedAt |
string |
Marca de tiempo en la que se puso en cola un trabajo en utc. |
etag |
string |
Etiqueta de entidad para este recurso. |
id |
string |
Id. de un trabajo. |
labels |
Conjunto de pares clave-valor que identifican los atributos usados por los motores de reglas para tomar decisiones. Los valores deben ser valores primitivos: número, cadena y booleano. |
|
matchingMode | JobMatchingMode: |
Si se proporciona, determinará cómo se llevará a cabo la coincidencia de trabajos. Modo predeterminado: QueueAndMatchMode. |
notes |
Notas adjuntas a un trabajo, ordenadas por marca de tiempo. |
|
priority |
integer |
Prioridad de este trabajo. El valor debe estar comprendido entre -100 y 100. |
queueId |
string |
Identificador de una cola a la que se pone en cola este trabajo. |
requestedWorkerSelectors |
Colección de selectores de trabajo especificados manualmente, que un trabajo debe satisfacer para procesar este trabajo. |
|
scheduledAt |
string |
Si se establece, se programará que el trabajo se poner en cola en un momento dado. |
status |
El estado del trabajo. |
|
tags |
Un conjunto de atributos que no son de identificación asociados a este trabajo. Los valores deben ser valores primitivos: número, cadena y booleano. |
RouterJobAssignment
Detalles de asignación de un trabajo a un trabajo.
Nombre | Tipo | Description |
---|---|---|
assignedAt |
string |
Marca de tiempo cuando el trabajo se asignó a un trabajador en UTC. |
assignmentId |
string |
Identificador de una asignación de trabajo. |
closedAt |
string |
Marca de tiempo cuando el trabajo se marcó como cerrado después de completarse en UTC. |
completedAt |
string |
Marca de tiempo cuando el trabajo se marcó como completado después de asignarse en UTC. |
workerId |
string |
Identificador del trabajo asignado al trabajo. |
RouterJobCreateOrUpdate
Una unidad de trabajo que se va a enrutar
Nombre | Tipo | Description |
---|---|---|
channelId |
string |
Identificador del canal. Eg. voz, chat, etc. |
channelReference |
string |
Referencia a un contexto primario externo, por ejemplo, id. de llamada. |
classificationPolicyId |
string |
Identificador de una directiva de clasificación que se usa para clasificar este trabajo. |
dispositionCode |
string |
Código de motivo para trabajos cancelados o cerrados. |
labels |
Conjunto de pares clave-valor que identifican los atributos usados por los motores de reglas para tomar decisiones. Los valores deben ser valores primitivos: número, cadena y booleano. |
|
matchingMode | JobMatchingModeCreateOrUpdate: |
Si se proporciona, determinará cómo se llevará a cabo la coincidencia de trabajos. Modo predeterminado: QueueAndMatchMode. |
notes |
Notas adjuntas a un trabajo, ordenadas por marca de tiempo. |
|
priority |
integer |
Prioridad de este trabajo. El valor debe estar comprendido entre -100 y 100. |
queueId |
string |
Identificador de una cola a la que se pone en cola este trabajo. |
requestedWorkerSelectors |
Colección de selectores de trabajo especificados manualmente, que un trabajo debe satisfacer para procesar este trabajo. |
|
tags |
Un conjunto de atributos que no son de identificación asociados a este trabajo. Los valores deben ser valores primitivos: número, cadena y booleano. |
RouterJobNote
Nota adjunta a un trabajo.
Nombre | Tipo | Description |
---|---|---|
addedAt |
string |
Hora a la que se agregó la nota en formato UTC. Si no se proporciona, el valor predeterminado será la hora actual. |
message |
string |
Mensaje contenido en la nota. |
RouterJobStatus
Describe el estado de un trabajo.
Nombre | Tipo | Description |
---|---|---|
assigned |
string |
El trabajo se ha asignado a un trabajador. |
cancelled |
string |
Se ha cancelado el trabajo. |
classificationFailed |
string |
Error en el proceso de clasificación del trabajo. |
closed |
string |
Un trabajador ha cerrado el trabajo. |
completed |
string |
Un trabajo lo ha completado un trabajador. |
created |
string |
Se ha creado el trabajo. |
pendingClassification |
string |
El trabajo está esperando que se clasifique. |
pendingSchedule |
string |
El trabajo se ha creado pero aún no se ha programado. |
queued |
string |
El trabajo se ha puesto en cola. |
scheduleFailed |
string |
Error en la programación del trabajo. |
scheduled |
string |
El trabajo se ha programado correctamente. |
waitingForActivation |
string |
El trabajo está en estado suspendido y espera una actualización. |
RouterWorkerSelector
Describe una condición que se debe cumplir con un conjunto de etiquetas para la selección de trabajo.
Nombre | Tipo | Description |
---|---|---|
expedite |
boolean |
Inserta un trabajo en la parte delantera de la cola siempre que este selector esté activo. |
expiresAfterSeconds |
number |
Describe cuánto tiempo es válido este selector de etiquetas en segundos. |
expiresAt |
string |
Hora a la que expira este selector de trabajo en UTC. |
key |
string |
Clave de etiqueta con la que se va a consultar. |
labelOperator |
Describe cómo se compara el valor de la etiqueta con el valor definido en el selector de trabajo. |
|
status |
Estado del selector de trabajo. |
|
value |
Valor que se va a comparar con el valor de etiqueta real con el operador especificado. Los valores deben ser valores primitivos: número, cadena y booleano. |
RouterWorkerSelectorStatus
Describe el estado de un selector de trabajo.
Nombre | Tipo | Description |
---|---|---|
active |
string |
El selector de trabajo es válido. |
expired |
string |
El selector de trabajo no es válido. |
ScheduleAndSuspendMode
Describe un modo coincidente que se usa para programar trabajos que se ponen en cola en un momento futuro. En el momento especificado, el trabajo coincidente con un trabajo no se iniciará automáticamente.
Nombre | Tipo | Description |
---|---|---|
kind |
string:
schedule |
El discriminador de tipos que describe un subtipo de JobMatchingMode. |
scheduleAt |
string |
Hora de programación solicitada. |
ScheduleAndSuspendModeCreateOrUpdate
Describe un modo coincidente que se usa para programar trabajos que se ponen en cola en un momento futuro. En el momento especificado, el trabajo coincidente con un trabajo no se iniciará automáticamente.
Nombre | Tipo | Description |
---|---|---|
kind |
string:
schedule |
El discriminador de tipos que describe un subtipo de JobMatchingMode. |
scheduleAt |
string |
Hora de programación solicitada. |
SuspendMode
Describe un modo coincidente en el que se suspende el trabajo coincidente con un trabajo.
Nombre | Tipo | Description |
---|---|---|
kind |
string:
suspend |
El discriminador de tipos que describe un subtipo de JobMatchingMode. |
SuspendModeCreateOrUpdate
Describe un modo coincidente en el que se suspende el trabajo coincidente con un trabajo.
Nombre | Tipo | Description |
---|---|---|
kind |
string:
suspend |
El discriminador de tipos que describe un subtipo de JobMatchingMode. |