Plataforma Agregadora | Conceito | Robô "Edwando" + CMS "Quântico" | Agenda de Produção


"Edwando" (Robô de Agregação)

Um um fork do bot Edgar (escrito em php), iniciado pelo estadunidense Nathan "Fritzy" Fritz (originalmente chamado Edgar), instalável em qualquer servidor web (independente do jabber server), para ser adicionado como contato à sua lista de contatos Jabber. Uma vez adicionado, pode-se passar linhas de comandos para o mesmo na forma de mensagens. Este bot é a peça que interconectará as partes da Plataforma Agregadora.

Histórico do Robô


Tenho trabalhado atualmente com PHP e XMPP (Jabber). E pesquisando na rede, cheguei numa Classe PHP escrita por Carl "Gossip" Zottmann e que hoje é mantida por Nathan "Fritzy" Fritz.

Conversando com o Nathan sobre a Classe, ele me mostrou um de seus projetos, o Edgar The Bot.
Gostei muito desse projeto e me ofereci para ajudá-lo. ( O edgar foi escrito em PHP e utiliza o MySQL para armazenar os lembretes e outras coisas )

Chamei um amigo, Alexandre Carvalho (alexbh) para participar do projeto. Ele aceitou e fizemos então uma reunião com o Nathan.

Como o Robô funciona?


Um robô fica online na rede jabber

O bot entra pra sua lista de contatos. Assim, ele consegue monitorar a sua presença (Online, Offline, Away, etc). Com isso, você pode exibir esse status no seu blog, fotolog, etc.
http://xemele.cultura.gov.br/metal/jabber/edgar/bot/status/status.php

Outros comandos básicos:
about - Exibe informações sobre o Edgar;
remind - Agenda tarefas;
seen - Exibe a última vez que um usuário (user@server) estava online;
stats - Exibe o total de usuários online X usuários registrados;
timenow - Exibe hora e data corrente (GMT);
uptime - Exibe a quanto tempo o bot esta online;
visible - Define se o bot fica visivel ou invisivel para o usuário.
help - invova uma chamada de ajuda para qualquer comando do Edgar;
Features para a versão 1.0:

1) Install interface; (PRONTO)
2) Internationalization; (PRONTO)
3) Admin interface;
4) Modularização dos comandos; (PRONTO)
5) Guidelines;
6) And docs.... lot of docs..

Como a base do bot é a Classe Jabber, e eu utilizo debian, empacotei ela primeiro. ( Estou esperarando um sponsor para fazer o upload ) Futuramente, farei o mesmo com o Edgar.

Acumulando informações de um sistema
Compartilhando informações entre sistemas
Xemelizando automaticamente

Sobre os conectores Robozim


Podem ser módulos, uma coleção de funções num .php, ou até mesmo um transport no Jabber Server. Como primeira variante, desenvolveremos um conector genérico, mas a idéia é que variantes de conectores surjam mundo afora, para perfis diversos de sistemas.

Condições para um sistema poder xemelizar


1. Exportar XML estruturado em padrões populares
O sistema tem de exportar um feed xml nos padrões suportados pelo Robô (os mais populares: RSS, Atom, etc.). Podemos indicar referências de como fazê-lo no ambiente de suporte colaborativo da comunidade da agregação xemelê, mas este é um módulo que deve ser escrito por iniciativa do desenvolvedor... nossa intenção é agir sobre a mobilização a favor do RSS, Atom e outros formatos de intercâmbio na web.

2. Autenticar usuário utilizando um conector Robôzim
Isto permitirá ao sistema o uso das APIs do Robô para as seguintes funções fundamentais:
- Envio do feed XMl marcado com o JID do usuário, no momento do login.
- Importação do arquivo xemele.xml gerado pelo Robô para um JID específico
- Consultas básicas sobre os dados agregados no xemele.xml

There are 3 comments on this page. [Display comments]

Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by WikkaWiki