Control de llamada (Call Control)
Los métodos aquí indicados irán siempre firmados con la cabecera "X-Api-Key" al igual que el resto de métodos.
Obtener las llamadas que hay en la centralita
GET /callcontrol/status
Se obtendrá el estado de la centralita, sólo aparecerán los datos de las extensiones que tengan llamadas, si una extensión no aparece, es que no tiene llamadas.
Ejemplo de respuesta para una centralita sin llamadas:
{
"domain": "testsip.com",
"extensionStatuses": {}
}
Ejemplo de respuesta para una centralita con llamadas internas
{
"domain": "testsip.com",
"extensionStatuses": {
"100": {
"username": "100",
"state": "BUSY",
"calls": [
{
"uuid": "01c73913-a3c6-4f5a-8d5d-5bf426e62563",
"created": 1550072782416,
"callerId": "100",
"destination": "104",
"direction": null,
"state": "ANSWERED"
}
]
},
"104": {
"username": "104",
"state": "BUSY",
"calls": [
{
"uuid": "8f2dffcd-8e3d-4d53-ad80-622fc0083492",
"created": 1550072782616,
"callerId": "100",
"destination": "104",
"direction": null,
"state": "ANSWERED"
}
]
}
}
}
Ejemplo de respuesta para una centralita con llamadas salientes
{
"domain": "testsip.com",
"extensionStatuses": {
"104": {
"username": "104",
"state": "BUSY",
"calls": [
{
"uuid": "2b7e9c6e-89d2-43fc-be82-8742faf8fb5d",
"created": 1550072975138,
"callerId": "104",
"destination": "900101010",
"direction": null,
"state": "ANSWERED"
}
]
}
}
}
Colgar una llamada
GET /callcontrol/hangup/{callId}
Con éste método puede colgar una llamada que tenga la centralita.
Ejemplo
- Petición
GET /callcontrol/hangup/2b7e9c6e-89d2-43fc-be82-8742faf8fb5d
Activar grabación
GET /callcontrol/recording/{callId}/start
Con éste método se inicia la grabación para el callId indicado.
Si se ejecuta dos veces en una misma llamada, se reinicia la grabación descartando lo anteriormente grabado.
Ejemplo
- Petición
GET /callcontrol/recording/2b7e9c6e-89d2-43fc-be82-8742faf8fb5d/start
Parar grabación
GET /callcontrol/recording/{callId}/stop
Con éste método se para la grabación para el callId indicado.
Ejemplo
- Petición
GET /callcontrol/recording/2b7e9c6e-89d2-43fc-be82-8742faf8fb5d/stop
Descolgar extensión que esta sonando
Para este método se utiliza el evento "TALK", si el softphone o terminal lo soporta, se descolgará la llamada.
Hay que tener en cuenta qeu el "callId" que hay que enviar en esta petición es el de la pata que queremos descolgar. Por ejemplo en una llamada entrante a una cola, sería el "bLegId".
GET /callcontrol/talk/{callId}
Con éste método puede colgar una llamada que tenga la centralita.
Ejemplo
- Petición
GET /callcontrol/talk/2b7e9c6e-89d2-43fc-be82-8742faf8fb5d