Guest User

Untitled

a guest
Apr 14th, 2018
248
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. # UNC Basketball Text Message Notifier
  2. # By Blake Watters <blake@near-time.com>
  3. # Date: 2007-11-09
  4. require 'rubygems'
  5. require 'icalendar'
  6. require 'net/smtp'
  7. require 'date'
  8. require 'erb'
  9. require 'yaml'
  10.  
  11. def send_notification(event)
  12. config = YAML.load(ERB.new(File.read('config.yml')).result)
  13. start_time = event.dtstart.strftime('%I:%M%p')
  14. time_descriptor = (event.dtstart.hour < 19) ? 'Today' : 'Tonight'
  15. home_or_away = (event.location == 'Dean E. Smith Center') ? 'Home' : 'Away'
  16. message = "UNC #{home_or_away} Game - #{event.summary} #{time_descriptor} @ #{start_time}"
  17. user = config['smtp']['user']
  18. password = config['smtp']['password']
  19. Net::SMTP.start(config['smtp']['host'], 25, 'mail.uncbasketballfans.com', user, password, :login) do |smtp|
  20. smtp.send_message(message, *config['recipients'])
  21. end
  22. end
  23.  
  24. schedule_file = File.open('schedule.ical')
  25. calendars = Icalendar.parse(schedule_file)
  26. schedule = calendars.first
  27. schedule.events.each do |event|
  28. if event.dtstart == Date.today
  29. send_notification(event)
  30. end
  31. end
Add Comment
Please, Sign In to add comment