2008-09-17 5 views
6

Je cherche un moyen de me connecter à Facebook en permettant à l'utilisateur d'entrer son nom d'utilisateur et mot de passe et avoir notre application se connecter à leur compte et obtenir leurs contacts afin qu'ils puissent inviter eux de rejoindre leur groupe sur notre site. J'ai déjà écrit une application Facebook, mais ce n'est pas une application autant qu'un connecteur afin qu'ils puissent inviter tous leurs amis ou seulement certains sur le site sur lequel nous travaillons.Comment importer des amis Facebook à partir d'un autre site Web

J'ai vu plusieurs autres sites faire cela et également se connecter à Yahoo, Gmail et Hotmail contacts. Je ne pense pas qu'ils utilisent Facebook Connect pour le faire, car il est si nouveau, mais ils peuvent l'être.

Toute solution dans n'importe quelle langue est correcte car je peux transférer n'importe quel exemple pour utiliser C#. Je ne trouve rien de spécifique sur Google ou Facebook pour résoudre ce problème spécifique. Toute aide est appréciée.

J'ai vu une première réponse à supprimer qui m'a suggéré de devoir gratter la page d'amis. Plus je regarde autour de moi, c'est peut-être ce que je dois faire. Toute autre façon, je pense que la personne doit l'ajouter comme une application. Je me demande comment une réponse peut être supprimée, peut-être que cet utilisateur l'a supprimé.

Répondre

2

On dirait que Facebook a une API pour cela. Consultez ce blog ici.

http://developers.facebook.com/news.php?blog=1&story=73

+0

Il nécessite une clé d'application afin que l'utilisateur puisse encore devoir l'accepter en tant qu'application. Je vais certainement y jeter un coup d'œil. Il semble cool d'utiliser JavaScript au lieu du côté serveur. –

10

Ne pas répondre à la question, mais espérons fournir un aperçu ...

Ses caractéristiques comme celui-ci qui enseignent aux gens qu'il est autorisé à entrer son nom d'utilisateur et mot de passe pour le site A sur un formulaire à partir du site B. Ce n'est certainement pas correct. S'il vous plaît, ne faites pas croire aux gens que c'est le cas.

Mais peut-être que l'API Facebook vous permet de contourner ce problème, en faisant en sorte que les gens se connectent à Facebook lui-même pour donner accès à votre application. Une différence légère mais importante.

3

J'ai levé les yeux pour savoir si je pouvais répondre à mon message, alors voilà.

Il s'avère que vous devrez gratter la liste d'amis qui n'est pas légale dans les conditions d'utilisation de Facebook. Nous ne ferons donc pas cela pour nos sites. Voici quelques articles qui montrent ce qui se passe quand vous ne jouez pas selon les règles. Plaxo a testé leur grattage avec Scoble et Facebook a fermé le compte Scobles en janvier de cette année.

http://scobleizer.com/2008/01/03/what-i-was-using-to-hit-facebook/

http://news.cnet.com/8301-13577_3-9839474-36.html

+1

facebook est géré par jerks alors ... ils vont heureusement gratter une douzaine de sites différents pour importer des amis, (en utilisant la méthode ombrée où vous devez faire confiance à facebook avec votre mot de passe) mais vous essayez de les gratter et ils vous ferment ? – davr

+0

Ils devraient le décourager, car ils veulent la liberté de changer leur disposition, ce qui casserait votre grattoir. En utilisant leur API, vous avez plus de chances de continuer à travailler plus longtemps. – Karl

+1

@Karl: En supposant que leur API vous permet de faire ce que vous voulez ... ils veulent juste contrôler votre merde. Ils ne vous permettent de toucher des choses tant que cela leur apporte plus de trafic. – mpen

1

Voici un outil open source PHP 5 pour vous permettre d'importer des contacts à la fois e-mail et des réseaux sociaux dont Facebook: OpenInviter est une classe PHP open source, écrit en PHP5 , pour l'importation de contacts de la plupart des fournisseurs de messagerie connus & réseaux sociaux.

5

Vous pouvez utiliser Facebook Connect 'Liaison de compte'.

exemple Python/Django Facebook developers wiki:

Page:

def invite_friends(request): 
    #HTML escape function for invitation content. 
    from cgi import escape 
    facebook_uid = request.facebook.uid 

    # Convert the array of friends into a comma-delimeted string. 
    exclude_ids = ",".join([str(a) for a in request.facebook.friends.getAppUsers()]) 

    # Prepare the invitation text that all invited users will receive. 
    content = """<fb:name uid="%s" firstnameonly="true" shownetwork="false"/>  wants to invite you to play Online board games, <fb:req-choice url="%s" label="Put Online Gaming and Video Chat on your profile!"/>""" % (facebook_uid, request.facebook.get_add_url()) 

    invitation_content = escape(content, True) 
    return render_to_response('facebook/invite_friends.fbml', 
      {'content': invitation_content, 'exclude_ids': exclude_ids }) 

Modèle:

<fb:request-form action="http://apps.facebook.com/livevideochat/?skipped=1"  
     method="POST" invite="true" type="Online Games" 
     content="{{ content }}">   

    <fb:multi-friend-selector max="20" 
     actiontext="Here are your friends who aren't using Online Games and Live Video Chat. Invite them to play Games Online today!" 
     showborder="true" rows="5" exclude_ids="{{ exclude_ids }}"> </fb:request-form> 
-1

les importer simplement dans Yahoo en utilisant FB Connect. Tout au mieux? Pas de grattage d'écran, pas de violations FB. Terminé.

+2

Suggérez-vous que les finalistes soient tenus d'avoir ou de créer un compte Yahoo, d'importer leurs contacts Facebook, puis d'avoir accès à l'API Yahoo? Ça a l'air horrible. – GargantuChet

+0

Oups, je devrais accorder plus d'attention lors de la publication à partir d'un appareil mobile. s/end-ists/end-users/dans mon commentaire ci-dessus. – GargantuChet

Questions connexes