[ANN] impostor 0.0.1 Released
impostor version 0.0.1 has been released!
- by Mike Mondragon
- http://impostor.rubyforge.org/
Makes automatic posts to the following forum applications:
- Web Wiz Forums (WWF) 7.9
- Web Wiz Forums (WWF) 8.0
- PHP Bullitin Board (phpBB) 2.0 (2.0.22)
SYNOPSIS:
# config yaml has options specefic to wwf79, wwf80, phpbb2, etc.
# read the impostor docs for options to the kind of forum in use
# config can be keyed by symbols or strings
config = YAML::load_file('conf/impostor.yml')
post = WWW::Impostor.new(config)
message = %q{hello world is to application
programmers as tea pots are to graphics programmers}
# your application stores forum and topic ids
post.post(forum=5,topic=10,message)
# make a new topic
subject = "about programmers..."
post.new_topic(forum=7,subject,message)
post.logout
Changes:
0.0.1 / 2008-02-02
- 1 major enhancement
- Birthday!
by Mike Mondragon
http://impostor.rubyforge.org/
Collect your contacts with the Blackbook Gem
Dave Myron of Contentfree wrote a great Gem that he’s
named Blackbook. The Gem is hosted in the
Contentfree collection on Ruby
Forge. Blackbook imports
contacts from a number of sources and currently supports AOL Mail, GMail, Hotmail,
Yahoo! Mail, and contacts from CSV file. Blackbook exports the contacts that have
been collected as XML and VCard formatted text or as an Array of Hashes
with :name and :email keys.
be nice to ducks or I will mock you
When I first started programming Ruby I lurked on the Seattle.rb mailing list and then gathered the courage to finally attend a meeting. At the time I had written a Perl script that did the basics of what MMS2R does and it was lucky for me that Aaron Patterson who coincidently maintains WWW::Mechanize was also a member of Seattle.rb. My Perl script was using Perl’s original version of WWW::Mechanize to scrape pictures from MMS that were sent by mobile subscribers to Sprint.
I knew that it would be a great experience to me if I converted the Perl script into a Gem. I would be contributing to the Ruby community, I would be learning how to author a Gem, and I would improve on my coding and testing abilities.
A testing problem I was perplexed with was how should I test my code that reaches out to Sprint’s content servers to scrape images? The other cellular carriers actually deliver their images mime-encoded in the MMS payload so testing them in a closed environment is simple enough with a fixture.
Posted in Ruby, Seattle.rb |
mms2r 2.0.0 Released
mms2r version 2.0.0 has been released!
Upcoming!
- A Mobile Rails PeepCode PDF book is in the works with Luke Francl
- A Mobile Rails RailsConf 2008 topic was submited with Luke Francl … we are still awaiting to find out if we’ve been accepted to present.
DESCRIPTION:
MMS2R is a library that decodes the parts of an MMS message to disk while
stripping out advertising injected by the mobile carriers. MMS messages are
multipart email and the carriers often inject branding into these messages. Use
MMS2R if you want to get at the real user generated content from a MMS without
having to deal with the cruft from the carriers.
If MMS2R is not aware of a particular carrier no extra processing is done to the
MMS other than decoding and consolidating its media.
Contact the author to add additional carriers to be processed by the library.
Suggestions and patches appreciated and welcomed!
Corpus of carriers currently processed by MMS2R:
- Alltel: message.alltel.com
- AT&T/Cingular/Legacy: mms.att.net, txt.att.net, mmode.com, mms.mycingular.com,
cingularme.com - Dobson/Cellular One: mms.dobson.net
- Helio: mms.myhelio.com
- Hutchison 3G UK Ltd: mms.three.co.uk
- LUXGSM S.A.: mms.luxgsm.lu
- NetCom (Norway): mms.netcom.no
- Nextel: messaging.nextel.com
- O2 Germany: mms.o2online.de
- Orange & Regional Oranges: orangemms.net, mmsemail.orange.pl, orange.fr
- PXT New Zealand: pxt.vodafone.net.nz
- Sprint: pm.sprint.com, messaging.sprintpcs.com
- T-Mobile: tmomail.net
- Verizon: vzwpix.com, vtext.com
Changes:
1.2.0 / 2008-01-23 (Skwisgaar Skwigelf – fastest guitarist alive)
- added support for pxt.vodafone.net.nz PXT New Zealand
- added support for mms.o2online.de O2 Germany
- added support for orangemms.net Orange UK
- added support for txt.att.net AT&T
- added support for mms.luxgsm.lu LUXGSM S.A.
- added support for mms.netcom.no NetCom (Norway)
- added support for mms.three.co.uk Hutchison 3G UK Ltd
- removed deprecated #get_number use #number
- removed deprecated #get_subject use #subject
- removed deprecated #get_body use #body
- removed deprecated #get_media use #default_media
- removed deprecated #get_text use #default_text
- removed deprecated #get_attachment use #attachment
- fixed error when Sprint content server responds 500
- better yaml configs
- moved TMail dependency from Rails ActionMailer SVN to ‘official’ Gem
- ::new greedily processes MMS unless otherwise specified as an initialize
option :process => :lazy - logger moved to initialize option :logger => some_logger
- testing using mocks and stubs instead of duck raped Net::HTTP
- fixed typo in name of method #attachement to #attachment
- fixed broken downloading of Sprint videos
Gentoo init.d script for a Rails mongrel cluster
Here is my Gentoo init.d script for a mongrel cluster running a Rails app.
/etc/init.d/mongrel
#!/sbin/runscript depend() { need net use apache2 mysql after apache2 mysql } start() { ebegin "Starting mongrels" start-stop-daemon --start --chuid $USER --exec $MONGREL \ -- cluster::start -C $MONGREL_CONF eend $? } stop() { ebegin "Stopping mongrels" start-stop-daemon --start --chuid $USER --exec $MONGREL \ -- cluster::stop -C $MONGREL_CONF eend $? } status() { ebegin "mongrel status" start-stop-daemon --start --chuid $USER --exec $MONGREL \ -- cluster::status -C $MONGREL_CONF eend $? }
/etc/conf.d/mongrel
Gentoo will load script variables for an init.d script from the /etc/conf.d directory where the conf file is the same name is the init.d file. Thus in /etc/conf.d/mongrel
USER=deployer:deployer MONGREL=/usr/bin/mongrel_rails MONGREL_CONF=/var/www/mysite/rails_app/shared/mongrel_cluster.conf
Some things to point out:
- this integrates perfectly with Gentoo’s rc-status command
- the mongrel cluster will be running as the user/group defined in USER (i.e. safer non-root)
- mongrel_cluster.conf is a standard mongrel cluster configuration that you would have generated with Capistrano, Vlad or written by hand
- start-stop-daemon command is executed in —start mode because all of the commands ‘start’ ‘stop’ ‘restart’ ‘status’ are delegated to the mongrel_rails executable
- because you are running the commands as a non-root user your Capistrano or Vlad tasks (rake vlad:start_app) will still work from your remote shell (you’re not running as root through ssh right!?)
Last blog post of 2007?
Synopsis
I’ve been in a writers block for useful bits of information to post on my blog. I guess I’ll give a summary of things I’ve seen and done lately and perhaps that will inspire others.
Work
I started my own S-Corp. to work freelance out of over the summer. I was motivated to do so after attending the The Business of Rails session at RubyConf 2007. And I’ve gotten a lot of great tips on how to be a business person in Rails from the Google group Ruby on Rails meets the business world
I started consulting through Contentfree over the summer. They are a Rails consulting shop and have been working on a startup for their Eachday photo and memories sharing site. Its been great to working with Dave Myron there. Dave is one of the best coders and software designers I’ve ever worked with and I’m not saying that just to get more work!
RubyConf
I went to RubyConf 2007. It was fun. I played a lot of Werewolf (see #53) in the evenings. Sadly, it felt like the close knit party was/is over in the Ruby community since all the momentum that Rails has brought to Ruby is bringing in the masses (I’m in that group, one of “those guys”). My guess is that RailsConf 2008 is going to feel like a JavaOne, and RubyConf 2008 will feel like RailsConf 2007 with to many tracks.
#fauna
At RubyConf I got to meet the people I’ve met in the #fauna channel on irc.freenode.net. I think some of the greatest Ruby code and ideas I’ve been exposed to are from people in that channel. Shout outs to adamblock, agile, evn, lifo, heaveysixer, loincloth, defunkt, and others.
Evan Weaver
Evan is a genius and pretty cool dude.
Pratik
Pratik is a genius and is very active on RailsCore contributions. He says Just Say No To Named Spaced Models so I guess you should ignore this post: Rails Models in a Namespace
Chris Wanstrath
Chris is a genius is full of ambition Ambition Google Group
ditching Typo
I’m probably going to ditch this Typo blog when I can make time to do it. I’ll either go with an another Rails based blog called Mephisto or Evan Weaver’s Bax blog which uses scripts and Apache SSI and is hidden on fauna’s SVN on Ruby Forge: ‘svn co svn://rubyforge.org/var/svn/fauna/bax’
like Ozimodo
I’ve been thinking about doing a Camping based tumblelog. I even paid a designer to make a template for it. I’ll blog about that latter. It will be like Ozimodo and probably steel code from it.
imPOSTor
I’m sitting on a Gem called imPOSTor that will post comments to forums such as phpBB and Web Wiz Forums . I’ll probably release within the month. It has been working inside a production grade private Rails app for over a month so I think its ready to be released. “The imPOSTor library is used to automate the act of posting comments and data to forums such as phpBB and WWF. impostor encapsulates the work of posting to these forums using a common (ruby) interface.”
MMS2R
I’m about to finish the next major version of MMS2R (2.0) . I think I’ve found the best architecture for it be maintained for the long haul. Each release of MMS2R is named after a character in the Metalocalypse cartoon.
Speaking of MMS2R Luke Francl and I submitted a MMS + Rails proposal for RubyConf 2008 called “Mobile Messaging with Rails”. Luke and I are also writing a PeepCode book about Rails+MMS+Mobile phones.
Posted in Apache, Camping, Gems, MMS2R, Rails, Ruby, Sasquatch, Typo |
wrapping processes in IO.popen and festivaltts4r
There is a cool gem called Festival TTS for Ruby . What it does is take text, pass it into the The Festival Speech Synthesis System , then transform the WAV from Festival into an MP3. festivaltts4r provides a programming interface to use its functionality in an application. The project includes a Flash media player so that you can use festivaltts4r easily in a Rails application. Listen to their example Rails application. To use the Flash player you need to check out the project as a plugin to your Rails app like so: