Alternativa ao Google Cloud Print: o que o substitui realmente

O Google Cloud Print foi desligado a 31 de dezembro de 2020. Eis o que os substitutos oferecem realmente e como migrar sem servidor de impressão local.

O Google Cloud Print foi desligado definitivamente a 31 de dezembro de 2020. Se está a ler isto, provavelmente ainda tem um fluxo de trabalho que assumia que ele estaria sempre lá: uma aplicação que imprimia uma etiqueta a partir de um servidor, um back office que enviava um talão para o balcão de uma loja, um script que transmitia uma ordem de trabalho a um armazém.

Resposta curta: a Google não apresentou substituto. O que o substituiu, na prática, é uma API de impressão na nuvem: um endpoint HTTPS ao qual envia um pedido, com uma impressora que mantém ela própria uma ligação de saída para esse serviço. Sem servidor de impressão local, sem driver numa máquina que tenha de ficar ligada.

Porque foi descontinuado

O Google Cloud Print era uma tecnologia de transição. Existia porque em 2010 imprimir a partir de um Chromebook ou de um telemóvel era genuinamente difícil. Nunca recebeu uma API estável, documentada e versionada para backends de terceiros: foi desenhado à volta de um utilizador que carrega em «Imprimir» num navegador.

Quando o encerramento foi anunciado em 2019, a recomendação oficial era usar a impressão nativa das plataformas (CUPS, IPP, plugins móveis). Esse conselho serve para uma pessoa que imprime um documento. Não responde de todo ao caso que a maioria tinha realmente: um servidor que precisa de fazer sair papel de uma máquina noutro sítio, sem ninguém presente.

O que é preciso substituir realmente

Vale a pena ser preciso quanto às quatro coisas que o Google Cloud Print dava:

  1. Acessibilidade: a impressora era alcançável a partir da internet sem abrir portas no router da loja.
  2. Nenhum software local: após o registo inicial, nenhum computador tinha de ficar ligado.
  3. Uma fila: os trabalhos submetidos com a impressora offline não se perdiam em silêncio.
  4. Multi-local: uma só conta podia conter muitas impressoras em muitos sítios.

Qualquer substituto que abandone um destes pontos não é um substituto, é um retrocesso. É essa a armadilha principal: várias «alternativas» reintroduzem discretamente um computador que tem de ficar ligado ao lado da impressora.

As opções em 2026

Opção Máquina local Sentido Hardware Adequado a
IPP / CUPS nativo Sim, um servidor Push, apenas LAN Nenhuma Impressão de escritório num local
QZ Tray Sim, um applet Java Navegador para impressora local Nenhuma Imprimir de uma web app na mesma secretária
Star CloudPRNT Não A impressora consulta o seu servidor Apenas Star Parques já normalizados em Star
Epson Server Direct Print Não A impressora consulta o seu servidor Apenas Epson Parques já normalizados em Epson
PrintNode Sim, um cliente por local Push via API Nenhuma Parques USB com uma máquina disponível
Expedy Print Não Push via API REST Nenhuma Backends que imprimem sem supervisão

Duas diferenças estruturais pesam mais do que qualquer lista de funcionalidades.

Push contra polling. O CloudPRNT e o Server Direct Print invertem a relação: é a impressora que pergunta ao seu servidor, de poucos em poucos segundos, se há algo para imprimir. Tem de construir e alojar esse endpoint, garantir a disponibilidade e aceitar o intervalo de polling como piso de latência.

Se um computador tem de ficar ligado. O QZ Tray exige uma aplicação Java na máquina que possui a impressora, mais um certificado de assinatura de código para impressão silenciosa. O PrintNode exige o seu cliente num computador ao lado da impressora. Ambos recriam a falha de que os utilizadores do Google Cloud Print queriam fugir: alguém fecha o portátil e a impressão pára.

Substituí-lo por uma chamada REST

curl -X POST https://www.expedy.fr/api/v2/printers/{printer_uid}/print \
  -H "Authorization: API_SID:API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "printer_msg": "PEDIDO #1043\n2x Margherita\n1x Tiramisu\n\nTotal: 28,50 EUR",
    "origin": "meu-backend"
  }'

Sem SDK para instalar e sem daemon local. A mesma chamada funciona a partir de Node.js, Python, PHP, Go, Ruby, .NET ou um script de shell. Para a paginação (negritos, logótipos, códigos QR, códigos de barras, corte), veja a documentação de paginação.

Migrar um parque existente

  1. Inventarie o que ainda imprime. A maioria dos parques descobre que um terço das integrações está abandonado há anos.
  2. Decida por local: impressora nova ou adaptador. Se a impressora térmica existente funciona, um adaptador USB Raspberry Pi transforma-a em impressora na nuvem endereçável por REST. Se estiver em fim de vida, uma impressora 4G/Wi-Fi/Ethernet retira por completo a rede local da equação.
  3. Mapeie os identificadores. Substitua o antigo id do GCP pelo novo printer_uid na configuração, não no código.
  4. Corra ambos em paralelo durante uma semana. Os tipos de documento esquecidos aparecem de imediato.
  5. Trate o caso offline explicitamente. É o passo mais frequentemente saltado, e o que produz os incidentes de «perdemos um pedido» seis meses depois.

Que opção para que caso

  • Imprime a partir de um navegador, na mesma secretária da impressora. O QZ Tray ou a impressão nativa é mais simples.
  • Todos os seus locais já são Star ou Epson e alojar um endpoint não o incomoda. O CloudPRNT ou o Server Direct Print servirá, ao preço do servidor de polling.
  • Tem um computador sempre ligado em cada local. O PrintNode é uma escolha razoável.
  • O seu backend tem de imprimir sem supervisão, em locais que não controla. Uma API REST push com uma impressora que se liga sozinha é a única opção que conserva as quatro propriedades do Google Cloud Print.

A Expedy Print pertence a esta última categoria, com plano gratuito e conectores para Shopify, WooCommerce e HubRise.

FAQ

Quando fechou exatamente o Google Cloud Print?

O serviço foi desligado a 31 de dezembro de 2020. O encerramento foi anunciado em novembro de 2019 e nenhum serviço da Google o substituiu.

Existe uma alternativa gratuita ao Google Cloud Print?

A Expedy Print tem um plano gratuito com 50 pedidos de impressão por mês, suficiente para portar uma integração e testá-la de ponta a ponta. Os talões do plano gratuito levam marca de água.

Tenho de comprar impressoras novas?

Não. Um adaptador USB Raspberry Pi transforma uma impressora USB existente em impressora na nuvem endereçável por REST. Comprar uma impressora na nuvem só é necessário se o equipamento estiver em fim de vida ou não houver rede local utilizável.

O que acontece aos trabalhos enviados com a impressora offline?

São colocados em fila e entregues na reconexão, e a API expõe o estado de entrega para que o seu backend possa alertar ou repetir em vez de perder o trabalho em silêncio.