           msg.send ":boom:"
         else
           msg.send "Something went weird."
+
+  robot.respond /pager( me)? (.+) (\d+)$/i, (msg) ->
+    msg.finish()
+    campfireUserToPagerDutyUser msg, msg.message.user, (user) ->
+
+      userId = user.id
+      return unless userId
+
+      if !msg.match[2] || msg.match[2] == 'me'
+        msg.reply "Please specify a schedule with 'pager me ops 60.'' Use 'pager schedules' to list all schedules."
+        return
+
+      withScheduleMatching msg, msg.match[2], (matchingSchedule) ->
+
+        return unless matchingSchedule.id
+
+        start     = moment().format()
+        minutes   = parseInt msg.match[3]
+        end       = moment().add('minutes', minutes).format()
+        override  = {
+          'start':     start,
+          'end':       end,
+          'user_id':   userId
+        }
+        withCurrentOncall msg, matchingSchedule, (old_username, schedule) ->
+          data = { 'override': override }
+          pagerDutyPost msg, "/schedules/#{schedule.id}/overrides", data, (json) ->
+            if json.override
+              start = moment(json.override.start)
+              end = moment(json.override.end)
+              msg.send "Rejoice, #{old_username}! #{json.override.user.name} has the pager on #{schedule.name} until #{end.format()}"
+
 
   # who is on call?
   robot.respond /who('s|s| is)? (on call|oncall)( for (.+))?/i, (msg) ->

            , 5000

  robot.respond /(?:pager|major)(?: me)? ack(?:nowledge)? (.+)$/i, (msg) ->
    incidentNumbers = parseIncidentNumbers(msg.match[1])

    # only acknowledge triggered things, since it doesn't make sense to re-acknowledge if it's already in re-acknowledge

      msg.send buffer

  robot.respond /(pager|major)( me)? note ([\d\w]+) (.+)$/i, (msg) ->
    msg.finish()

    incidentId = msg.match[3]
    content = msg.match[4]

