def handle_new_picture(picture_id): picture = core_models.PourPicture.objects.get(id=picture_id) site = picture.site user = picture.user if not site or not user: logger.info('Picture does not have a site/user, ignoring.') return elif common.is_stale(picture.time): logger.info('Picture is stale, ignoring.') return client = _build_client(site, user) if not client: logger.info('foursquare client not available for site/user.') return checkin = get_or_create_fresh_checkin(site, user, client) if not checkin: logger.info('Cannot find a checkin for this user, ignoring picture.') return logger.info('Uploading photo to foursquare.') result = client.photos.add(photo_data=picture.picture.image.read(), params={'checkinId': checkin.get('id','') }) logger.info('Upload complete, result: %s' % str(result))
def handle_new_picture(picture_id): picture = core_models.Picture.objects.get(id=picture_id) site = picture.site user = picture.user if not site or not user: logger.info('Picture does not have a site/user, ignoring.') return elif common.is_stale(picture.time): logger.info('Picture is stale, ignoring.') return client = _build_client(site, user) if not client: logger.info('foursquare client not available for site/user.') return checkin = get_or_create_fresh_checkin(site, user, client) if not checkin: logger.info('Cannot find a checkin for this user, ignoring picture.') return logger.info('Uploading photo to foursquare.') result = client.photos.add(photo_data=picture.image.read(), params={'checkinId': checkin.get('id', '')}) logger.info('Upload complete, result: %s' % str(result))
def post_activity(event): if common.is_stale(event.time): logger.info('Event is stale, ignoring: %s' % str(event)) return if event.kind not in ('session_joined', 'drink_poured'): logger.info('Event is not tweetable: %s' % event.kind) return kb_vars = _get_vars(event) do_post(event, kb_vars)
def tweet_event(event): if common.is_stale(event.time): logger.info('Event is stale, ignoring: %s' % str(event)) return if event.kind not in ('session_joined', 'drink_poured'): logger.info('Event is not tweetable: %s' % event.kind) return kbvars = _get_vars(event) do_user_tweet(event, kbvars) do_system_tweet(event, kbvars)
def checkin_event(event): if event.kind != 'session_joined' or not event.user: logger.info('Event not useful for foursquare checkin: %s' % event.kind) return False elif common.is_stale(event.time): logger.info('Event is stale, ignoring: %s' % str(event)) return False site = event.site user = event.user client = _build_client(site, user) if not client: logger.info('foursquare client not available for site/user.') return result = get_or_create_fresh_checkin(site, user, client) logger.debug('Result: %s' % str(result)) return True