/baas

"Buddy as a Service" is a xmpp / wavelet robot using Yahoo YQL API, Google API and other services to do searches (web, news, reviews, wikipedia, imdb) and some other stuff for you. If you want to see BaaS in action, add baas@borho.net to your jabber contacts.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Buddy as a Service (baas) is a jabber/wave robot, using Yahoo YQL API, Google API and other services to do searches (web, news, reviews, wikipedia, imdb) and some other stuff (translations, weather forecast, etc) for you.

The XMPP bot also runs on the google appengine. BaaS is easy extensible through plugins. No API Keys required!

requirements:

- Universal Feed Parser ( http://www.feedparser.org ) and Chardet
- Twisted Words ( http://twistedmatrix.com/trac/wiki/TwistedWords )
- if running as wave robot: wave-robot-python-client ( http://code.google.com/p/wave-robot-python-client/ )

If you want to see BaaS in action, try one of the following demos:

xmpp-bot: 

add baas@borho.net to your jabber contacts.

appengine-xmpp-robot:

add buddyasaservice@appspot.com to your jabber contacts

wave-robot:

add buddyasaservice@appspot.com to your contacts

usage:

type 'help' for available commands

news:word - searches for news
web:word - websearch
blip:song - search for songs on blip.fm
gnews:word - google news search
gweb:word - google web search
metacritic:title - search for reviews on metacritc.com
imdb:title - search for movie on IMDb
wikipedia:thing - search on wikipedia
wiktionary:word - search on wiktionary
tlate:word [@source] [#target] - translates the word from @source in @target, default #target is english
example:foo - gives you a bla for a foo
blog:word - blog search via twingly
micro:word - microblog search via twingly
weather:city [,country] [#lang] - get weather information and forecast

Some commands (news,web) can be combined with lang-codes, like #de, #en, #es etc:
news:hamburg #de
web:xmpp #de

gnews and gweb can be also combined with lang-codes, like #de, #en, #es etc:
gnews:hamburg #de
gweb:xmpp #de

IMDb search can be narrowed down with #en, #de, #es, #pt, #it or #fr
The different wikipedia or wiktionary versions can be selected via #en, #de, #fr etc.

A translation can have the source (@) and the target (#) language specified by tags
tlate:Wie gehts?  @de #en
tlate:Wie gehts?  @de #es
tlate:How do you do? #de

Installation/Configuration:

xmpp-bot:
a) easy_install baas
b) command 'baas_bot' will be installed
c) for an example configuration file type 'baas_bot -s'
d) for all options type 'baas_bot -h'
e) start your bot with 'baas_bot -c /path/to/your/conf'

wave-robot/appengine-xmpp-bot:
a) download source package from github
b) extract source package in your app root
c) copy baas/conf/app.yaml to your app root and modify
d) copy baas/conf/baas.conf to your app root and modify
e) fullfill package dependencies

***************************************************************
****** Copyright 2009 Martin Borho <martin@borho.net> *********
****** GPLv3 - see License.txt for details            *********
***************************************************************