;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

WhatsApp processa mais duas empresas por disparo de mensagens em massa

Decisão prevê multa diária de R$ 50 mil em caso de descumprimento da determinação judicial - Allan White/Fotos Públicas
Decisão prevê multa diária de R$ 50 mil em caso de descumprimento da determinação judicial Imagem: Allan White/Fotos Públicas

Renata Baptista

De Tilt, no Recife

13/11/2020 14h35

Sem tempo, irmão

  • WhatsApp abriu processo contra duas empresas por disparo indevido de mensagens
  • Empresas ficam proibidas de distribuir, vender e ofertar serviços de envio dentro do WhatsApp
  • A multa diária é de R$ 50 mil em caso de descumprimento da determinação judicial

O WhatsApp informou que abriu processo contra duas empresas brasileiras que oferecem serviços de disparo em massa de mensagens pelo aplicativo. A decisão, segundo a plataforma, foi tomada para conter a desinformação, especialmente em meio às eleições municipais de 2020, que acontecem no domingo (15).

As ações foram ajuizadas na segunda-feira (9) e envolvem as companhias Autland e VB Marketing. O disparo em massa dentro do serviço de mensagens é uma prática proibida em seus Termos de Serviço.

Segundo o WhatsApp, decisões liminares proferidas pelo Poder Judiciário na quarta-feira (11) afirmam que as duas empresas ficam proibidas de desenvolver, distribuir, promover, operar, vender e ofertar serviços de envio de mensagens em massa pela plataforma, bem como de utilizar as marcas do WhatsApp, no prazo de 24 horas, sob pena de multa diária de R$ 50 mil em caso de descumprimento da determinação judicial.

A Autland falou com Tilt por meio de mensagem de WhatsApp e afirmou que ainda não foi notificada judicialmente sobre a decisão. "Vamos aguardar a citação, depois disso, no prazo legal, será acatada toda e qualquer decisão judicial em sua totalidade", disse Eleandro Tersi, proprietário da empresa.

Na página inicial do site, a Autland afirma que seus programas não burlam os termos contratuais de nenhum app e que nunca foi citada ou processada judicialmente. Na mesma página, a empresa oferece serviços de propaganda direta pelo WhatsApp — com envios Ilimitados com até 30 números de uma vez, programa que cria grupos e faz propaganda e fornecimento de números para envio diário, entre outros. Também são oferecidos serviços para outras plataformas, como Instagram e Facebook.

Ainda na página da Autland há um link para a venda de curso e softwares para candidatos — com utilização de envios para WhatsApp e robôs para plataformas como Twitter e Instagram.

Por email, o diretor-executivo da VB Marketing, Lucas Simão, disse a Tilt que, até a tarde desta sexta-feira (13), a empresa não havia sido intimada pelo Judiciário sobre o caso. "Assim que o fato ocorrer, nosso departamento jurídico irá analisar o processo e, caso necessário, elaborar a defesa, para os devidos fins legais", afirmou.

De acordo com o empresário, a empresa não tem conhecimento e nem atividades em campanhas políticas, trabalhando com desenvolvimento de softwares para a comunicação de empresas com seus respectivos clientes. "Ressaltamos que nós repudiamos quaisquer tipos de spam que infrinja as políticas de privacidade e os termos de serviço da empresa WhatsApp INC", afirmou Simão.

Entre os serviços oferecidos na página do site da empresa, está a venda de software para automação de WhatsApp, que possibilita o disparo de mensagens para listas de telefones. Também são oferecidos serviços relacionados a outras redes sociais.

Estas não são as primeiras ações judiciais tomadas pelo WhatsApp contra empresas de serviços de disparos massivos de mensagens. Em março e abril deste ano, SallApp e Yacows foram acionadas. A Message Flow foi incluída em setembro no polo ivo no processo contra a Yacows.

Além dos processos, o aplicativo afirma que já enviou diversas notificações extrajudiciais para empresas que anunciam disparos de mensagens em massa utilizando seu aplicativo.

Ações contra desinformação

O WhatsApp tem anunciado ações contínuas para restrição de compartilhamento de conteúdos. Desde abril deste ano, as mensagens que foram encaminhadas mais de cinco vezes só podem ser direcionadas para uma única conversa por vez. A mudança levou a uma redução global, também observada no Brasil, de 70% no número de mensagens frequentemente encaminhadas pelo aplicativo, informou a empresa em comunicado.

Segundo o WhatsApp, o aplicativo também conta com um sistema de integridade que é constantemente aprimorado para identificar comportamento abusivo e bane cerca de 2 milhões de contas no mundo todos os meses a partir de uma série de critérios e classificadores: do cadastramento ao envio de mensagens e mesmo a partir de denúncias dentro do aplicativo.

O aplicativo destaca ainda que não a o conteúdo das mensagens trocadas dentro da plataforma, e por isso as medidas de combate ao abuso focam no padrão do comportamento, como propósito evitar ações anormais e automatizadas e o uso prejudicial de contas.

O WhatsApp afirma que incentiva os usuários a verificar a veracidade das mensagens que recebem antes de compartilhá-las, e que possui parcerias com checadores de fatos.