;(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

Novatas no 5G, operadoras menores fizeram 'revolução', diz chefe da Anatel

Arte/UOL
Imagem: Arte/UOL

Lucas Carvalho

De Tilt, em São Paulo

05/11/2021 04h00

O primeiro dia do leilão do 5G, iniciado nesta quinta-feira (4), foi um sucesso na avaliação de Leonardo Euler de Morais, que deixou o cargo de presidente da Anatel (Agência Nacional de Telecomunicações) no mesmo dia.

"O saldo é muito positivo", disse Morais, em entrevista exclusiva a Tilt. "Temos quatro novos players e isso mostra que, mesmo no momento econômico desafiador que estamos vivendo, o setor de telecomunicações se mostrou atrativo."

Os quatro novos players são as operadoras que, pela primeira vez, poderão oferecer internet móvel de alta velocidade no Brasil. São elas Brisanet, Cloud2U (do grupo Greatek) e o Consórcio 5G Sul (que une as empresas Copel Telecom e Unifique).

As organizações já operam serviços de telefonia e internet fixa em diversas regiões do país, mas agora poderão investir em internet móvel após levarem para casa fatias generosas do 5G de 3,5 GHz —a frequência mais disputada, que levará a nova geração de conexão aos celulares de pessoas comuns.

Embora as tradicionais Vivo, Claro e Tim tenham arrematado as fatias mais "saborosas", do 3,5 GHz de alcance nacional, essas operadoras menores compraram o direito de levar a internet rápida a cidades com até 30 mil habitantes, nas regiões Centro-Oeste e Nordeste (Brisanet), Sul (Consórcio 5G Sul) e Sudeste (Cloud2U).

Para Morais, porém, a entrada de novatas não foi exatamente uma surpresa. "Temos acompanhado o trabalho relevante que essas empresas têm feito com banda larga fixa. Elas estão fazendo uma verdadeira revolução digital silenciosa no interior do Brasil. Portanto é justo que elas pleiteiem espaço na banda larga móvel, não apenas na fixa."

Demorou, mas chegou?

Em 2018, quando Morais assumiu a presidência da Anatel e a missão de trazer o 5G para o Brasil, a agência enfrentava um dilema: levar conexão de ponta para poucos ou um serviço meia-boca para todos? Esse nó, contudo, foi desatado ao longo do processo, e hoje Morais comemora que o 5G que chegará aos brasileiros é o melhor possível.

"A oferta de 100 megahertz na faixa de 3,5 GHz propiciará que o 5G seja ofertado na sua melhor condição", diz Morais. "Nós saímos de 200 megahertz [de espaço disponível para o 5G em 2018] e chegamos nesse momento com 400 megahertz disponíveis. Com isso garantimos eficiência sem abdicar de concorrência."

A "estrada" do 5G

Para chegar ao celular dos brasileiros, o 5G viaja por ondas de rádio que são como faixas numa estrada: antes, essa estrada estava ocupada por sinais como o de antenas parabólicas, 2G e 3G, e só sobravam 200 megahertz para a nova conexão.

De 2018 para cá, essa estrada foi "limpa" de conexões mais antigas para abrir caminho para a internet de última geração, e agora o espaço livre é o dobro: 400 megahertz.

Alguns desses sinais mais antigos, porém, ainda são obstáculo para a implementação do 5G. Segundo Morais, as operadoras que levaram o 3,5 GHz agora terão que avaliar se já é possível implementar a internet de quinta geração em cidades onde não há mais antenas parabólicas.

Se isso for possível, há chances de que o 5G chegue em algumas capitais ainda este ano. Mas o ex-presidente da Anatel prefere manter a cautela. "Há interesse, sim, das prestadoras, de implementar o 5G o mais rápido possível. Mas a gente não pode esquecer das parabólicas."

Em 2018, a expectativa de Morais era que o 5G já estivesse disponível do Brasil entre o fim de 2019 e o começo de 2020. Para ele, não houve "atraso" e que o mais importante do que realizar o edital um ano atrás é agora a forma com que o processo atual foi organizado.

"Conseguimos ampliar a quantidade de espectro e viramos referência no mundo. Outros países que fizeram há mais de um ano fizeram com abordagem arrecadatória, o que não traz os mesmos benefícios do nosso modelo", continuou. O modelo do leilão brasileiro, do tipo não-arrecadatório, significa que o dinheiro não vai para os cofres públicos, mas sim diretamente para obras de infraestrutura de conexão.

"Os custos dos equipamentos necessários para o 5G agora estão diminuindo, à medida que a tecnologia ganha uma escala. O leilão teve uma tempestividade adequada. Não há que se falar em atraso. Mais importante são as condições em que ele foi realizado", concluiu.