Exemplo n.º 1
0
def get_event_members(event_id,user_id, access_token):
  fb_event = Events.objects.get(pk=event_id)
  graph = facebook.GraphAPI(access_token)
  members = graph.fql("SELECT uid FROM event_member WHERE eid = %d LIMIT 10000"%fb_event.eid)
  for member in members:
    facebook_id = int(member['uid'])
    try:
      fb_user = FacebookUser.objects.get(facebook_id=facebook_id)
    except (KeyError, FacebookUser.DoesNotExist):
      fb_user = FacebookUser(facebook_id=facebook_id, username=str(facebook_id))
      fb_user.save()
      get_user_info.delay(fb_user.id, access_token)
      get_user_stream.delay(fb_user.id, access_token)
      get_user_likes.delay(fb_user.id, access_token)
      get_probabilities.delay(user_id, fb_user.id)
    fb_event.members.add(fb_user)
    fb_event.save()
Exemplo n.º 2
0
def get_friends(user_id, access_token=None):
  user  = FacebookUser.objects.get(pk=user_id)
  if access_token==None:
    access_token = user.access_token
  graph = facebook.GraphAPI(access_token)
  friends = graph.fql('SELECT uid2 FROM friend WHERE uid1 = %d LIMIT 5000'%user.facebook_id)
  for friend in friends:
    facebook_id = int(friend['uid2'])
    try:
      fb_user = FacebookUser.objects.get(facebook_id=facebook_id)
      get_user_stream.delay(fb_user.id, access_token)
    except (KeyError, FacebookUser.DoesNotExist):
      fb_user = FacebookUser(facebook_id=facebook_id, username=str(facebook_id))
      fb_user.save()
      get_user_info.delay(fb_user.id, access_token)
      get_user_stream.delay(fb_user.id, access_token)
      get_user_likes.delay(fb_user.id, access_token)
      get_user_events.delay(fb_user.id, access_token)
    user.friends.add(fb_user)
    user.state="get_user_friends"
    user.save()