Actualizar dispositivo de usuario #
Este punto de conexión permite que los dispositivos existentes se asignen (o eliminen) como dispositivos softphone para un usuario para ~.UcClient.~ Escritorio, móvil y WebRTC.
Asignar un dispositivo
PUT /v1.0/customers/{CUSTOMER_TENANT_ID}/users/{USER_ID}/devices/pbx/{DEVICE_ID}/assign
Anular la asignación de un dispositivo
PUT /v1.0/customers/{CUSTOMER_TENANT_ID}/users/{USER_ID}/devices/pbx/{DEVICE_ID}/unassign
El Cuerpo de la solicitud debe contener un solo JSON para indicar a qué tipo de cliente se asigna el dispositivo:
{
"clientType": "escritorio"
}
Valores válidos de clientType:
- escritorio
- móvil
- WebRTC
- CRM (en inglés)
El {DEVICE_ID} proporcionado debe ser el id del dispositivo en la plataforma de comunicaciones, por ejemplo, ~.pbx.kazoo.name.~.
note
El dispositivo que se asigna como softphone ya debe estar asignado al usuario en la plataforma de comunicaciones.
tip
Si el identificador de dispositivo proporcionado ya está asignado a otro tipo de cliente, asignarlo de nuevo tendría el efecto de moverlo de un cliente a otro.
Observaciones #
Al asignar un dispositivo softphone a un usuario, asegúrese de que primero se le hayan asignado al usuario los roles correctos. Los dos requisitos siguientes son requisitos previos para asignar un dispositivo softphone:
- customer_user_uc
- customer_user_uc_softphone
Ejemplo de asignación #
Pedir #
POST <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/users/{USER_ID}/devices/pbx/{DEVICE_ID}/assign> HTTP/1.1
Tipo de contenido: application/json
accept-charges: true
Autorización: portador {TOKEN}
Conexión: keep-alive
{
"clientType": "escritorio"
}
Respuesta #
HTTP/1.1 201 Creado
Tipo de contenido: application/json; charset=utf-8
Longitud del contenido: xx
Ubicación: <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/users/{USER_ID}/devices/pbx/{DEVICE_ID}/assign>
{
"status": "éxito",
"timestamp": "2019-11-29T16:03:23.9251680Z"
}
Ejemplo de anulación de asignación #
Pedir #
POST <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/users/{USER_ID}/devices/pbx/{DEVICE_ID}/unassign> HTTP/1.1
Tipo de contenido: application/json
accept-charges: true
Autorización: portador {TOKEN}
Conexión: keep-alive
Respuesta #
HTTP/1.1 201 Creado
Tipo de contenido: application/json; charset=utf-8
Longitud del contenido: xx
Ubicación: <https://api.na.myreports.cloud/api/v1.0/customers/{CUSTOMER_TENANT_ID}/users/{USER_ID}/devices/pbx/{DEVICE_ID}/unassign>
{
"status": "éxito",
"timestamp": "2019-11-29T16:03:23.9251680Z"
}
Errores #
Desautorizado #
Cuando el token no se proporciona, no es válido o ha caducado
HTTP/1.1 401 No autorizado
Mala solicitud #
Cuando el identificador de inquilino proporcionado no está en el formato correcto
HTTP/1.1 400 Solicitud incorrecta
Fecha: Thu, 06 Feb 2020 12:45:27 GMT
Tipo de contenido: application/json; charset=utf-8
Longitud del contenido: 149
{
"error": 400,
"message": "El valor '<tenant id>' no es válido.",
"status": "error",
"timestamp": "2020-02-06T12:45:27.5903465Z"
}
No encontrado #
Cuando no hay clientes que tengan un identificador de inquilino coincidente
HTTP/1.1 404 No encontrado
Fecha: Thu, 06 Feb 2020 12:46:58 GMT
Tipo de contenido: application/json; charset=utf-8
Contenido-Longitud: 95
{
"error": 404,
"message": "No encontrado",
"status": "error",
"marca de tiempo": "2020-02-06T12:46:58.7669535Z"
}
Cuando el dispositivo al que se hace referencia no esté ya asignado al usuario en la plataforma de comunicaciones.
HTTP/1.1 404 No encontrado
Fecha: Thu, 06 Feb 2020 12:46:58 GMT
Tipo de contenido: application/json; charset=utf-8
Contenido-Longitud: 95
{
"error": 404,
"message": "Dispositivo no encontrado",
"status": "error",
"marca de tiempo": "2020-02-06T12:46:58.7669535Z"
}
Pago requerido #
Si esta solicitud puede incurrir en cargos adicionales, consulte Cargos.
HTTP/1.1 402 Pago requerido
Fecha: Thu, 06 Feb 2020 13:01:00 GMT
Tipo de contenido: application/json; charset=utf-8
Longitud del contenido: 274
{
"datos": {
"clientType": "escritorio"
},
"error": 402,
"message": "se aplican cargos adicionales",
"status": "error",
"marca de tiempo": "2020-02-06T13:01:01.1302340Z"
}