Fabricantes de Terminales

Descripción general

IvozProvider soporta la provisión de terminales vía HTTP/HTTPS que cumplen con los siguientes requisitos:

  • Asumiendo un terminal recién desempaquetado, recién conectado y conectado a la red:

    • Solicitar dirección IP vía DHCP.

    • DHCP ha habilitado la opción 66 que apunta al portal de la plataforma

    • El primer archivo de provisión solicitado es un archivo estático (diferente para cada modelo) con el prefijo de la URL del paso anterior.

    • El archivo servido puede redefinir la URL para solicitudes adicionales

Cualquier modelo de terminal que pueda adaptarse a esta forma de provisión puede añadirse en la sección Configuración de la Plataforma > Fabricantes de Terminales.

Ejemplo Cisco SPA504G

  • Cisco SPA504G se enciende y solicita una dirección IP a DHCP

  • Recibe “http://provision.example.com/provision” como opción 66 de DHCP

  • Solicitar configuración HTTP desde http://provision.example.com/provision/spa504g.cfg

  • Todos los 504G solicitan el mismo archivo (spa504.cfg), con el prefijo de la URL dada

  • Este archivo solo contiene configuraciones básicas para el modelo y la URL para la siguiente solicitud (p.e. https://provision.example.com/provision/$MAC.cfg)

  • De esta manera, cada terminal (MAC debe ser único) solicita un archivo específico (y diferente) después de que se haya servido el genérico.

  • Este archivo contendrá la configuración específica para el terminal:

    • Usuario

    • Contraseña

    • Dominio SIP

Nota

El sistema de provisión de IvozProvider, en este momento, solo tiene un objetivo: proporcionar credenciales y configuraciones de idioma para los terminales.

Configuración de modelos soportados

IvozProvider utiliza un sistema de plantillas que permite al operador global (God) definir nuevos modelos y configurar qué archivos se servirán.

La sección de ayuda de Fabricantes de Terminales tiene ejemplos para algunos modelos que funcionan (en el momento de escribir esto) con el sistema de provisión de IvozProvider.

Consejo

Estos modelos estarán disponibles después de la instalación inicial, pero debe editarlos y cargar la configuración predeterminada antes de poder usar el sistema de provisión (opción Restaurar plantilla por defecto).

Error

Los cambios en el firmware de los UAC pueden hacer que los ejemplos dados dejen de funcionar. Intentaremos mantener las plantillas actualizadas, pero no podemos garantizar este punto.

Analizando las plantillas sugeridas puede tener una idea básica de la flexibilidad del sistema para configurar cualquier modelo de terminal existente en el mercado y adaptarlos a cambios eventuales en los ejemplos dados.

Aspectos técnicos

Imagine un entorno con esta configuración:

¿Qué URLs solicitadas serán válidas?

Para el archivo genérico, solo una: http://PROV_IP/provision/y000000000044.cfg

Para el archivo específico, las solicitudes son correctas siempre que se cumplan estas reglas:

  • Todas las solicitudes HTTP son incorrectas.

  • Las solicitudes HTTPS al 443 son incorrectas (se debe usar PROV_PORT).

  • Los subrutas después de la URL de provisión se ignoran, tanto en la solicitud como en specificUrlPattern.

  • En la solicitud de archivo específico, la extensión debe coincidir siempre que se use la extensión en specificUrlPattern.

  • En la solicitud de archivo específico, el nombre del archivo debe coincidir exactamente una vez que se reemplace {mac}.

  • La dirección MAC no distingue entre mayúsculas y minúsculas y puede contener dos puntos o no (‘:’).

Analicemos los ejemplos a continuación para entender mejor estas reglas:

Ejemplo 1 - TerminalModels.specificUrlPattern: {mac}.cfg

Solicitudes correctas:

https://PROV_IP:PROV_PORT/provision/aabbccddeeff.cfg
https://PROV_IP:PROV_PORT/provision/aa:bb:cc:dd:ee:ff.cfg
https://PROV_IP:PROV_PORT/provision/aabbccdd:ee:ff.cfg
https://PROV_IP:PROV_PORT/provision/aabbccddeeff.cfg
https://PROV_IP:PROV_PORT/provision/AABBCCDDEEFF.cfg
https://PROV_IP:PROV_PORT/provision/subpath1/aabbccddeeff.cfg
https://PROV_IP:PROV_PORT/provision/subpath1/subpath2/aabbccddeeff.cfg

Solicitudes incorrectas:

https://PROV_IP:PROV_PORT/provision/aabbccddeeff.boot
https://PROV_IP:PROV_PORT/provision/subpath1/subpath2/aabbccddeeff.boot

Este ejemplo es idéntico a ‘t23/{mac}.cfg’, ya que se ignoran las subrutas.

Ejemplo 2 - TerminalModels.specificUrlPattern: {mac}

Todos los ejemplos anteriores son correctos, ya que se ignora la extensión si no se encuentra ninguna extensión en specificUrlPattern.

Este ejemplo es idéntico a ‘t23/{mac}’, ya que se ignoran las subrutas.

Ejemplo 3 - TerminalModels.specificUrlPattern: yea-{mac}.cfg

Todos los ejemplos anteriores son incorrectos, ya que no se encuentra ‘yea-‘ (la coincidencia de ‘yea’ distingue entre mayúsculas y minúsculas).

Solicitudes correctas:

https://PROV_IP:PROV_PORT/provision/subpath1/yea-aabbccdd:ee:ff.cfg

Solicitudes incorrectas:

https://PROV_IP:PROV_PORT/provision/subpath1/yea-aabbccdd:ee:ff.boot
https://PROV_IP:PROV_PORT/provision/subpath1/YEA-aabbccdd:ee:ff.cfg

Este ejemplo es idéntico a ‘t23/yea-{mac}.cfg’, ya que se ignoran las subrutas.

Ejemplo 4 - TerminalModels.specificUrlPattern: yea-{mac}

Como no se da ninguna extensión:

https://PROV_IP:PROV_PORT/provision/subpath1/yea-aabbccdd:ee:ff.cfg
https://PROV_IP:PROV_PORT/provision/subpath1/yea-aabbccdd:ee:ff.boot

Solicitudes incorrectas:

https://PROV_IP:PROV_PORT/provision/subpath1/YEA-aabbccdd:ee:ff.cfg

Este ejemplo es idéntico a ‘t23/yea-{mac}’, ya que se ignoran las subrutas.