A revolução iniciada pelo Skype alguns anos atrás, e que conseguiu desviar o tráfego de chamadas internacionais dos operadores de telecomunicações, viria a ser repetida pelos serviços de Instant Messaging mais conhecidos, de onde se destaca o WhatsApp.

O serviço de SMS que foi introduzido na segunda geração móvel, o GSM que utiliza a rede de sinalização para a troca de mensagens de texto, teve um sucesso ao longo dos anos que não seria de prever no seu arranque. A sua procura era tão grande que os serviços de telecomunicações móveis chegaram mesmo a procurar reforçar as suas redes para darem vazão à procura. De tal forma se vulgarizou que é considerado a Killer Application do GSM.  Este estatuto ainda hoje resiste, mas a tendência de queda do tráfego de SMS é acentuado. Para isso muito contribuíram aplicações como o WhatsApp, o Viber ou o Facebook Messenger. Atualmente, além do serviço de mensagens, todos eles combinam a possibilidade de partilha de ficheiros multimédia e a de chamadas de voz. Apenas com uma destas aplicações e uma rede Wi-Fi é possível contornar os custos indesejados do roaming.

Os segredos do WhatsApp

Como suportar milhões de utilizadores com uma equipa modesta? Um dos segredos dos WhatsApp reside na linguagem de programação utilizada – Erlang. Esta linguagem apareceu há mais de duas décadas como resultado do trabalho do gigante de telecomunicação Ericsson. Não terá sido por acaso que o Facebook comprou a arquitetura do WhatsApp por 19 mil milhões de dólares em 2014. Atualmente suporta uma panóplia de aplicações incluindo o WhatsApp, o Facebook Chat (em 2009) e o TigerText.

Os segredos do WhatsApp

O WhatsApp não armazena nos seus servidores as mensagens trocadas entre utilizadores. As mensagens são trocadas entre intervenientes. Um inconveniente óbvio é que quando o utilizador troca de smartphone perde as conversas se antes não tiver o cuidado de efetuar um backup às mesmas. No entanto, os benefícios para a plataforma são interessantes:

  • O não armazenamento reduz as necessidades de espaço no servidor do WhatsApp;
  • Apesar de inicialmente o WhatsApp estar associado apenas a um dispositivo – algo que agora já não acontece com a sua versão Web – ao contrário dos seus concorrentes não tem problemas de sincronismo de mensagens já que apenas um cliente recebe as mensagens e é este que as armazena localmente. Este passo leva igualmente a uma arquitetura mais simples.

Estas razões, aliadas à dimensão inicial da equipa de desenvolvimento, levaram a um constrangimento que foi recentemente corrigido: o não suporte multidispositivo. Enquanto os concorrentes diretos corriam em simultâneo em mais do que um dispositivo, o WhatsApp ficava eternamente ligado ao número de telemóvel que foi usado no instante da ativação. Esta aposta também teve o seu preço e levou ao atraso do aparecimento da versão Web da aplicação. O armazenamento local das mensagens foi um problema. A sincronização da aplicação Web com os dispositivos clientes foi mais complexa de desenvolver e provavelmente não seria battery-friendly. Atualmente, o acesso Web necessita que o dispositivo com o SIM registado no serviço WhatsApp esteja com os dados ligados, para ser possível utilizar a versão desktop.

Como funciona o WhatsApp?

Dividindo os procedimentos para começar a utilizar o WhatsApp em pontos, temos:

Autenticação: o cuidado na simplificação do processo foi evidente. Não se recorreu à abordagem habitual de validação por login e password. O invés disso criaram uma afiliação entre o número do telemóvel e a conta da aplicação. No instante da instalação é enviado um SMS que garante a validação do número do telemóvel do utilizador, garantindo consequentemente o seu registo. Esta decisão no desenvolvimento teve um preço: o WhatsApp só funcionava no dispositivo onde foi ativado e era necessário que este tivesse um cartão SIM, afastando o produto do mercado de utilizadores de tablets e mesmo de PCs.

Segurança: o WhatsApp utiliza encriptação end-to-end de forma a garantir a privacidade dos utilizadores. O smartphone é responsável pela encriptação local das mensagens que envia para o servidor. Todas as mensagens recebidas são igualmente desencriptadas localmente. Esta abordagem de encriptação implica a troca de uma chave entre o dispositivo e o servidor. O token utilizado para a encriptação é trocado no instante da primeira autenticação e validação do WhatsApp. A chave passa a estar residente no smartphone onde foi instalada a aplicação.

Como funciona o WhatsApp?

Na solução Web é utilizado um QR-Code gerado no dispositivo que corre a versão Web do WhatsApp para associar outro dispositivo à conta WhatsApp inicial. O QR-Code tem um token que identifica – de forma única – o cliente Web. Ao ler o QR-Code com o smartphone é feita a associação com a conta WhatsApp. O processo de sincronização das mensagens antigas é feita entre o WhatsApp instalado no smartphone e o cliente Web, permitindo assim a leitura de mensagens que não tenham sido apagadas na aplicação.

Análise comparativa

WhatsApp Battery Test

Análise comparativa do consumo de bateria (Fonte: testdevlab)

WhatsApp Data Test

Análise comparativa do consumo de dados (Fonte: testdevlab)

Comparativo IM Apps

Classificação ponderada de cada aplicação (Fonte: testdevlab)

Efetuando uma análise ponderada, envolvendo o consumo da bateria e o tráfego de dados gerado, é possível demonstrar a boa performance do WhatsApp. Por último, será de referir que recentemente o WhatsApp decidiu acabar com o custo anual de utilização da aplicação, o que o aproximou ainda mais das vantagens perante os seus concorrentes.


Serão as chamadas de vídeo o próximo passo desta plataforma?


Descarrega aqui a aplicação para o teu smartphone:

Download na App Store

Download na Google Play Store

Download na Windows Phone Store