Además de cumplir con las normas técnicas, consulta nuestra documentación sobre la preparación de tu envío para conocer sugerencias de preparación para la revisión técnica.
Si bien cada vez hay más smartphones disponibles en todo el mundo, en los mercados emergentes, la mayoría de las personas siguen usando teléfonos básicos. Para garantizar que todos puedan acceder a Free Basics, nos concentramos en el apoyo a sitios web para celulares simples.
Para que tu sitio web para celulares se muestre correctamente dentro de la plataforma de Free Basics y que personas con todo tipo de teléfonos y planes de datos puedan acceder a él, debe cumplir ciertas condiciones técnicas creadas por el proxy de Free Basic. Específicamente, los sitios web para celulares deben trabajar en la ausencia de lo siguiente:
Si se detecta que los sitios web contienen alguno de los elementos anteriores después de la implementación, los bloquearemos hasta que podamos confirmar que se eliminó el contenido.
Para ofrecer una experiencia que funcione en diferentes dispositivos, tu servicio debería permanecer funcional y útil después de la desactivación de JavaScript. Esto significa que el contenido no debería depender de JavaScript en ninguna de las experiencias del usuario principales, en particular, en la navegación u otra función principal.
Puede ocurrir alguna supresión de iframes, así que asegúrate de que tu contenido no dependa de ellos. Recomendamos evitar los iframes por completo, ya que tienden a desmejorar la experiencia en celulares.
Para respetar el bajo consumo de datos de las personas que usan Free Basics, evita usar recursos que consumen muchos datos, como video e imágenes de alta definición. Para proporcionar la mejor experiencia posible, es posible que tengamos que modificar (y en algunos casos no mostrar) algunos de los videos e imágenes.
Free Basics no es compatible con recursos Flash ni applets de Java. Si tu servicio usa estas tecnologías, asegúrate de implementar alternativas adecuadas para que se oculten correctamente y no se interrumpa la funcionalidad del sitio.
Ciframos la información de Free Basics siempre que es posible. Cuando las personas usan la app de Free Basics para Android, el tráfico se cifra de extremo a extremo, a menos que especifiques que tu servicio debe ser solo HTTP. Respecto del sitio web de Free Basics en un navegador del celular, usamos un modelo de "certificado dual" para cifrar el tráfico entre el dispositivo de una persona y nuestros servidores en ambas direcciones. Si tu servidor es compatible con HTTPS, también ciframos el tráfico entre nuestros servidores y el tuyo. Incluso si tu servicio todavía no es compatible con HTTPS, encriptaremos esa información entre nuestros servidores y los dispositivos de las personas siempre que sea posible, a menos que nos solicites que no usemos el certificado dual de HTTPS. Cuando las personas usan el sitio web de Free Basics para celulares, la información se descifra temporalmente en nuestros servidores seguros para garantizar la correcta funcionalidad de los servicios y evitar cobros inesperados a las personas.
Preservamos la privacidad de esa información mientras se cifra. Para ello, solo se almacena el nombre del dominio de tu servicio y la cantidad de datos que se utilizan (la misma información que estaría visible si se usara el cifrado de extremo a extremo), además de las cookies, que se almacenan en un formato cifrado e ilegible.
Desde Free Basics, todo el tráfico se enruta a través del proxy Internet.org. Hacemos esto para crear un proceso de tráfico estándar de manera que los operadores puedan identificar correctamente tu servicio y no aplicar cargos por él. Es importante que comprendas que Internet.org no aloja tu servicio ni lo almacena en caché (opera desde tus propios servidores y tú lo controlas completamente). Al detectar las solicitudes que pasan a través de la plataforma de Free Basics, puedes aplicar controles como el bloqueo geográfico del contenido o la medición del tráfico de la plataforma.

