Thanks a lot Raj -- this could be useful. Looks like it is mainly to fetch and synch leads though. Not sure if it will help me with the requestCampaign call but I am also not a dev so may be missing something.
Also, I don't know if you're interested in writing some ruby yourself, but if so I would most definitely suggest checking out Savon (http://savonrb.com/) to handle the soap requests!
Basically what you would do is just check out how the XML request for requestCampaign should be structured and then talk to Savon in way that it knows how to structure the request in the proper way for you!