Estados de las Llamadas FormCall


API de estados para clientes de FormCall

Trasfondo

Para el uso de FormCall en aplicaciones que requieren, o se benefician, de feedback continuo sobre el estado de la llamada a los usuarios es necesario de un endpoint que pueda entregar el estado instantáneo de las llamadas en curso.

Este documento explica dicho endpoint, con sus parámetros y salidas esperables.

Uso del servicio

Invocación

El servicio se trata de un procedimiento remoto que se invoca a través de HTTP, por método GET.

Éste recibe como parámetro el UUID que identifica la llamada al ser pedida a través de la API de llamados de ClickFono. La interfaz sería la siguiente:

URLhttps://clickandtalk.medularis.com/calls/call_status
MétodoGET
Parámetrosuuid: string representando el UUID que identifica la llamada.

Un ejemplo de invocación, desde consola, es la siguiente:

curl https://clickandtalk.medularis.com/calls/call_status?uuid=cc97f690180049f8e0b7cb57bc4d856b
	

Respuesta

Estructura

La respuesta es en formato JSON, acompañada (o reemplazada) por estados HTTP apropiados para la operación. La estructura del mismo sigue la forma de:

{"general_status":<estado de la llamada>,
 "callcenter_status": <estado de llamada por lado del callcenter>,
 "customer_status": <estado de la llamada por lado del cliente>}
	

Dependiendo del caso, los campos de «callcenter_status» o «customer_status» pueden ser null, pero siempre estarán presentes. Su schema JSON sería el siguiente:

{   
	"$schema": "http://json-schema.org/draft-04/schema#",  
	"type": "object",  
	"properties": {    
		"general_status": {      
		"type": "string"    
	},    
	"callcenter_status": {     
		"type": ["string", "null"]    
	},    
	"customer_status": {      
		"type": ["string", "null"]    
	}  
},  
"required": [    
	"general_status",    
	"callcenter_status",    
	"customer_status"  
	]
}
	

Valores

Los posibles valores de retorno, y lo que representan, son los siguientes:

Status HTTP200
general_statuscallcenter_statuscustomer_statusDescripción
CALL_REQUESTEDnullnullLa llamada fue solicitada y se está procesando
ANSWEREDANSWEREDnullLa llamada fue tomada por el callcenter
ANSWEREDANSWEREDANSWEREDEl cliente ha tomado la llamada
SPAM_PROTECTIONnullBLOCKEDEl cliente ha solicitado demasiadas llamadas
CALL_TERMINATEDHANGUPHANGUPLlamada concluida
CALL_TERMINATEDUNANSWEREDnullCallcenter ocupado o rechazó la llamada
CALL_TERMINATEDHANGUPUNANSWEREDCliente ocupado o rechazó la llamada
CALL_TERMINATEDFAILUREFAILUREFalla en red de telefonía*
UNALLOCATED_NUMBERUNALLOCATED_NUMBERnullTeléfono de callcenter incorrecto
UNALLOCATED_NUMBERHANGUPUNALLOCATED_NUMBERTeléfono de cliente incorrecto

*Si bien Medularis monitorea el nivel de servicio de los proveedores telefónicos para dar asegurar la mejor tasa de conexión en el tiempo, llamadas individuales pueden fallar en alguna parte de la cadena de los operadores telefónicos.

Status HTTP: 404
La llamada identificada por el UUID no fue encontrada