Saltar a: navegación, buscar

Diferencia entre revisiones de «API de registros VoIP»

 
(No se muestra una edición intermedia de otro usuario)
Línea 23: Línea 23:
 
La URL debe ser:
 
La URL debe ser:
  
https://scgi.duocom.es/cgi-bin/{{DIR_CGI}}/apiregistrosvoip?usuario_voip=xxxxxxxxx&password_voip=xxxxxxxx
+
https://scgi.duocom.es/cgi-bin/{{DIR_CGI}}/apiregistrosvoip?usuario_voip=xxxxxxxxx&password_voip=xxxxxxxx
  
 
donde:
 
donde:
Línea 35: Línea 35:
  
 
Por ejemplo, una respuesta afirmativa sería:
 
Por ejemplo, una respuesta afirmativa sería:
 
+
<pre>
 
  HTTP/1.1 200 OK
 
  HTTP/1.1 200 OK
 
  Date: Mon, 20 Feb 2012 11:43:37 GMT
 
  Date: Mon, 20 Feb 2012 11:43:37 GMT
Línea 49: Línea 49:
 
   <error>0</error>
 
   <error>0</error>
 
  </registros>
 
  </registros>
 
+
</pre>
 
Una respuesta de error sería:
 
Una respuesta de error sería:
 
+
<pre>
 
  HTTP/1.1 200 OK
 
  HTTP/1.1 200 OK
 
  Date: Mon, 20 Feb 2012 11:43:37 GMT
 
  Date: Mon, 20 Feb 2012 11:43:37 GMT
Línea 66: Línea 66:
 
   <msgerr>Usuario incorrecto.</msgerr>
 
   <msgerr>Usuario incorrecto.</msgerr>
 
  </registros>
 
  </registros>
 
+
</pre>
 
==Ejemplos de uso API==
 
==Ejemplos de uso API==
  
Línea 76: Línea 76:
  
 
He aquí un ejemplo en PHP usando cURL, cortesía de tuayudainformatica.com:
 
He aquí un ejemplo en PHP usando cURL, cortesía de tuayudainformatica.com:
 
+
<pre>
 
  <?php
 
  <?php
 
   $usuario = '911010009';
 
   $usuario = '911010009';
Línea 89: Línea 89:
 
   $output = substr($output, 0, 1);            // XML
 
   $output = substr($output, 0, 1);            // XML
 
  ?>
 
  ?>
 
+
</pre>
 
===Ejemplo de listado de registros en XML===
 
===Ejemplo de listado de registros en XML===
 
+
<pre>
 
  <?xml version="1.0" encoding="UTF-8" ?>
 
  <?xml version="1.0" encoding="UTF-8" ?>
 
   
 
   
Línea 157: Línea 157:
 
   </registro>
 
   </registro>
 
  </registros>
 
  </registros>
 
+
</pre>
 
----
 
----
  

Revisión actual del 12:35 2 jul 2021


¿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 Telefácil?

Forma de uso

Lista de registros

Devuelve la lista de registros VoIP (en XML).

La URL debe ser:

https://scgi.duocom.es/cgi-bin/telefacil2/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.