Class: Lita::Handlers::Trivia

Inherits:
Handler
  • Object
show all
Defined in:
lib/lita/handlers/trivia.rb

Defined Under Namespace

Classes: Jeopardizer

Constant Summary collapse

TRIVIA_API_URL =
URI.parse('http://jservice.io/api/random')
REDIS_TRIVIA_KEY =
'current_trivia'.freeze

Instance Method Summary collapse

Instance Method Details

#handle_answer_request(req) ⇒ Object



35
36
37
38
39
# File 'lib/lita/handlers/trivia.rb', line 35

def handle_answer_request(req)
  res = Jeopardizer.try_answer(redis, req.match_data[1])
  redis.del REDIS_TRIVIA_KEY if res == :correct
  req.reply res
end

#handle_solution_request(req) ⇒ Object



29
30
31
32
33
# File 'lib/lita/handlers/trivia.rb', line 29

def handle_solution_request(req)
  answer = Jeopardizer.answer(redis)
  redis.del REDIS_TRIVIA_KEY
  req.reply answer
end

#handle_trivia_request(req) ⇒ Object



22
23
24
25
26
27
# File 'lib/lita/handlers/trivia.rb', line 22

def handle_trivia_request(req)
  payload = Net::HTTP.get_response TRIVIA_API_URL
  redis.set REDIS_TRIVIA_KEY, payload.body
  title_and_question = Jeopardizer.title_and_question(redis)
  req.reply(title_and_question)
end