you know the drill - this is a call for boulder/denver rubyists to get together and talk shop. drop me a note if you''re interested and i''ll put together a list and plan a meeting over coffee, beers, or both ;-) -a -- ==============================================================================| email :: ara [dot] t [dot] howard [at] noaa [dot] gov | phone :: 303.497.6469 | although gold dust is precious, when it gets in your eyes, it obstructs | your vision. --hsi-tang ===============================================================================
On Fri, Apr 22, 2005 at 01:28:47PM -0600, Ara.T.Howard wrote:> you know the drill - this is a call for boulder/denver rubyists to get > together and talk shop. drop me a note if you''re interested and i''ll > put together a list and plan a meeting over coffee, beers, or both ;-)Count me in. -- ======================================================================= Jeremy Hinegardner jeremy-eg9WJcVQRd1EMKyauTCisw@public.gmane.org
On Fri, 22 Apr 2005, Jeremy Hinegardner wrote:> > On Fri, Apr 22, 2005 at 01:28:47PM -0600, Ara.T.Howard wrote: >> you know the drill - this is a call for boulder/denver rubyists to get >> together and talk shop. drop me a note if you''re interested and i''ll >> put together a list and plan a meeting over coffee, beers, or both ;-) > > Count me in.done. boulder or denver? -a -- ==============================================================================| email :: ara [dot] t [dot] howard [at] noaa [dot] gov | phone :: 303.497.6469 | although gold dust is precious, when it gets in your eyes, it obstructs | your vision. --hsi-tang ===============================================================================
Being from south Denver, I vote for Denver. -----Original Message----- From: rails-bounces-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org [mailto:rails-bounces-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org] On Behalf Of Ara.T.Howard Sent: Friday, April 22, 2005 4:26 PM To: Jeremy Hinegardner Cc: rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org Subject: Re: [Rails] boulder_denver.rb On Fri, 22 Apr 2005, Jeremy Hinegardner wrote:> > On Fri, Apr 22, 2005 at 01:28:47PM -0600, Ara.T.Howard wrote: >> you know the drill - this is a call for boulder/denver rubyists to >> get together and talk shop. drop me a note if you''re interested and >> i''ll put together a list and plan a meeting over coffee, beers, or >> both ;-) > > Count me in.done. boulder or denver? -a -- ==============================================================================| email :: ara [dot] t [dot] howard [at] noaa [dot] gov | phone :: 303.497.6469 | although gold dust is precious, when it gets in your eyes, it | obstructs your vision. --hsi-tang ==============================================================================_______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails
> you know the drill - this is a call for boulder/denver rubyists to get > together and talk shop. drop me a note if you''re interested and i''ll put > together a list and plan a meeting over coffee, beers, or both ;-)Sorry for the late reply; count me in too. I vote for Denver (I''m also from south Denver). -- Nathan Wright http://www.brandalism.com
(i''ll buy a beer for the first person to get this running under windows in less than 20 lines of code - everything but the email bit should work though. hint: Net::SMTP.start needs a few more parameters for those not running sendmail locally) ==============================================================================file: boulder_denver.rb ============================================================================== you = ENV[''USER''] || ENV[''USERNAME''] || ENV[''LOGNAME''] Boulder_Denver_rb::welcomes you BEGIN { require ''singleton'' require ''net/smtp'' class Boulder_Denver_rb include Singleton class << self def method_missing(m, *a, &b) @instance ||= instance if instance.respond_to? m instance.send(m, *a, &b) else super end end end MEMBERS ''Bradley Todd <todd.bradley-P8cwnjaIe3pBDgjK7y7TUQ@public.gmane.org>'', ''Chris Nuernberger <cnuernberger-aFjLXrbHHu+FYO+0FbZ2QdBPR1lH4CV8@public.gmane.org>'', ''colotechpro-/E1597aS9LQAvxtiuMwx3w@public.gmane.org'', ''Dave Ringoen <email-aMBdsrFCgW+KfZpkr/XK+Q@public.gmane.org>'', ''David Geary <sabreware-ihVZJaRskl1bRRN4PJnoQQ@public.gmane.org>'', ''dclements-998T6i6UJS2+XT7JhA+gdA@public.gmane.org'', ''DeLynn Berry <delynnb-+9FQAZFMD0vCste6SmUHRhL4W9x8LtSr@public.gmane.org>'', ''doug.fales-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org'', ''Gavin Kistner <gavin-XtLdkLkwz3ZWk0Htik3J/w@public.gmane.org>'', ''Gavin Kistner <gavin-XtLdkLkwz3ZWk0Htik3J/w@public.gmane.org>'', ''jcfiala-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org'', ''Jeff Rose <rosejn-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>'', ''jeremy-eg9WJcVQRd1EMKyauTCisw@public.gmane.org'', ''jim <jim-rhf1kIDhBaeB8E1WFlbJj6xOck334EZe@public.gmane.org>'', ''Jon Raphaelson <jonraphaelson-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>'', ''justin.crawford-nAVgrAeOEc+HXe+LvDLADg@public.gmane.org'', ''Kevin Williams <kevin-P4szbAuRZ8UqDJ6do+/SaQ@public.gmane.org>'', ''Lee Marlow <lmarlow-/E1597aS9LQAvxtiuMwx3w@public.gmane.org>'', ''Michael Garriss <mdg-Hk3lrmVzaNf27n0AD6TdI1W0swu0l0bM@public.gmane.org>'', ''Mike Clark <mike-BLA3tSOjuzdl57MIdRCFDg@public.gmane.org>'', ''Nathan Wright <nathan-t2/9jZt1M8BPjb27YXYYTQ@public.gmane.org>'', ''Rick Nooner <rick-XC9AZHEmOP6sTnJN9+BGXg@public.gmane.org>'', ''Tom Wilcoxen <tomwilcoxen-/E1597aS9LQAvxtiuMwx3w@public.gmane.org>'', COORDINATOR = ''ara.t.howard-32lpuo7BZBA@public.gmane.org'' def readline query begin require ''readline'' Readline::readline "#{ query } > ", true rescue LoadError print "#{ query } > "; gets end.strip end def prompt query, default = nil if default resp = readline "#{ query } [#{ default }]" resp.empty? ? default : resp else loop do resp = readline "#{ query }" break resp unless resp.empty? end end end def quit; exit; end def email from_addr, to_addr, subject, msg msg = [ "To: #{ to_addr }", "From: #{ from_addr }", "Subject: [boulder_denver.rb] #{ subject }", "\n#{ msg }" ].join "\n" @server = prompt "enter mail server name", "localhost" unless @server begin Net::SMTP.start(server){|smtp| smtp.send_message msg, to_addr, from_addr } puts "success: sent \n#{ msg }" rescue => e STDERR.puts "failure: please send msg manually\n#{ msg }" end end def remove from_addr = prompt "enter email address" subject = msg = "remove" email from_addr, COORDINATOR, subject, msg end def join from_addr = prompt "enter email address" matches = MEMBERS.select{|member| member[%r/#{ from_addr }/i]} unless matches.empty? puts "it seems you''ve already joined as <#{ matches.join '' | '' }>" confirm = prompt "should i send anyhow?", "no" return if confirm =~ %r/no/i end subject = msg = "join" email from_addr, COORDINATOR, subject, msg end def volunteer_meeting_location from_addr = prompt "enter email address" location = prompt "enter location" availible_times = prompt "enter availible_times" subject = ''volunteer_meeting_location'' msg = "location <#{ location }> availible_times <#{ availible_times }>" email from_addr, COORDINATOR, subject, msg end def welcomes someone members = MEMBERS.map{|m| "| #{ m }\n"} greeting = <<-greeting | hullo #{ someone }! | | welcome to boulder_denver.rb. we got a got bit of interest and it looks | like we''re spread out between boulder and denver. first order of | business is to take the pulse on how often people think they''ll show up | and how far they will go. my inclination is to have monthly meetings | with the location bouncing between boulder and denver so no one has to | drive too far all the time - but am open to suggestion. i''m working on a | location on campus but would sure appreciate any space people can | volunteer. another consideration is time of day - i assume evening since | most of you voiced preference to beer - but speak up now if you have strong | feelings on the matter. if we can line some up space in the next week | or so we''ll plan a meeting for monday the 23rd of may. | | here''s the current list of members: |\n#{ members } | | look forward to meeting you all. | | sincerely, | | #{ Boulder_Denver_rb::COORDINATOR } | greeting puts greeting.gsub(%r/^\s*\|/m,'''') choices = { ''r'' => ''remove'', ''j'' => ''join'', ''v'' => ''volunteer_meeting_location'', ''q'' => ''quit'', } div = "-" * 16 loop do meth loop do puts div, choices.map{|c,m| "#{ c } => #{ m }"}.join("\n"), div choice = prompt("choice", "join").downcase[%r/^./] break choices[choice] if choices.has_key? choice end send meth end end end } ============================================================================== -a -- ==============================================================================| email :: ara [dot] t [dot] howard [at] noaa [dot] gov | phone :: 303.497.6469 | renunciation is not getting rid of the things of this world, but accepting | that they pass away. --aitken roshi ============================================================================== _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails
I don''t have time to do this because I am at work, but it is going to go a little something like this: require ''win32ole'' #use automation to create application, this will create the outlook COM object application = WIN32OLE.new("Outlook.Application") #you don''t have access to the numeric symbolic constants needed to do this, but if you need to know them #look up: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/off2000/htm l/olcstOlItemTypeConstants.asp message = application.CreateItem(0) message.Subject="blah" #expect a warning that a script is trying to access your outlook application here message.Recipients.Add("cnuernberger-aFjLXrbHHu+FYO+0FbZ2QdBPR1lH4CV8@public.gmane.org") #expect another warning that a script is trying to send an email message.Send There is another way, very similar but using the CDO COM interface. This is more appropriate for if you have set up IIS to do stuff. It looks extremely similiar, exception you don''t have to create the message because it starts with: message = WIN32OLE.new("CDO.message") I don''t know if that is worth a beer, but perhaps some juice or maybe a glass of water. Chris -----Original Message----- From: Ara.T.Howard [mailto:Ara.T.Howard-32lpuo7BZBA@public.gmane.org] Sent: Wednesday, May 11, 2005 4:06 PM To: boulder_denver.rb -- Ben Schumacher; Bradley Todd; Chris Nuernberger; colotechpro-/E1597aS9LQAvxtiuMwx3w@public.gmane.org; Dave Ringoen; David Geary; dclements-998T6i6UJS2+XT7JhA+gdA@public.gmane.org; DeLynn Berry; doug.fales-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org; Gavin Kistner; Gavin Kistner; jcfiala-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org; Jeff Rose; jeremy-eg9WJcVQRd1EMKyauTCisw@public.gmane.org; jim; Jon Raphaelson; justin.crawford-nAVgrAeOEc+HXe+LvDLADg@public.gmane.org; Kevin Williams; Lee Marlow; Michael Garriss; Mike Clark; Nathan Wright; Rick Nooner; Tom Wilcoxen Cc: rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org Subject: boulder_denver.rb (i''ll buy a beer for the first person to get this running under windows in less than 20 lines of code - everything but the email bit should work though. hint: Net::SMTP.start needs a few more parameters for those not running sendmail locally) =============================================================================file: boulder_denver.rb ============================================================================= you = ENV[''USER''] || ENV[''USERNAME''] || ENV[''LOGNAME''] Boulder_Denver_rb::welcomes you BEGIN { require ''singleton'' require ''net/smtp'' class Boulder_Denver_rb include Singleton class << self def method_missing(m, *a, &b) @instance ||= instance if instance.respond_to? m instance.send(m, *a, &b) else super end end end MEMBERS ''Bradley Todd <todd.bradley-P8cwnjaIe3pBDgjK7y7TUQ@public.gmane.org>'', ''Chris Nuernberger <cnuernberger-aFjLXrbHHu+FYO+0FbZ2QdBPR1lH4CV8@public.gmane.org>'', ''colotechpro-/E1597aS9LQAvxtiuMwx3w@public.gmane.org'', ''Dave Ringoen <email-aMBdsrFCgW+KfZpkr/XK+Q@public.gmane.org>'', ''David Geary <sabreware-ihVZJaRskl1bRRN4PJnoQQ@public.gmane.org>'', ''dclements-998T6i6UJS2+XT7JhA+gdA@public.gmane.org'', ''DeLynn Berry <delynnb-+9FQAZFMD0vCste6SmUHRhL4W9x8LtSr@public.gmane.org>'', ''doug.fales-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org'', ''Gavin Kistner <gavin-XtLdkLkwz3ZWk0Htik3J/w@public.gmane.org>'', ''Gavin Kistner <gavin-XtLdkLkwz3ZWk0Htik3J/w@public.gmane.org>'', ''jcfiala-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org'', ''Jeff Rose <rosejn-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>'', ''jeremy-eg9WJcVQRd1EMKyauTCisw@public.gmane.org'', ''jim <jim-rhf1kIDhBaeB8E1WFlbJj6xOck334EZe@public.gmane.org>'', ''Jon Raphaelson <jonraphaelson-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>'', ''justin.crawford-nAVgrAeOEc+HXe+LvDLADg@public.gmane.org'', ''Kevin Williams <kevin-P4szbAuRZ8UqDJ6do+/SaQ@public.gmane.org>'', ''Lee Marlow <lmarlow-/E1597aS9LQAvxtiuMwx3w@public.gmane.org>'', ''Michael Garriss <mdg-Hk3lrmVzaNf27n0AD6TdI1W0swu0l0bM@public.gmane.org>'', ''Mike Clark <mike-BLA3tSOjuzdl57MIdRCFDg@public.gmane.org>'', ''Nathan Wright <nathan-t2/9jZt1M8BPjb27YXYYTQ@public.gmane.org>'', ''Rick Nooner <rick-XC9AZHEmOP6sTnJN9+BGXg@public.gmane.org>'', ''Tom Wilcoxen <tomwilcoxen-/E1597aS9LQAvxtiuMwx3w@public.gmane.org>'', COORDINATOR = ''ara.t.howard-32lpuo7BZBA@public.gmane.org'' def readline query begin require ''readline'' Readline::readline "#{ query } > ", true rescue LoadError print "#{ query } > "; gets end.strip end def prompt query, default = nil if default resp = readline "#{ query } [#{ default }]" resp.empty? ? default : resp else loop do resp = readline "#{ query }" break resp unless resp.empty? end end end def quit; exit; end def email from_addr, to_addr, subject, msg msg = [ "To: #{ to_addr }", "From: #{ from_addr }", "Subject: [boulder_denver.rb] #{ subject }", "\n#{ msg }" ].join "\n" @server = prompt "enter mail server name", "localhost" unless @server begin Net::SMTP.start(server){|smtp| smtp.send_message msg, to_addr, from_addr } puts "success: sent \n#{ msg }" rescue => e STDERR.puts "failure: please send msg manually\n#{ msg }" end end def remove from_addr = prompt "enter email address" subject = msg = "remove" email from_addr, COORDINATOR, subject, msg end def join from_addr = prompt "enter email address" matches = MEMBERS.select{|member| member[%r/#{ from_addr }/i]} unless matches.empty? puts "it seems you''ve already joined as <#{ matches.join '' | '' }>" confirm = prompt "should i send anyhow?", "no" return if confirm =~ %r/no/i end subject = msg = "join" email from_addr, COORDINATOR, subject, msg end def volunteer_meeting_location from_addr = prompt "enter email address" location = prompt "enter location" availible_times = prompt "enter availible_times" subject = ''volunteer_meeting_location'' msg = "location <#{ location }> availible_times <#{ availible_times }>" email from_addr, COORDINATOR, subject, msg end def welcomes someone members = MEMBERS.map{|m| "| #{ m }\n"} greeting = <<-greeting | hullo #{ someone }! | | welcome to boulder_denver.rb. we got a got bit of interest and it looks | like we''re spread out between boulder and denver. first order of | business is to take the pulse on how often people think they''ll show up | and how far they will go. my inclination is to have monthly meetings | with the location bouncing between boulder and denver so no one has to | drive too far all the time - but am open to suggestion. i''m working on a | location on campus but would sure appreciate any space people can | volunteer. another consideration is time of day - i assume evening since | most of you voiced preference to beer - but speak up now if you have strong | feelings on the matter. if we can line some up space in the next week | or so we''ll plan a meeting for monday the 23rd of may. | | here''s the current list of members: |\n#{ members } | | look forward to meeting you all. | | sincerely, | | #{ Boulder_Denver_rb::COORDINATOR } | greeting puts greeting.gsub(%r/^\s*\|/m,'''') choices = { ''r'' => ''remove'', ''j'' => ''join'', ''v'' => ''volunteer_meeting_location'', ''q'' => ''quit'', } div = "-" * 16 loop do meth loop do puts div, choices.map{|c,m| "#{ c } => #{ m }"}.join("\n"), div choice = prompt("choice", "join").downcase[%r/^./] break choices[choice] if choices.has_key? choice end send meth end end end } ============================================================================= -a -- =============================================================================| email :: ara [dot] t [dot] howard [at] noaa [dot] gov | phone :: 303.497.6469 | renunciation is not getting rid of the things of this world, but accepting | that they pass away. --aitken roshi ============================================================================= _______________________________________________ Rails mailing list Rails-1W37MKcQCpIf0INCOvqR/iCwEArCW2h5@public.gmane.org http://lists.rubyonrails.org/mailman/listinfo/rails