Ten en cuenta que, debido al cifrado SSL, la app para Android de Free Basics no es compatible con los campos del encabezado HTTP x-iorg-fbs-uip y x-iorg-fbs.
Como las solicitudes pasan por el proxy de Internet.org, la dirección IP de solicitud HTTP siempre procederá de nuestros servidores, en lugar de provenir del solicitante original. Puedes obtener el IP del solicitante original en el campo de encabezado HTTP X-IORG-FBS-UIP (que es creado por nuestro proxy).
Nuestro proxy también sigue la convención X-Forwarded-For, por lo que se encontrará la misma dirección IP en ese campo también (como una primera dirección IP no privada).
Todas las solicitudes que pasan por el proxy Internet.org contienen el campo X-IORG-FBS (siempre configurado en true). Resulta suficiente solo controlar su existencia dentro del encabezado.
Además, la cadena Internet.org se inserta en el campo de encabezado Via y es otra manera de identificar las solicitudes que pasaron por nuestro proxy.
Todas las solicitudes que provienen de la app para Android contienen un valor de encabezado de HTTP de usuario-agente único (que depende de la versión de la app). Un ejemplo de tal agente de usuario es:
Mozilla/5.0 (Linux; Android 7.1.2; Pixel Build/N2G47E; wv) AppleWebKit/537.36 (KHTML, como Gecko) versión/4.0 Chrome/57.0.2987.132 Mobile Safari/537.36[FBAN/InternetOrgApp; FBAV/7.0;]
Para detectar la solicitud, puedes comprobar si la cadena contiene "InternetOrgApp".
Las cookies son compatibles.
El proxy Internet.org no afecta a la cadena de UA del solicitante original.
Puedes usar los servicios de seguimiento, como Google Analytics, Effective Measure, Chatbeat, etc. en tu sitio. Como se mencionó anteriormente, nuestro entorno web no es compatible con JavaScript por el momento. Es importante tenerlo en cuenta, ya que muchos servicios de análisis dependen de JavaScript para funcionar completamente, aunque la mayoría tiene una alternativa para cuando JavaScript no está disponible. Consulta la documentación de los servicios que estás usando.
Para facilitar el uso de Google Analytics sin JavaScript dentro de la plataforma de Free Basics, a continuación encontrarás algunas normas para configurar tu servicio.
Para detectar con precisión el país del usuario, necesitas completar correctamente el parámetro de anulación de UIP en la solicitud de Google Analytics. La forma más sencilla de hacerlo es usar el campo de encabezado HTTP X-IORG-FBS-UIP (consulta Proxy Internet.org). El parámetro UIP debe estar configurado desde el servidor para realizar la solicitud a Google Analytics.
Para realizar el análisis del tráfico sin JavaScript, necesitarás usar el lado del servidor de tu servicio.
Las solicitudes de Google Analytics se pueden administrar completamente mediante back-end y el servidor puede ocuparse de administrar cookies (o distinguir a los usuarios de alguna otra manera). Puedes decidir qué parámetros de la solicitud completarás y usarás para el análisis. Esto se hace con el protocolo de medición de Google Analytics.
Si ya tienes una solución iframe, tendrás que realizar una solicitud POST en tu servidor a la dirección de Google Analytics. La mayoría de los parámetros serán coherentes con los que se usaron en la solución iframe.
Antes de enviar tu sitio web para su consideración, debes probar que cumpla con todos los requisitos anteriores. Los siguientes recursos pueden ayudarte a proporcionar comentarios en tiempo real sobre tu preparación.
El navegador Chrome puede imitar una experiencia para celulares, lo que facilita enormemente la mayoría de los aspectos de las pruebas. Recomendamos activar la emulación de dispositivos y probar todo el sitio en las siguientes condiciones:
Puedes encontrar las instrucciones aquí: https://developer.chrome.com/devtools/docs/device-mode
Opera ofrece un emulador propio que permite realizar pruebas más específicas sobre la representación de tu sitio y su comportamiento en el navegador Opera Mini.
Puedes encontrar las instrucciones aquí: http://dev.opera.com/articles/installing-opera-mini-on-your-computer/