Compartir a través de


Job Router Operations - List Workers

Recupera los trabajos existentes.

GET {endpoint}/routing/workers?api-version=2023-11-01
GET {endpoint}/routing/workers?api-version=2023-11-01&maxpagesize={maxpagesize}&state={state}&channelId={channelId}&queueId={queueId}&hasCapacity={hasCapacity}

Parámetros de identificador URI

Nombre En Requerido Tipo Description
endpoint
path True

string

Uri del recurso de comunicación

api-version
query True

string

minLength: 1

Versión de la API que se va a usar para esta operación.

channelId
query

string

Si se especifica, seleccione trabajos que tengan una configuración de canal con este canal.

hasCapacity
query

boolean

Si se establece en true, seleccione solo los trabajos que tengan capacidad para el canal especificado por channelId o para cualquier canal si no se especifica channelId. Si se establece en false, devolverá todos los trabajos, incluidos los trabajos sin ninguna capacidad para los trabajos. El valor predeterminado es false.

maxpagesize
query

integer (int32)

Número de objetos que se van a devolver por página.

queueId
query

string

Si se especifica, seleccione los trabajos asignados a esta cola.

state
query

RouterWorkerStateSelector

Si se especifica, seleccione trabajos por estado de trabajo.

Respuestas

Nombre Tipo Description
200 OK

PagedRouterWorker

La solicitud se ha realizado correctamente.

Other Status Codes

Azure.Core.Foundations.ErrorResponse

Una respuesta de error inesperada.

Encabezados

x-ms-error-code: string

Seguridad

AadOauth2Auth

Flujo de OAuth2 de Azure Active Directory

Tipo: oauth2
Flujo: accessCode
Dirección URL de autorización: https://login.microsoftonline.com/common/oauth2/authorize
Dirección URL del token: https://login.microsoftonline.com/common/oauth2/token

Ámbitos

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

Ejemplos

Retrieves available worker filtered by channel
Retrieves list of workers

Retrieves available worker filtered by channel

Solicitud de ejemplo

GET https://contoso.westus.communications.azure.com/routing/workers?api-version=2023-11-01&state=active&channelId=CustomChatChannel&hasCapacity=True

Respuesta de muestra

{
  "value": [
    {
      "id": "DefaultWorker",
      "state": "active",
      "queues": [
        "MainQueue",
        "SecondaryQueue"
      ],
      "capacity": 100,
      "labels": {},
      "tags": {},
      "channels": [
        {
          "channelId": "CustomChatChannel",
          "capacityCostPerJob": 10,
          "maxNumberOfJobs": 4
        },
        {
          "channelId": "CustomVoiceChannel",
          "capacityCostPerJob": 100,
          "maxNumberOfJobs": 1
        }
      ],
      "offers": [],
      "assignedJobs": [],
      "loadRatio": 0,
      "availableForOffers": true,
      "etag": "etag"
    },
    {
      "id": "SecondWorker",
      "state": "active",
      "queues": [
        "MainQueue",
        "SecondaryQueue"
      ],
      "capacity": 100,
      "labels": {},
      "tags": {},
      "channels": [
        {
          "channelId": "CustomChatChannel",
          "capacityCostPerJob": 10,
          "maxNumberOfJobs": 4
        },
        {
          "channelId": "CustomVoiceChannel",
          "capacityCostPerJob": 100,
          "maxNumberOfJobs": 1
        }
      ],
      "offers": [],
      "assignedJobs": [],
      "loadRatio": 0,
      "availableForOffers": true,
      "etag": "etag"
    }
  ],
  "nextLink": null
}

Retrieves list of workers

Solicitud de ejemplo

GET https://contoso.westus.communications.azure.com/routing/workers?api-version=2023-11-01&maxpagesize=2

Respuesta de muestra

{
  "value": [
    {
      "id": "DefaultWorker",
      "state": "active",
      "queues": [
        "MainQueue",
        "SecondaryQueue"
      ],
      "capacity": 100,
      "labels": {},
      "tags": {},
      "channels": [
        {
          "channelId": "CustomChatChannel",
          "capacityCostPerJob": 10,
          "maxNumberOfJobs": 4
        },
        {
          "channelId": "CustomVoiceChannel",
          "capacityCostPerJob": 100,
          "maxNumberOfJobs": 1
        }
      ],
      "offers": [],
      "assignedJobs": [],
      "loadRatio": 0,
      "availableForOffers": true,
      "etag": "etag"
    },
    {
      "id": "SecondWorker",
      "state": "active",
      "queues": [
        "MainQueue",
        "SecondaryQueue"
      ],
      "capacity": 100,
      "labels": {},
      "tags": {},
      "channels": [
        {
          "channelId": "CustomEmailChannel",
          "capacityCostPerJob": 10,
          "maxNumberOfJobs": 4
        },
        {
          "channelId": "CustomSMSChannel",
          "capacityCostPerJob": 100,
          "maxNumberOfJobs": 1
        }
      ],
      "offers": [],
      "assignedJobs": [],
      "loadRatio": 0,
      "availableForOffers": true,
      "etag": "etag"
    }
  ],
  "nextLink": null
}

