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

Covid-19 e influenza fazem ageiros perderem voos e a paciência

Movimentação no Terminal 2 do Aeroporto Internacional de São Paulo, em Guarulhos - Bruno Santos/Folhapress
Movimentação no Terminal 2 do Aeroporto Internacional de São Paulo, em Guarulhos Imagem: Bruno Santos/Folhapress

Felipe Pereira

DO TAB, em Guarulhos e São Paulo

12/01/2022 04h01

São tantos os afastamentos por covid-19 e influenza na aviação que simplesmente não sobrou tripulante para pilotar e voar em todos os aviões. Cada aeronave que não decolou interrompeu os planos de centenas de pessoas que acordaram em suas camas com a intenção de irem dormir bem longe de casa. A frustração alimenta a cobrança por agilidade na solução. Os vírus criaram a fórmula perfeita para a irritação. Todos os envolvidos — usuários e funcionários da aviação — saem descontentes dos aeroportos de São Paulo.

Antes de conseguir tratar de seu caso no Terminal 2 de Cumbica, aeroporto de Guarulhos (SP), cada ageiro de voo cancelado precisou vencer uma fila longa e arrastada. O funcionário da companhia aérea, que não tem culpa da situação, será o único destinatário do aborrecimento represado. Para piorar, o trabalhador metido em uniforme bem cortado sabe da fragilidade de sua posição. Por questão matemática, nem todos os ageiros do voo cancelado caberão no avião que conseguirá seguir viagem.

A consequência é um repertório de cenas nonsense no terminal 2. Zangado por ouvir a música no call center da empresa por quase meia hora, o rapaz dá uma bica na própria mala enquanto xinga uma gravação eletrônica. Ele não aceita dar entrevistas.

Meia hora depois, a funcionária da empresa aérea que cruza o local é cercada por ageiros. Todos falam ao mesmo tempo, na tentativa de serem ouvidos. Ninguém se entende. Quando a mulher consegue a palavra, dá a informação que todos já tinham: o voo deve ser remarcado no aplicativo ou site da companhia aérea. A reação é zangada e decepcionada.

O cenário de cancelamentos e incertezas altera até a noção de bom e ruim dos envolvidos. Na segunda-feira (10), Nathaline Nayara da Silva, 32, mofava desde o horário do almoço numa poltrona em frente ao guichê de atendimento da Latam, no aeroporto de Guarulhos. A tarde nem acabara e não havia mais posição para ficar sentada.

Ainda assim, Nathaline estava satisfeita porque sabia estar em vantagem em relação aos demais. O banco que arranjou ficava diante de uma fila com 32 pessoas e somente três atendentes. Ela e o marido tinham consciência do que esses ageiros sentiam. No domingo, não conseguiram fazer o check-in porque o voo do casal e do filho, previsto para sair às 17h de segunda, fora cancelado.

Apenas o marido conseguiu ser realocado pelo aplicativo. O último dia de férias foi perdido em preocupações. O casal adiantou a ida para o aeroporto na segunda e acabou recompensado. A família foi acomodada no voo das 22h. Depois de 18 dias de viagem por Gramado (RS) e São Paulo, Nathaline comemorava a garantia da volta para casa.

Ainda que o voo saísse com cinco horas de atraso e ela aterrissasse em Maceió somente no dia seguinte, considerou-se com sorte. Muita coisa na vida é questão de perspectiva. Mas o alívio não fez Nathaline esquecer da falta de informações e o mal atendimento por um serviço que custou bastante dinheiro.

"A gente paga R$ 4 mil nas agens e sabe pela TV do problema."

Nathaline - Felipe Pereira - Felipe Pereira
Com voo cancelado, Nathaline, o marido e o filho de 3 anos esperam horas no aeroporto
Imagem: Felipe Pereira

ageiros se sentem desrespeitados

Até o momento, foi confirmado o cancelamento de 528 voos da Latam e da Azul. O prejuízo é inevitável, mas fica maior porque os ageiros não recebem a atenção e as orientações adequadas. A aposentada Elisabete Cristina da Silva, 66, teve o voo para Fortaleza cancelado. O filho conseguiu remarcar pelo site da Latam e pediu que a mãe conferisse se deu tudo certo logo na chegada ao aeroporto de Guarulhos.

Quando mencionou o termo "voo cancelado" aos atendentes, Elisabete foi jogada na fila com 32 pessoas e três guichês operando. Ficou uns bons 15 minutos nas posições finais da fila, até que o rapaz à frente perguntou de seu caso. Foi dele a orientação para procurar uma das pessoas da companhia aérea que ajudam a fazer o check-in.

A aposentada tinha voo confirmado e não precisava estar naquela fila. Como chegou com seis horas de antecedência, poderia usar o tempo da forma que planejou. Em vez de ficar em pé numa fila inacabável, acomodou-se num banco para ler "O amor venceu", de Zibia Gasparetto.

