A maioria das pessoas pensa no Google como "apenas" uma empresa de pesquisa, mas nos últimos anos começou a fornecer versões gratuitas de aplicativos que anteriormente só estavam disponíveis como programas de área de trabalho autônomos.

O número de pessoas que usam o Google para e-mail, agendamento, processamento de texto e criação de planilhas é cada vez maior, mas os sites são apenas uma forma de acessar todos esses aplicativos..

Nos bastidores, a maior parte do que está disponível no Google por meio de páginas da Web também está disponível via programação.

O que são serviços da web?

Os serviços da Web são semelhantes a sites muito simples - sites projetados para serem usados ​​por computadores em vez de humanos.

Imagine que você escreve um script que chama um serviço da web. O script faz um 'pedido' para o serviço enviando informações (geralmente em XML) para um endereço da web. O serviço geralmente responde com algum texto XML em vez de retornar uma página da Web em HTML.

Por exemplo, um mecanismo de pesquisa pode permitir que você envie alguns termos de pesquisa e responda àqueles com um arquivo XML que lista os nomes e locais das páginas da Web que correspondem aos seus critérios..

Esse é um caso simples, mas à medida que os sites se tornaram mais poderosos e semelhantes aos aplicativos de desktop, os serviços da Web começaram a oferecer uma lista maior de recursos. Eles cresceram ao ponto de muitos deles estarem agora desempenhando uma função semelhante às linguagens de macro de função, como o VBA, uma vez veiculado no Microsoft Office e em outros produtos..

Conectando serviços

O aplicativo de exemplo que vamos construir aqui conecta dois conjuntos diferentes de serviços da Web juntos. Um é da BBC, o outro do Google.

A BBC oferece muitas informações sobre listas gratuitamente através dos serviços da web. Se você tem uma placa de TV no seu PC que é capaz de captar automaticamente os detalhes do programa, pode estar usando um desses serviços da BBC..

O Google expõe quase tudo que faz como serviços da web. É parte de seu plano tornar-se o contêiner de todas as informações do planeta, e o Google habilmente deu aos usuários o máximo de acesso possível aos dados e aplicativos que hospeda.

Ao conectar esses dois serviços da web, podemos resolver um problema hipotético: você quer assistir a documentários sobre o campo, mas sempre que liga a TV, não consegue encontrar o que deseja e acaba assistindo a outra coisa. Este projeto de programação de TV impede que isso aconteça.

Você pode filtrar as listagens da BBC para apenas as coisas que você quer, em seguida, postar um evento para cada programa no Google Calendar para lembrá-lo quando sintonizar para os shows.

Passe para os bastidores

O primeiro conjunto de serviços da web que veremos é executado no site da Backstage da BBC. Este é um sistema experimental que foi lançado há três anos e disponibiliza muitos dados da BBC na esperança de que as pessoas encontrem maneiras interessantes e inovadoras de usá-lo. Toda a documentação para os serviços web do Backstage pode ser encontrada aqui: www.tinyurl.com/2af4vw.

O script que lida com o serviço da BBC é chamado 'bbc_progs.rb'. Embora haja muitos serviços em oferta, só vamos usar três deles. Primeiro de tudo, vamos chamar 'bbc.genre.getMembers'. Se você enviar este serviço ao código para um determinado gênero de programa (como documentários), ele retornará uma descrição XML de todos os programas desse tipo listados atualmente em seu banco de dados..

Em seguida, vamos chamar 'bbc.programme.getLocations'. Isso retorna um conjunto de endereços em que você pode assistir ou ouvir o programa na web. Na realidade, os endereços retornados nem sempre funcionam - a maioria dos links de rádio são bons, mas a maioria dos links da TV está errada. Parece provável que, ao longo do tempo, mais programas de TV serão transmitidos na web, por isso vamos gravá-los aqui apenas no caso de.