- record.data['action'] = ['close_rt']
- record.data['takeaction'] = True
- record.data['message'] = record.data['message_series'][0]
- record.data['stage'] = 'monitor-end-record'
- record.data['save-act-all'] = True
- record.data['action-level'] = 0
-
- elif 'actinoneweek' in record.data['stage']:
- if delta >= 7 * SPERDAY:
- print "checkStageAndTime: transition to next stage actintwoweeks"
- record.data['email'] = TECH | PI
- record.data['stage'] = 'stage_actintwoweeks'
- record.data['message'] = record.data['message_series'][1]
- record.data['action'] = ['nocreate' ]
- record.data['time'] = current_time # reset clock for waitforever
- record.data['takeaction'] = True
- record.data['save-act-all'] = True
- record.data['action-level'] = 1
- elif delta >= 3* SPERDAY and not 'second-mail-at-oneweek' in record.data:
- print "checkStageAndTime: second message in one week"
- record.data['email'] = TECH
- record.data['message'] = record.data['message_series'][0]
- record.data['action'] = ['sendmailagain-waitforoneweekaction' ]
- record.data['second-mail-at-oneweek'] = True
- record.data['takeaction'] = False
- record.data['save-act-all'] = True
- record.data['action-level'] = 0
- else:
- record.data['message'] = None
- record.data['action'] = ['waitforoneweekaction' ]
- record.data['takeaction'] = False
- record.data['save-act-all'] = False
- record.data['action-level'] = 0
- print "checkStageAndTime: ignoring this record for: %s" % self.hostname
- #return None # don't send if there's no action
-
- elif 'actintwoweeks' in record.data['stage']:
- if delta >= 7 * SPERDAY:
- print "checkStageAndTime: transition to next stage waitforever"
- record.data['email'] = TECH | PI | USER
- record.data['stage'] = 'stage_waitforever'
- record.data['message'] = record.data['message_series'][2]
- record.data['action'] = ['suspendslices']
- record.data['time'] = current_time # reset clock for waitforever
- record.data['takeaction'] = True
- record.data['save-act-all'] = True
- record.data['action-level'] = 2
- elif delta >= 3* SPERDAY and not 'second-mail-at-twoweeks' in record.data:
- print "checkStageAndTime: second message in one week for stage two"
- record.data['email'] = TECH | PI
- record.data['message'] = record.data['message_series'][1]
- record.data['action'] = ['sendmailagain-waitfortwoweeksaction' ]
- record.data['second-mail-at-twoweeks'] = True
- record.data['takeaction'] = False
- record.data['save-act-all'] = True
- record.data['action-level'] = 1
- else:
- record.data['message'] = None
- record.data['takeaction'] = False
- record.data['action'] = ['waitfortwoweeksaction']
- record.data['save-act-all'] = False
- print "checkStageAndTime: second message in one week for stage two"
- record.data['action-level'] = 1
- #return None # don't send if there's no action
-
- elif 'ticket_waitforever' in record.data['stage']:
- record.data['email'] = TECH
- record.data['takeaction'] = True
- if 'first-found' not in record.data:
- record.data['first-found'] = True
- record.data['log'] += " firstfound"
- record.data['action'] = ['ticket_waitforever']
- record.data['message'] = None
- record.data['time'] = current_time
- record.data['save-act-all'] = True
- record.data['action-level'] = 2
- else:
- if delta >= 7*SPERDAY:
- record.data['action'] = ['ticket_waitforever']
- record.data['message'] = None
- record.data['time'] = current_time # reset clock
- record.data['save-act-all'] = True
- record.data['action-level'] = 2
- else:
- record.data['action'] = ['ticket_waitforever']
- record.data['message'] = None
- record.data['takeaction'] = False
- record.data['save-act-all'] = False
- record.data['action-level'] = 2
- #return None
-
- elif 'waitforever' in record.data['stage']:
- # more than 3 days since last action
- # TODO: send only on weekdays.
- # NOTE: expects that 'time' has been reset before entering waitforever stage
- record.data['takeaction'] = True
- if delta >= 3*SPERDAY:
- record.data['action'] = ['email-againwaitforever']
- record.data['message'] = record.data['message_series'][2]
- record.data['time'] = current_time # reset clock
- record.data['save-act-all'] = True
- record.data['action-level'] = 2
- else:
- record.data['action'] = ['waitforever']
- record.data['message'] = None
- record.data['takeaction'] = False
- record.data['save-act-all'] = False
- record.data['action-level'] = 2
- #return None # don't send if there's no action