Для начала я решил взять две социальные сети со свободным доступом к песочнице: мой мир и вконтакте. Получилось просто и легко.
Кратко, о том что теперь не прийдется делать разработчику, а именно что за него сможет сделать данная библиотека:
1). Определение социальной сети по flashVars.
2). Авторизация в социальной сети.
- для вконтакте проверка настроек доступа.
3). Получение информации о пользователе.
4). Получение списка друзей и информации о них.
5). Открытие окна приглашения друзей.
package
{
import flash.display.Sprite;
import flash.display.Stage;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import SocialAPI.connection.*;
public class main extends Sprite
{
private var connectionAPI:ConnectionApi;
public function main()
{
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
trace ('this is sotialAPI');
// get flashVars
// получаем flashVars
var parametrs:Object = this.loaderInfo.parameters;
// add specific default settings for mm;
// добавляем специфичесие настройки социальных сетей;
parametrs.mm={DOMFlashId:'flash-app',
privateKey:'a284a33469d7e982d344f4db15baaf7c'};
//add specific default settings for vk;
parametrs.vk = {setting:31};
//rear of the name of social networks;
// получаем имя социальной сети;
ConnectionApi.SET_SOCIAL_NAME(parametrs);
//create an instance of the social network;
// создаем экземпляр объекта для работы с социальной сетью
connectionAPI = new ConnectionApi.SOCIAL_CLASS_API(parametrs);
//Adds a listener to successfully connect to a set of social;
// добавляем слушатель успешной авторизации
connectionAPI.addEventListener(ConnectionApi.CONNECT, handlerConnect);
//call the connect;
// вызываем метод авторизации
connectionAPI.connect();
}
private function handlerConnect(event:Event):void
{
// отписываемся от прослушивания события
connectionAPI.removeEventListener(ConnectionApi.CONNECT, handlerConnect);
// добавляем слушатель успешного получения информации о пользователе
connectionAPI.addEventListener(ConnectionApi.USER_COMPLITE, handlerUser);
// запрашиаем информацию о пользователе
connectionAPI.askUserInfo();
}
private function handlerUser(event:Event):void
{
connectionAPI.removeEventListener(ConnectionApi.USER_COMPLITE, handlerUser);
connectionAPI.addEventListener(ConnectionApi.FRIENDS_COMPLITE, handleFriends);
//запрашиваем информацию о друзьях;
connectionAPI.askFriendsList();
}
private function handleFriends(event:Event):void
{
connectionAPI.removeEventListener(ConnectionApi.FRIENDS_COMPLITE, handleFriends);
//выводим информацию о друзьях
for(var g:* in connectionAPI.friends) connectionAPI.friends[g].out();
// показываем окно приглашения друзей;
connectionAPI.showInviteBox();
}
}
}
В следующей версии я постараюсь подключить facebook.com и расширить функционал имеющихся социальный сетей.
Жду предложений по развитию функционала.