Um dos desafios mais interessantes da plataforma Sapo Campus na Escola é o da integração de um conjunto de tecnologias que formam o "miolo" (ou core, para leitores mais sabidos da matéria) deste novo sistema. Alguns destes serviços são fornecidos pelo SAPO, outros são open source, e outros são desenvolvidos aqui nos Laboratórios SAPO. Apresenta-se em seguida um esquema de como se relacionam e, posteriormente, uma explicação resumida do que faz cada um e de como se comunicam.
No centro do esquema encontra-se o SAPO-Broker, uma plataforma de alto débito de notificação de eventos, que nos permite receber informação relativa à interacção dos utilizadores com os serviços do SAPO. Ou seja, de cada vez que um utilizador publica uma foto, um post ou um video nos serviços do SAPO (em cima à esquerda) estes lançam para o SAPO-Broker um conjunto de dados relativos a esse evento (payload) que poderão depois ser capturados por outras aplicações 'à escuta' desses mesmos eventos.
Uma dessas aplicações é o Mercury. Um sistema feito aqui na casa que escuta os eventos das plataformas de fotos, videos e blogs disponibilizadas para o Campus e os enriquece com outra informação pertinente. Este processo de enriquecimento utiliza informação recuperada dos serviços do SAPO via APIs AJAX/SOAP bem como informação do próprio Sapo Campus. Uma vez tratados estes dados, voltam a ser lançados para o SAPO-Broker, desta vez em eventos próprios (com o prefixo '/sapo/campus/').
Estes nossos novos eventos encontram em seguida dois clientes:
A plataforma Sapo Campus consome então a informação proveniente do Solr via JSON, e a informação proveniente do Status.net usando o protocolo ActivityStreams, desenvolvido para esquematizar os diferentes tipos de acção provenientes de uma qualquer rede social. Por último, o próprio Sapo Campus enviará também eventos próprios para o SAPO-Broker, reiniciando o ciclo que o envolve, bem como ao Solr como ao Status.net.
Semear a concórdia entre estas seis plataformas é um processo complexo, com alguns sobressaltos pelo meio, mas perfeitamente exequível com algum esforço. Um desafio digno dos Laboratórios SAPO! ;)