API de máscaras
Sumario
¿Qué es API de máscara?
Descripción API de máscara
Este servicio web nos permite listar las máscaras que se pueden poner en un VOIP o un teléfono activado de una cuenta Mi Oficina Web; y cambiar dicha máscara.
Si no sabe lo que es una API lea ¿Qué son las APIs de Mi Oficina Web?
Forma de uso
Lista de máscaras
Devuelve la lista de máscaras (en XML).
La URL para las máscaras de un número Voip (Números Virtuales, Siptrunks, o Centralita.ext) debe ser:
https://scgi.duocom.es/cgi-bin/oficinaweb/apimascaras?usuario_voip=xxxxxxxxx&password_voip=xxxx
donde:
- 'usuario_voip' es su número de usuario de VOIP Mi Oficina Web (Número Virtual o Centralita.ext).
- 'password_voip' es la contraseña del VOIP.
La URL para las máscaras de un teléfono activado debe ser:
https://scgi.duocom.es/cgi-bin/oficinaweb/apimascaras?principal=xxxxxxxxx&pass=xxxxxxxx&ani=xxxxxxxxx
donde:
- 'principal' es su número de usuario de la cuenta Mi Oficina Web (o teléfono principal).
- 'pass' es la contraseña de la cuenta Mi Oficina Web.
- 'ani' es el teléfono activado para el que se quieren leer las máscaras.
Establecer una nueva máscara
La URL para números Voip (Números Virtuales, Siptrunks, o Centralita.ext) debe ser:
https://scgi.duocom.es/cgi-bin/oficinaweb/apimascaras?usuario_voip=xxxxxxxxx&password_voip=xxxx&accion=poner&mascara=xxxxxxxxx
donde:
- 'usuario_voip' es su número de usuario de Voip Mi Oficina Web (Número Virtual o Centralita.ext).
- 'password_voip' es la contraseña del Voip.
- 'accion' debe ser 'poner'.
- 'mascara' debe ser el número que queramos establecer como máscara (obviamente, debe pertenecer al conjunto de máscaras válidas, que son las que retorna el listado del punto anterior).
La URL para teléfonos activados debe ser:
https://scgi.duocom.es/cgi-bin/oficinaweb/apimascaras?principal=xxxxxxxxx&pass=xxxxxxxx&ani=xxxxxxxxx&accion=poner&mascara=xxxxxxxxx
donde:
- 'principal' es su número de usuario de la cuenta Mi Oficina Web (o teléfono principal).
- 'pass' es la contraseña de la cuenta Mi Oficina Web.
- 'ani' es el teléfono activado para el que se quiere establecer la nueva máscara.
- 'accion' debe ser 'poner'.
- 'mascara' debe ser el número que queramos establecer como máscara (obviamente, debe pertenecer al conjunto de máscaras válidas, que son las que retorna el listado del punto anterior).
Respuesta del servicio
El servicio web retorna todas las respuestas en formato XML. Todas las respuestas están encerradas en la raíz 'mascaras', 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.
En el campo "actual" siempre se devuelve la máscara en curso.
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" ?> <mascaras> <error>0</error> </mascaras>
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" ?> <mascaras> <error>1</error> <msgerr>Cuenta incorrecta.</msgerr> </mascaras>
Ejemplos API de máscara
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 = '902009955.345'; $pass = 'MiPass123'; $curl = curl_init("https://scgi.duocom.es/cgi-bin/{{DIR_CGI}}/apimascaras? 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 contactos en XML
<?xml version="1.0" encoding="UTF-8" ?>
<mascaras> <error>0</error> <usuario>912345678</usuario> <actual>902009955</actual> <mascara> <telefono>902955023</telefono> <tipo>Numero virtual</tipo> <etiqueta>Mi numero preferido</etiqueta> </mascara> <mascara> <telefono>911010000</telefono> <tipo>Centralita</tipo> <etiqueta>Mi centralita</etiqueta> </mascara> <mascara> <telefono>902009955</telefono> <tipo>Especial</tipo> <etiqueta></etiqueta> </mascara> </mascaras>
Indice
Página principal >> Desarrolladores >> API de máscaras.