Problema de API control de llamadas Realizar llamadas v20

TALK TELECOM SOLUTIONS

Silver Partner
Registrado
3 Feb 2021
Mensajes
12
Hola, estamos verificando la integración mediante la API https://www.3cx.com/docs/call-control-api-endpoints/
Detectamos que al utilizar el método /makecall (https://www.3cx.com/docs/call-control-api-endpoints/#h.k8kldqyusu63) la documentación es incorrecta o la API no está funcionando como se espera:

Los campos attachedData1 (additionalProp1, etc.) especificados en la documentación no funcionan como se espera o están mal documentados.

Suponemos que la información incluida en attachedData se compartirá en eventos Websocket (objeto Attached_data) ¿no es así? Ese nodo siempre estaba vacío. ¿Será porque el método make call era incorrecto o porque ese método no se puede usar para ese propósito?

¿Es posible revisar esa parte de la API o cambiar la documentación para tener la forma correcta de implementar?

Muchas gracias de antemano
 
Hola,

No conozco el detalle de esta nueva API REST, pero la Call Control API (.NET) utiliza el mismo concepto, y algo importante a tener en cuenta es que cada llamada tiene 2 conexiones, una en cada sentido. Si agregas la información a la llamada en un sentido, esa información no será visible en el otro. Cada conexión tiene sus datos asociados.

Otra cosa a tener en cuenta es que solo es posible adjuntar datos que comiencen con el prefijo "public_". Es decir, si intentas agregar información con la key "dato1" no va a funcionar, deberías utilizar "public_dato1".

Por otro lado, si lo que quieres implementar es un marcador saliente, te recomiendo que mires a SIP Caller, una solución basada en la nube que se integra perfectamente con 3CX y puedes tener funcionando en minutos.

Saludos.
 
Buenas tardes,
Me encuentro con el mismo problema que comenta el compañero de Talk Telekom Solutions.
Muchas gracias Eduardo por la aclaración de que solo se puede enviar datos usando el prefijo public_

No obstante yo creo que la documentación esta incorrecta, ya que parece que en el makecall directamente puedes mandar
attacheddata pero no hace caso. Por lo que la documentación esta incorrecta.

Referente a esto también, haciendo el flujo
1. MakeCall
2. callcontrol/200/participants/833/attach_participant_data, hago un POST con el siguiente BODY
{
"attacheddata": {
"public_dato1": "prueba"
}
}
3. Tengo el WS abierto, recibo el evento como que algo ocurre con ese participante pero el evento contiene la siguiente info con el attached data null
Received message: {
"sequence": 492,
"event": {
"event_type": 0,
"entity": "/callcontrol/200/participants/833",
"attached_data": null
}
}

Me resulta curioso, que en un lado se llama attacheddata y luego el evento attached_data.
Hay que llamar a algun metodo en concreto para obtener esta información extra? o deberia venir al hacer el GET a /callcontrol/200/participants/833 ??

Claramente se me esta escapando algo, pero no se si es un problema de documentación o de implementación por mi parte

Gracias y saludos
Gon
 

Estadísticas del Foro

Temas
44.439
Mensajes
232.807
Miembros
78.338
Último miembro
neil.marsura