lib/bender/main.rb in bender-bot-0.4.5 vs lib/bender/main.rb in bender-bot-0.4.6

- old
+ new

@@ -175,18 +175,23 @@ def set_room_name_and_topic room_id, incidents, hipchat, bot room = hipchat[room_id] new_room = room.get_room open_incidents = incidents.select do |i| - status = normalize_value i['fields']['status'] - !(status =~ /resolved|closed/i) + status = normalize_value i['fields']['status'] + severity = short_severity(i['fields'][SEVERITY_FIELD]['value']), + is_open = !(status =~ /resolved|closed/i) + is_severe = severity =~ /(SEV1|SEV2)/i + is_open && is_severe end + log.warn open_incidents: open_incidents + @room_name ||= bot.store['primary_room_name'] || new_room['name'] @room_topic ||= bot.store['primary_room_topic'] || new_room['topic'] - @open = 1 unless defined? @open + @open = nil unless defined? @open log.info \ primary_room_name: bot.store['primary_room_name'], primary_room_topic: bot.store['primary_room_topic'], new_room_name: new_room['name'], @@ -194,30 +199,30 @@ room_name: @room_name, room_topic: @room_topic, open: @open if open_incidents.empty? - if @open + if @open.nil? || @open > 0 new_room['name'] = '[NONE] Production Incident' - new_room['topic'] = 'Good news everyone! No open incidents at the moment' + new_room['topic'] = 'Good news everyone! No high-severity incidents at the moment' begin room.update_room(new_room) rescue NoMethodError log.warn 'NoMethodError in set_room_name_and_topic' end end @open = 0 else - if @open.zero? + if @open.nil? || @open.zero? @room_name = new_room['name'] @room_topic = new_room['topic'] end unless @open == open_incidents.size new_room['name'] = '[IN PROGRESS] Production Incident' - tha_news = open_incidents.size == 1 ? "There's an open incident" : "There are #{open_incidents.size} open incidents" + tha_news = open_incidents.size == 1 ? "There's a high-severity incident" : "There are #{open_incidents.size} high-severity incidents" new_room['topic'] = "Terrible news everyone! #{tha_news}" begin room.update_room(new_room) rescue NoMethodError log.warn 'NoMethodError in set_room_name_and_topic'