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