Acontece que ter a situação resolvida não é uma regra. Maria Luiza Carvalho, 60, e Jaime Carvalho, 64, estacionaram em frente às fitas que formam o corredor que leva aos guichês de check-in da Latam. Posição estratégica para assistir às tentativas do filho de conseguir lugar no voo para Maceió.

Quando Jaime Conte Carvalho, 38, foi encaminhado para o guichê onde estava escrito "atendimento ", o casal achou que tudo ia se desenrolar rápido. Que nada. Ele explicou a situação pela segunda vez. Viajaria com os pais às 17h num voo que fora cancelado. Os dois foram realocados no voo da noite, mas sua agem ficou para o dia seguinte. Estar naquele avião era essencial porque os três não viajavam a eio. Iam a escritura da compra de uma casa.

O filho gastou uma hora de saliva e voltou para a fila comum. Repetiu a história esperou mais um tempão e seguiu para a fila de novo. À essa altura, o pai falava em registrar um boletim de ocorrência para eventual processo. Maria Luiza ralhava. Era metade da tarde, estava apenas com o café da manhã, mas se esquecera do estômago. "Eu não estou com forme, eu estou com raiva."

O filho foi colocado para andar em círculos e não conseguiu sair do labirinto. Só pôde embarcar para Maceió depois de comprar uma agem pela Gol no voo da meia-noite. O bilhete aéreo custou R$ 450 e mais 47 mil milhas — cada milha vale R$ 0,07, o que significa que desembolsou R$ 3.740.

Jaime  - Felipe Pereira - Felipe Pereira
Jaime pensou em registrar um boletim de ocorrência para processar a companhia aérea
Imagem: Felipe Pereira

Dia difícil no trabalho

O aeroporto estava cheio de gente descontente, mas longe do caos de pessoas amontoadas nos corredores. Na segunda-feira, foram 139 voos cancelados. De acordo com a Associação Brasileira de Empresas Aéreas, em dezembro verificou-se 2.036 decolagens por dia. O tamanho do problema não foi suficiente para estremecer a malha aérea do país.

Só que o problema atrapalhou a vida de um bocado de gente, incluindo os funcionários das empresas aéreas. Cada atendente via à frente uma fila inacabável de pessoas. E cada ageiro tinha seus motivos para reclamar. O viajante em férias ia perder um dia de turismo, hotel, e eios pré-agendados. Quem viajava a negócios precisaria remanejar compromissos e teria perdas profissionais.

Uma atendente de empresa aérea que conversou com o TAB sob a condição de anonimato contou que não havia o que fazer. As pessoas estavam certas em reclamar. Aos funcionários só restava escutar calado, parecer simpático e solícito e torcer para pessoa não perder as estribeiras quando dissessem que não podiam fazer nada.

Ela também contou que os atendentes não chegaram ao aeroporto de Guarulhos sabendo da gravidade do problema. Afirmou que foram conhecendo a situação à medida que a manhã se desenrolava. Outra atendente que também falou em anonimato declarou que estava saindo do trabalho "moída".

Enquanto o dia era pesado no aeroporto de Guarulhos, funcionários e ageiros tinham uma rotina menos atribulada no aeroporto de Congonhas, na zona sul da capital. Até a metade da tarde o mostrou somente quatro voos cancelados. Um funcionário da Latam contou que para eles era tranquilo por haver muito menos voos que em Guarulhos.

CGH - Renato S. Cerqueira/Futura Press/Estadão Conteúdo - Renato S. Cerqueira/Futura Press/Estadão Conteúdo
Movimento de ageiros no aeroporto de Congonhas, em São Paulo
Imagem: Renato S. Cerqueira/Futura Press/Estadão Conteúdo

O que dizem as empresas

A Latam enviou nota via assessoria de imprensa em que lamentou a situação e ressaltou que é alheia à sua vontade. A companhia aérea informou que foram 42 cancelamentos na terça-feira (11) — um total de 135 desde o último domingo. "O número representa cerca de 1% de todos os voos domésticos e internacionais programados pela Latam Brasil durante todo o mês de janeiro", ressalta trecho de nota enviada ao TAB.

A empresa acrescentou que acionou seus clientes por meio de redes sociais, e-mails, mensagens de texto e WhatsApp. A orientação aos ageiros é de conferir o status do voo no site da companhia. Em caso de cancelamento, a remarcação pode ser feita pela internet.

A Azul encaminhou nota à reportagem, afirmando que pelo menos 90% dos voos continuam em operação normal. A companhia aérea informou que os ageiros afetados foram notificados e realocados em outros voos da empresa.

A Gol informou que não teve nenhum voo cancelado por falta de tripulantes. A companhia enviou nota em que itiu conviver com o afastamento de funcionários, mas acrescentou que a falta de pessoal não afetou a normalidade de suas operações.