Saltar a: navegación, buscar

API de registros VoIP


¿Qué es la API de registros VoIP?

Descripción de API

Este servicio web nos permite listar los registros VoIP de un número virtual, una extensión de centralita o un siptrunk.

Si no sabe lo que es una API lea ¿Qué son las APIs de Mi Oficina Web?

Forma de uso

Lista de registros

Devuelve la lista de registros VoIP (en XML).

La URL debe ser:

https://scgi.duocom.es/cgi-bin/oficinaweb/apiregistrosvoip?usuario_voip=xxxxxxxxx&password_voip=xxxxxxxx

donde:

  • 'usuario_voip' es el número de usuario VoIP (ejemplos: 902009000, 902009009.1234).
  • 'password_voip' es la contraseña del usuario VoIP , establecida en el momento de activarlo.

Respuesta del servicio API

El servicio web retorna todas las respuestas en formato XML. Todas las respuestas están encerradas en la raíz 'registros', y contiene siempre un campo 'error' que será 0 si el comando o petición enviado al servidor se ejecutó con éxito, o 1 si hubo algún error, en cuyo caso habrá también un campo 'msgerr' que explica dicho error.

Por ejemplo, una respuesta afirmativa sería:

 HTTP/1.1 200 OK
 Date: Mon, 20 Feb 2012 11:43:37 GMT
 Server: Apache
 Keep-Alive: timeout=15, max=100
 Connection: Keep-Alive
 Transfer-Encoding: chunked
 Content-Type: text/xml
 
 <?xml version="1.0" encoding="UTF-8" ?>
 
 <registros>
   <error>0</error>
 </registros>

Una respuesta de error sería:

 HTTP/1.1 200 OK
 Date: Mon, 20 Feb 2012 11:43:37 GMT
 Server: Apache
 Keep-Alive: timeout=15, max=100
 Connection: Keep-Alive
 Transfer-Encoding: chunked
 Content-Type: text/xml
 
 <?xml version="1.0" encoding="UTF-8" ?>
 
 <registros>
   <error>1</error>
   <msgerr>Usuario incorrecto.</msgerr>
 </registros>

Ejemplos de uso API

Ejemplo de llamada al servicio web en PHP + CURL

Tenga presente que, aunque la aplicación web es accesible mediante una URL, no debe poner nunca enlaces a esta aplicación directamente en el código fuente de sus páginas web, ya que sus visitantes podrían descubrir datos sensibles como su número de usuario y su contraseña simplemente mirando el código HTML.

La aplicación web debe ser llamada siempre desde el servidor, usando para ello alguna de las librerías que permite llamadas a servicios HTTPS.

He aquí un ejemplo en PHP usando cURL, cortesía de tuayudainformatica.com:

 <?php
   $usuario = '911010009';
   $pass = 'miClaveSecreta';
 
   $curl = curl_init("https://scgi.duocom.es/cgi-bin/{{DIR_CGI}}/apiregistrosvoip?
                      usuario_voip=${usuario}&password_voip=${pass}"); // LLAMADA DE LA URL
   curl_setopt($curl, CURLOPT_HEADER, false);  // PARA EVITAR DEVOLUCION DE CABEZERAS HTTP
   curl_setopt($curl, CURLOPT_TIMEOUT, 5);     // TIEMPO DE ESPERA   
   $output = curl_exec($curl);                 // EJECUTAMOS LA LLAMADA
   curl_close($curl);
   $output = substr($output, 0, 1);            // XML
 ?>

Ejemplo de listado de registros en XML

 <?xml version="1.0" encoding="UTF-8" ?>
 
 <registros>
  <error>0</error>
  <registro>
   <pos>1</pos>
   <estado>valido</estado>
   <nombre>"902955955.1234"</nombre>
   <user_agent>Cisco/SPA504G-7.5.5 mac=ddff596ea515</user_agent>
   <ip>83.126.132.62</ip>
   <pais>ES</pais>
   <ip_privada>172.26.0.101</ip_privada>
   <puerto_cliente>16044</puerto_cliente>
   <puerto_servidor>TCP</puerto_servidor>
   <expira>Lun 26/09/2016 15:49:25</expira>
  </registro>
  <registro>
   <pos>2</pos>
   <estado>valido</estado>
   <nombre>"902955955.1234"</nombre>
   <user_agent>Linksys/SPA942-6.1.5(a) mac=000aaaabbbaa</user_agent>
   <ip>185.55.126.82</ip>
   <pais>ES</pais>
   <ip_privada>192.168.1.101</ip_privada>
   <puerto_cliente>16400</puerto_cliente>
   <puerto_servidor>16080 (m2sip)</puerto_servidor>
   <expira>Lun 26/09/2016 15:15:26</expira>
  </registro>
  <registro>
   <pos>3</pos>
   <estado>expirado</estado>
   <nombre></nombre>
   <user_agent>Voip Duocom Europe SL. Android 2.0.1 mac=0123456789ab red=wifi Nexus 6 6.0.1</user_agent>
   <ip>83.126.132.62</ip>
   <pais>ES</pais>
   <ip_privada>192.168.1.122</ip_privada>
   <puerto_cliente>46336</puerto_cliente>
   <puerto_servidor>TLS</puerto_servidor>
   <expira>Jue 22/09/2016 21:17:32</expira>
  </registro>
  <registro>
   <pos>4</pos>
   <estado>expirado</estado>
   <nombre></nombre>
   <user_agent>Voip Duocom Europe SL. Windows32 2.0.0 mac=ba9876543210 red=eth Windows 7 (build 7601, Service</user_agent>
   <ip>83.126.132.62</ip>
   <pais>ES</pais>
   <ip_privada>10.0.2.15</ip_privada>
   <puerto_cliente>48046</puerto_cliente>
   <puerto_servidor>TLS</puerto_servidor>
   <expira>Jue 04/08/2016 13:41:36</expira>
  </registro>
  <registro>
  <pos>5</pos>
   <estado>expirado</estado>
   <nombre>"902955955.1234"</nombre>
   <user_agent>Cisco/SPA504G-7.5.5 mac=ddff596ea515</user_agent>
   <ip>82.33.222.153</ip>
   <pais>ES</pais>
   <ip_privada>172.26.0.101</ip_privada>
   <puerto_cliente>16046</puerto_cliente>
   <puerto_servidor>TCP</puerto_servidor>
   <expira>Mie 22/06/2016 16:08:11</expira>
  </registro>
 </registros>


Indice

Página principal >> Desarrolladores >> API de registros VoIP.