My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members

Introduction

Ever wonder what it'd be like to chat with the next version of your significant other? Be in the dark no longer with this app sure to upset significant others everywhere.

This application is composed in stages, and is meant to be used as a tutorial for getting up to speed with Google App Engine.

gfemmebot is intended to illustrate an analogy. Applications that just create, retrieve, update, and delete (CRUD) objects aren't that cool. Applications start to come to life when a human element is added. gfemmebot is an example of merging Google's robot services (App Engine) with its human services (Google APIs.) It can be difficult to grow a user base, so it may be simpler or better in many cases if you borrow an existing user base. gfemmebot borrows the Google Buzz userbase to create a ficticious significant other based on words in public buzz.

If you're considering building a new application, it's definitely worth considering integrating with an API and doing something cool!

Getting Started

This application is built in stages so you can start with the basics of Google App Engine, and work your way towards App Engine's more advanced features.

In order to work with this application in stages, you must have Mercurial installed and then run:

hg clone https://gfemmebot.googlecode.com/hg/ gfemmebot

This will clone the gfemmebot Mercurial repository to a local working copy on your hard drive.

Once done, you're now ready to start working with gfemmebot. gfemmebot is composed in 4 stages. The stages are:

stage1: Hello World example, your femmebot can greet you.
stage2: Adds XMPP integration so that your femmebot can greet you via XMPP.
stage3: Adds Buzz API support so that your femmebot knows random words.
stage4: Adds Markov chaining support, allowing your femmebot to 'speak'.

Each stage is a separate Mercurial branch in the repository. To checkout a stage, run one of the following commands:

hg up -C stage1
hg up -C stage2
hg up -C stage3
hg up -C stage4

To see what changes in each stage, run one of the following commands:

hg diff -r stage1
hg diff -r stage2
hg diff -r stage3
hg diff -r stage4

Running the Development Server

To run each stage locally, checkout the stage you want to run, then run:

cd /path/where/you/cloned/gfemmebot
dev_appserver.py gfemmebot/

Uploading Your App to Google App Engine

Finally, to upload gfemmebot to Google App Engine and run it, you must first change the app.yaml file to contain your own App ID. For example, if you take a look at the app.yaml file located in any of the stages, you'll see the first line reads:

application: gfemmebot

But you probably don't own the gfemmebot application ID with App Engine. As such, you must go to:

http://code.google.com/appengine/

and register your own application. Then, take your application's ID and change the line in app.yaml to read:

application: yourfemmebotapp

Additional Resources

Google App Engine is well documented with a thriving community. To get in contact with documentation, the community, or a Google engineer, use the following links:

Documentation: http://code.google.com/appengine/docs/
Forums: http://code.google.com/appengine/community.html

To find out more about Google App Engine quotas, see here:

Quotas: http://code.google.com/appengine/docs/quotas.html
Billing: http://code.google.com/appengine/docs/billing.html

Contributing To gfemmebot

If you think you've found a bug in gfemmebot, feel free to submit a patch or report the issue at the gfemmebot project site:

http://code.google.com/p/gfemmebot/
Powered by Google Project Hosting