pyca/schedule.py
def get_schedule():
    '''Try to load schedule from the Matterhorn core. Returns a valid schedule
    or None on failure.
    '''
    params = {'agentid': config()['agent']['name'].encode('utf8')}
    lookahead = config()['agent']['cal_lookahead'] * 24 * 60 * 60
    if lookahead:
        params['cutoff'] = str((timestamp() + lookahead) * 1000)
    uri = '%s/calendars?%s' % (config()['service-scheduler'][0],
                               urlencode(params))
    try:
        vcal = http_request(uri)
    except pycurl.error as e:
        logger.error('Could not get schedule: %s' % e)
        return

    try:
        cal = parse_ical(vcal.decode('utf-8'))
    except Exception:
        logger.error('Could not parse ical')
        logger.error(traceback.format_exc())
        return
    db = get_session()
    db.query(UpcomingEvent).delete()
    for event in cal:
        # Ignore events that have already ended
        if event['dtend'] <= timestamp():
            continue
        e = UpcomingEvent()
        e.start = event['dtstart']
        e.end = event['dtend']
        e.uid = event.get('uid')
        e.title = event.get('summary')
        e.set_data(event)
        db.add(e)
    db.commit()
def get_schedule():
    '''Try to load schedule from the Matterhorn core. Returns a valid schedule
    or None on failure.
    '''
    params = {'agentid': config()['agent']['name'].encode('utf8')}
    lookahead = config()['agent']['cal_lookahead'] * 24 * 60 * 60
    if lookahead:
        params['cutoff'] = str((timestamp() + lookahead) * 1000)
    uri = '%s/calendars?%s' % (config()['service-scheduler'][0],
                               urlencode(params))
    try:
        vcal = http_request(uri)
    except pycurl.error as e:
        logger.error('Could not get schedule: %s' % e)
        return

    try:
        cal = parse_ical(vcal.decode('utf-8'))
    except Exception:
        logger.error('Could not parse ical')
        logger.error(traceback.format_exc())
        return
    db = get_session()
    db.query(UpcomingEvent).delete()
    for event in cal:
        # Ignore events that have already ended
        if event['dtend'] <= timestamp():
            continue
        e = UpcomingEvent()
        e.start = event['dtstart']
        e.end = event['dtend']
        e.uid = event.get('uid')
        e.title = event.get('summary')
        e.set_data(event)
        db.add(e)
    db.commit()
def get_schedule ( ) : params = { 'agentid' : config ( ) [ 'agent' ] [ 'name' ] . encode ( 'utf8' ) } lookahead = config ( ) [ 'agent' ] [ 'cal_lookahead' ] * 24 * 60 * 60 if lookahead : params [ 'cutoff' ] = str ( ( timestamp ( ) + lookahead ) * 1000 ) uri = '%s/calendars?%s' % ( config ( ) [ 'service-scheduler' ] [ 0 ] , urlencode ( params ) ) try : vcal = http_request ( uri ) except pycurl . error as e : logger . error ( 'Could not get schedule: %s' % e ) return try : cal = parse_ical ( vcal . decode ( 'utf-8' ) ) except Exception : logger . error ( 'Could not parse ical' ) logger . error ( traceback . format_exc ( ) ) return db = get_session ( ) db . query ( UpcomingEvent ) . delete ( ) for event in cal : # Ignore events that have already ended if event [ 'dtend' ] <= timestamp ( ) : continue e = UpcomingEvent ( ) e . start = event [ 'dtstart' ] e . end = event [ 'dtend' ] e . uid = event . get ( 'uid' ) e . title = event . get ( 'summary' ) e . set_data ( event ) db . add ( e ) db . commit ( )
Try to load schedule from the Matterhorn core. Returns a valid schedule
    or None on failure.
Try to load schedule from the Matterhorn core . Returns a valid schedule or None on failure .