lunch_announcements/lunch_announcements.rb
2019-08-16 09:09:42 -04:00

35 lines
873 B
Ruby
Executable file
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env ruby
# coding: utf-8
#
# Send a Lunch Announcement.
#
# ENV vars required:
# - TO - the numbers to send to, comma delimited
# - FROM - the Twilio number to send from
# - TWILIO_ACCOUNT_SID - The Twilio Account SID
# - TWILIO_AUTH_TOKEN - The Twilio secret auth token
require 'date'
require 'twilio-ruby'
require_relative 'lib/lunch_scraper'
REQUIRED_ENV = %w(TO FROM TWILIO_ACCOUNT_SID TWILIO_AUTH_TOKEN).freeze
REQUIRED_ENV.each do |req|
raise "Missing ENV var #{req}" if ENV[req].nil?
end
lunch = LunchScraper.new(Date.today)
menu = lunch.today
client = Twilio::REST::Client.new(ENV['TWILIO_ACCOUNT_SID'], ENV['TWILIO_AUTH_TOKEN'])
destinations = ENV['TO'].split(',')
destinations.each do |to|
client.messages.create(
from: ENV['FROM'],
to: to,
body: "TODAY'S FOUSE LUNCH MENU:\n\n#{menu.join("\n")}\n\n❤ Lunchbot"
)
end