Image Image Image Image Image Image Image Image Image Image

 iOSMac | 05/12/2016

Scroll to top

Top

No Comments

Push Notifications, el brillante sistema de notificaciones de Apple

Push Notifications-apple-iosmac
Vicente Porfilio

Parece una tontería, pero no lo es. Las notificaciones “push” han revolucionado nuestra forma de estar comunicados. Antes, el único “push” que teníamos era el de las puertas de algunos establecimientos y como mucho algún SMS que nos llegaba así tipo “push” por la línea telefónica. ¿Os imagináis tener vuestros dispositivos sin las notificaciones instantáneas?

Push Notifications, el sistema de notificaciones de Apple extendido mundialmente

Había que inventar alguna forma de que por internet y no por la linea de teléfono nos llegaran notificaciones instantáneas como si de un SMS de los de antes se tratara. Y así, alguien en Apple inventó lo que es ahora tan conocido como las Push Notifications. Notificaciones instantáneas que nos llegan vía internet.

No voy a ser nada técnico, seré mas bien breve y escueto pero trataré de dar alguna pista de como trabaja de manera general este sistema de Apple implantado ya para todos los dispositivos de la actualidad.

¿Como hacemos para enviar algo concretamente a otro dispositivo? Bueno esto no es algo nuevo, un simple sistema de chat (irc) clásico hace algo así desde siempre y a toda hora. Cuando en un chat enviamos un mensaje privado a alguien, ese mensaje va a ese usuario y no a los demás (no contemplo los chat de grupo para no complicarlo mas). Pero eso es algo mas o menos fácil ya que hay un servidor que conoce a los dos clientes a él conectados y por lo tanto hace lo que proceda para unirlos y hacerles chatear en privado. Eso, pasado a smartphones es lo mismo pero con alguna peculiaridad. ¿Quien es y donde esta el servidor que hace este trabajo de unir a dos o varios clientes en concreto?

Notification Life Cycle

Notification Life Cycle

Imagina que escribes un Whatsapp a tu amigo. Cuando envías el mensaje, este mensaje va directo a la base de datos de Whatsapp donde se almacena para ser descargada una copia de él en el dispositivo de destino. Al mismo tiempo, enviando el mensaje estamos enviando una especie de DNI (numero de identidad, un numero unico) de nuestro dispositivo y del de nuestro amigo (sabemos su numero ya que lo tenemos en nuestra agenda y su numero de teléfono está asociado a un numero de dispositivo). Bueno, en el caso de Whatssapp es el numero de teléfono asociado y el numero de identificación del dispositivo en concreto lo que nos diferencia de los demás.

TE RECOMENDAMOS:   Steve Jobs habría dejado planificado el desarrollo de un TV Apple

Bueno, pues en Whatsapp reciben ese mensaje con los números de identificación en concreto, generan el texto de la futura notificación y lo mandan directamente a Apple a unos servidores especiales para el sistema “push”. Estos servidores, tras asegurarse y comunicarse con la aplicación y con el cliente, ( Hay que asegurarse muy bien de que la petición viene de una app de un desarrollador de verdad y que es fiable), dirigen ese mensaje al numero/dispositivo de tu amigo. Con lo cual y mediante una ruta que ellos abren al uso, envían como si de un chat se tratara un “mensaje”, que nuestro dispositivo nos lo muestra a modo de notificación.

Push

Push

En resumen, cuando nos llega una notificación tipo “push”, lo que ha pasado es que la aplicación en cuestión ha enviado a Apple el texto de la notificación y la identificación del usuario que ha de recibirla. Apple lo verifica, se asegura y procede al envío de ese texto a ese usuario del que conoce su identificación. El usuario recibe vía internet un mensaje que es el texto que la app envía como notificación. Nuestro dispositivo ya nos muestra ese mensaje según lo tengamos configurado.

Para que todo esto funcione a la perfección y nadie interfiera en esto, las aplicaciones, nuestro dispositivo y Apple interactúan varias veces entre ellos para asegurarse antes de nos llegue la notificación a nosotros. Sería un desastre que nos llegaran notificaciones falsas creadas por algún hacker o similar.

to push: empujar.