Definiciones

Nombre Description
Azure.Core.Foundations.Error

Objeto de error.

Azure.Core.Foundations.ErrorResponse

Respuesta que contiene los detalles del 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/azure/Guidelines.md#handling-errors.

PagedRouterWorker

Colección paginada de elementos RouterWorker

RouterChannel

Representa la capacidad que un trabajo de este canal consumirá de un trabajo.

RouterJobOffer

Oferta de un trabajo a un trabajador.

RouterWorker

Una entidad a la que se enrutarán los trabajos.

RouterWorkerAssignment

Asignación de un trabajo a un trabajo.

RouterWorkerState

Enumeraciones para estados de trabajo.

RouterWorkerStateSelector

Si se especifica, seleccione trabajos por estado de trabajo.

Azure.Core.Foundations.Error

Objeto de error.

Nombre Tipo Description
code

string

Uno de un conjunto definido por el servidor de códigos de error.

details

Azure.Core.Foundations.Error[]

Matriz de detalles sobre errores específicos que llevaron a este error notificado.

innererror

Azure.Core.Foundations.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

Respuesta que contiene los detalles del error.

Nombre Tipo Description
error

Azure.Core.Foundations.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/azure/Guidelines.md#handling-errors.

Nombre Tipo Description
code

string

Uno de un conjunto definido por el servidor de códigos de error.

innererror

Azure.Core.Foundations.InnerError

Error interno.

PagedRouterWorker

Colección paginada de elementos RouterWorker

Nombre Tipo Description
nextLink

string (uri)

Vínculo a la página siguiente de elementos

value

RouterWorker[]

Elementos RouterWorker de esta página

RouterChannel

Representa la capacidad que un trabajo de este canal consumirá de un trabajo.

Nombre Tipo Description
capacityCostPerJob

integer (int32)

Cantidad de capacidad que consumirá una instancia de un trabajo de este canal de la capacidad total de trabajo.

channelId

string

Identificador de un canal.

maxNumberOfJobs

integer (int32)

Número máximo de trabajos que se pueden admitir simultáneamente para este canal. El valor debe ser mayor que cero.

RouterJobOffer

Oferta de un trabajo a un trabajador.

Nombre Tipo Description
capacityCost

integer (int32)

Costo de capacidad consumido por la oferta de trabajo.

expiresAt

string (date-time)

Marca de tiempo cuando la oferta expirará en UTC.

jobId

string

Identificador del trabajo.

offerId

string

Identificador de una oferta.

offeredAt

string (date-time)

Marca de tiempo cuando la oferta se creó en UTC.

RouterWorker

Una entidad a la que se enrutarán los trabajos.

Nombre Tipo Description
assignedJobs

RouterWorkerAssignment[]

Lista de trabajos asignados adjuntos a este trabajo.

availableForOffers

boolean

Marca que indica que este trabajo está abierto para recibir ofertas o no.

capacity

integer (int32)

La puntuación de capacidad total de este trabajador tiene que administrar varios trabajos simultáneos.

channels

RouterChannel[]

Recopilación de canales que este trabajador puede controlar y su impacto en la capacidad de los trabajadores.

etag

string

Etiqueta de entidad para este recurso.

id

string

Identificador de un trabajador.

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, booleano.

loadRatio

number (double)

Valor que indica la capacidad de los trabajos. Un valor de '1' significa que se consume toda la capacidad. Un valor de '0' significa que no se consume actualmente ninguna capacidad.

offers

RouterJobOffer[]

Lista de ofertas activas emitidas a este trabajo.

queues

string[]

Colección de colas de las que este trabajador puede recibir trabajo.

state

RouterWorkerState

Estado actual de un trabajo.

tags

Conjunto de atributos no identificativos asociados a este trabajo. Los valores deben ser valores primitivos: número, cadena, booleano.

RouterWorkerAssignment

Asignación de un trabajo a un trabajo.

Nombre Tipo Description
assignedAt

string (date-time)

Hora de asignación del trabajo en UTC.

assignmentId

string

Identificador de la asignación.

capacityCost

integer (int32)

Cantidad de capacidad que esta asignación ha consumido en el trabajo.

jobId

string

Identificador del trabajo asignado.

RouterWorkerState

Enumeraciones para estados de trabajo.

Valor Description
active

El trabajador está activo y está disponible para tomar ofertas.

draining

El trabajo no está activo, si hay ofertas existentes que se van a revocar. No se envían nuevas ofertas.

inactive

El trabajo no está activo. No se envían nuevas ofertas.

RouterWorkerStateSelector

Si se especifica, seleccione trabajos por estado de trabajo.

Valor Description
active

El trabajador está activo y está disponible para tomar ofertas.

all

El trabajo está activo o purgado o inactivo.

draining

El trabajo no está activo, si hay ofertas existentes que se van a revocar. No se envían nuevas ofertas.

inactive

El trabajo no está activo. No se envían nuevas ofertas.