Class: Lita::Handlers::GithubStatus
- Inherits:
-
Handler
- Object
- Handler
- Lita::Handlers::GithubStatus
- Defined in:
- lib/lita/handlers/github_status.rb
Constant Summary collapse
- BASE_URL =
'https://status.github.com/api'
Instance Method Summary collapse
- #status(response) ⇒ Object
- #status_last_message(response) ⇒ Object
- #status_messages(response) ⇒ Object
Instance Method Details
#status(response) ⇒ Object
10 11 12 13 14 15 16 17 18 |
# File 'lib/lita/handlers/github_status.rb', line 10 def status(response) data = MultiJson.load(http.get(BASE_URL + '/status.json').body) now = Time.now updated = Time.parse data['last_updated'] seconds_ago = (now - updated).round response.reply "Status: #{data['status']} (#{seconds_ago} seconds ago)" end |
#status_last_message(response) ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/lita/handlers/github_status.rb', line 20 def (response) data = MultiJson.load(http.get(BASE_URL + '/last-message.json').body) response.reply "Status: #{data['status']}\n" \ "Message: #{data['body']}\n" \ "Time: #{Time.parse data['created_on']}" end |
#status_messages(response) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/lita/handlers/github_status.rb', line 28 def (response) data = MultiJson.load(http.get(BASE_URL + '/messages.json').body) replies = data.map do || "[#{['status']}] #{['body']} (#{Time.parse ['created_on']})" end replies.each do |reply| response.reply reply end end |