Códigos de error de grabación de llamadas (mpbx-recording)
Los genera las rutas de grabación (/api/v1/recordings, /api/v1/me/recordings,
/api/v1/recording-files, /api/v1/calls/{id}/recording, /api/v1/recording-consent) y el
controlador de grabación (W3-REC-01, W6-TEL-06). Los mensajes nunca contienen números de teléfono,
claves de objeto, URL firmadas ni tokens. Guía: Grabación de llamadas.
Los códigos propios de mpbx-media (MPBX-MEDIA-*, por ejemplo MPBX-MEDIA-CRYPTO) están en
media.md y pueden aparecer como el error_code de una grabación.
| Código | Tipo | Significado | Qué hacer |
|---|---|---|---|
MPBX-REC-NOT-FOUND | not_found | No existe esa grabación en esta empresa. La grabación de otra empresa es invisible, así que su id también devuelve 404. | Verifique el id. |
MPBX-REC-ACCESS-DENIED | permission_denied | El solicitante no puede ver ni cambiar esta grabación: no tiene participación en los departamentos que cubren recordings:read (o recordings:delete) del solicitante, o "los usuarios ven sus propias grabaciones" está desactivado para la empresa (/me/recordings). | Pida a un administrador el permiso en el departamento correcto, o que active users_access_own. |
MPBX-REC-NOT-STORED | conflict | La grabación todavía está en curso, pausada o fallida, así que aún no hay archivo para descargar. | Espere hasta que status sea stored. Una grabación fallida no tiene archivo; su error_code indica la causa. |
MPBX-REC-URL-INVALID | permission_denied | Un enlace de descarga está mal formado, falsificado, es de otra empresa o venció. Un solo código para todos los casos, para que nadie pueda sondear los enlaces. | Solicite un enlace nuevo (POST .../download-url); los enlaces duran 5 minutos por omisión, como máximo una hora. |
MPBX-REC-INVALID | invalid_argument | Un ajuste, una política o un anuncio de consentimiento está fuera de rango (retención de 1 a 3650 días, modo off/all/external, un aviso de consentimiento que no es beep ni un aviso de la biblioteca de la empresa de máximo 7 s, una tecla de exclusión distinta de 0-9, *, #, un DID que no es E.164, una acción bajo demanda distinta de start/stop/pause/resume), o el destino (extensión, cola, troncal, DID) no existe en la empresa. | Corrija el valor indicado. |
MPBX-REC-LEGAL-HOLD | conflict | La grabación está bajo retención legal: ni un administrador ni la retención la eliminan. | Libere primero la retención (PUT /recordings/{id}/legal-hold con {"legal_hold": false}, recordings:delete). |
MPBX-REC-START-FAILED | n/a (error_code de la grabación) | Una política pidió grabar la llamada, pero la bifurcación de rtpengine o mpbx-media la rechazó (la llamada sigue). Se guarda como error_code de la grabación, con un registro de auditoría. | Revise los registros de rtpengine y mpbx-media de la llamada; los códigos de medios están en media.md. |
MPBX-REC-CONSENT-FAILED | unavailable (error_code de la grabación) | La llamada tiene un anuncio de consentimiento (su DID, cola o troncal, o la política de grabación), pero no se pudo reproducir: no hay reproductor de audio en rtpengine, el aviso se eliminó, dura más de 7 s o no se puede reproducir. La llamada no se graba (se cierra por seguridad: nunca sin el anuncio que pidió la empresa); la llamada sigue. | Revise el soporte de play media en rtpengine (la compilación con transcodificación) y el aviso; elija beep para descartar el aviso como causa. |
MPBX-REC-CALL-NOT-FOUND | not_found | Control bajo demanda: no hay una llamada contestada con este id en la empresa (terminó, nunca se contestó o es de otra empresa). | Busque el id de la llamada con POST /calls/lookup mientras esté activa. |
MPBX-REC-NOT-RECORDING | conflict | Control bajo demanda: pausar, reanudar o detener una llamada que no se está grabando. | Primero inicie la grabación con start. |
MPBX-REC-POLICY-REQUIRED | conflict | Una de las partes de la llamada intentó detener una grabación que una política de grabación exige. Se puede pausar (PCI) y reanudar, pero no detener. | Páusela, o pida a alguien con calls:control del departamento de la llamada que lo haga. |
MPBX-REC-DECLINED | conflict | La persona que llama presionó la tecla de exclusión durante el anuncio de consentimiento: la llamada no se graba, ni siquiera bajo demanda. | Nada; la decisión de quien llama se mantiene para la llamada. |
MPBX-REC-CONTROL-UNAVAILABLE | unavailable | Este servidor no ejecuta el grabador de llamadas (no tiene lado SIP ni mpbx-media), así que no puede iniciar, detener ni pausar la grabación de una llamada en vivo. | Envíe la solicitud a un nodo que ejecute el motor de llamadas con mpbx-media. |