This project is read-only.

Facebook Connect for Telligent Community Server

Currently only works with Community Server 2008.5

Features

  • Join the community using a Facebook account
  • Log in to your community using Facebook authentication
  • Link Facebook and existing community accounts

How to use

When you install this module to your site, you will end up with a 'connect' button on the join page and a
'login with facebook' button on the sign in page. When a user joins using their facebook account, some
information is pulled from Facebook and populated in the account. A default username of: (firstname +
lastname).ToLower() will be suggested. Their Facebook account will be linked with the new account
that is about to be created.

When a user comes back to your community site, they will be able to login using their Facebook credentials.

Existing users of your site will be able to associate their account with Facebook. Once this is done,
they will then be able to login to the community with their Facebook credentials.

Note: If the email address associated with the user on the site is not the same as the user's Facebook
email address, then things like friend linking (in future version) will not work as Facebook doesn't give
direct access to a user's email address through Facebook Connect. Connect applications have to hash the
user's email address and then submit that to Facebook for use. When a user joins the site with Facebook,
this is setup automatically, but when they associate their account, this cannot be enforced.

Users can remove their Facebook account association. They will be sent a 'here is your new password' email.

Installation

The base installation does not surface any feature in your site, but makes it available for use.

This is just a file copy of the dll's into your site root \\bin folder and a creation of a table.
  1. Installing from source:
    1. Compile the source (see the Development Notes section)
    2. Copy all .dlls from bin\Debug or bin\Release
  2. Downloaded binaries: unzip the the downloaded file and copy all .dll files from the bin folder of the archive.
  3. Put the copied files in the \\bin directory of your website.
  4. Open create_table.sql and run it against your CS database.
  5. Copy Web\xd_receiver.html into the site root of your existing CS installation.

Configuration

Note: If you have not yet created an application on Facebook, you need to do so now.
Visit the Facebook create application page
to create an application.

You will need to add the controls to the pages at the right spots for their use. Copies of these
pages for a default CS 200#5 hawaii theme installation have been provided in the Web folder.
  1. Add a new line to the web.config to provide access to the control.
<add tagPrefix="ATGi" namespace="ATGi.CS.Facebook.Controls" assembly="AIGi.CS.Facebook" />
  1. Add two items to the <appSettings> section of web.config for the APIKey and secret provided when you registered your facebook application. Be sure to substitute the keys for the value attribute in the code below.
<add key="ATGi.CS.Facebook.Data.APIKey" value="2b..." />
<add key="ATGi.CS.Facebook.Data.Secret" value="4#.." />
  1. You will need to add the right controls to the right pages in your site. The list of controls is:
    1. FacebookCreateUserSubForm
    2. FacebookLoginButton
    3. FacebookLoginForm
    4. FacebookRemoveAssociationButton
    5. FacebookUserData
    6. FacebookProfileImage

The sample files in the Web\Themes\hawaii folder can be compared to the default hawaii to determine the proper usage of the controls. The resource file in {Web\Languages\en-US}} should be used in support of these files.

Development Notes

  • Open the solution and build to create the Dll's needed. You will want to add references to the following dlls before building: CommunityServer.Components.dll, CommunityServer.Controls.dll, Telligent.Components.dll
  • These dlls can be extracted from the Telligent Community Server downloads or referenced from the bin directory in the community installation.
  • To create a distribution of this package, run createzip.ps1 in powershell.

Planned features

  • Send invitations to friends on Facebook to join the community
  • Sync Facebook and community friend lists
  • Share content in Facebook without leaving the community site

Other Information


License (MIT)

Copyright © 2009 Active Technologies Group, Inc. (ATGi)

Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.


Written by jeffesp at ATGi

Last edited Jul 14, 2009 at 3:16 PM by jeffesp, version 1

Comments

superman1 Nov 22, 2010 at 9:14 PM 
can anyone tell me how to do configuration for the facebook application for this. I am getting error on the pop up facebook window on my site. many thanks

erikernst Oct 14, 2010 at 2:43 PM 
Sounds great, looking forward to test this on my own installation, but I would also love to see a demo where I can see it in action.

PSBrice Aug 6, 2009 at 8:00 PM 
I am very excited about this Jeff.... I've been eyeballing the nexus facebook integration, but they are too expensive and I cannot stand forced perpetual payments. Kudos. I will try this out now.