Konuyu görüntüle
IUCODERS FORUM > Programlama > .NET > Facebook Developer Toolkit
Yazar
dotnetonur


avatar
Dersaadet
Kayıt: 21.11.2007
03.02.2008-13:22 #36925
Bu yazımızda Facebook Developer Toolkit ‘ i kullanarak uygulama geliştireceğiz. (Bu yazımızda sadece giriş yapacağız.)İlk önce 2007 yılını kasıp kavuran Facebook’ tan bahsetmekte fayda görüyorum.

Ve Facebook. Önceleri sadece kendi okulu içinde öğrenciler arasında bir ağ iken, sonrasında Amerika’daki diğer üniversiteleri de içine katınca başlıyor büyümeye. Derken liseler ve Eylül 2006′da da email’i olan herkes bir profil sahibi olabiliyor.

Bugün itibariyle Palo Alto California ve New York ofislerinde 300′den fazla çalışanı, 46 milyondan fazla aktif üyesi var.

Ocak 2007′den beri her gün 200 bin yeni üye alıyorlar. Bu Facebook’un her hafta %3 büyümesi demek! 25 yaş üstü profilin en hızlı büyüdüğü sitede insanlar her gün ortalama 20 dakika vakit geçiriyolar.

Facebook ‘ un Müşteri İlişkileri Yönetimleri için muhteşem bir hazine olduğunu söylemek yanlış olmaz. Kullanıcıların kendi istekleriyle demografik bilgilerini verdikleri ve milyonlarca üyesi olan bir site… Microsoft’ un sitenin ufacık bir hissesi için ne kadar büyük bir meblağ verdiğini unutmamak gerek. Tabi bu kadar büyük bir verinin tutulması komplo teorisyenlerini de heyecanlandırmıyor değil. Big brother’ı kendi elimizle bize yarattırdılar…

Bu bilgilendirmeden sonra esas konumuza geçelim. Uygulamamız iki bölümden oluşacak. Bunlardan ilki windows application ikincisi ise web application olacak. Facebook Developer Toolkit’i gerek Microsoft un sitesinden gerekse Codeplex ten indirebilirsiniz. Bir Blank Solution dosyası açarak uygulamamıza başlayabiliriz. Ben solution dosyamın adını Faceninbookucikti olarak oluşturdum.



İlk olarak bir windows Application uygulaması geliştirelim. Bunun için solution dosyamıza bir tane windows uygulaması ekleyelim. Adını FaceWinUI verdim.



İlk önce yüklemiş olduğumuz dosyalardaki dll dosyalarını toolbox’ a dahil edelim. Bunun için Facebook adında bir sekme oluşturuyorum.



Daha sonra ChooseItem seçeneğini seçerek gerekli olan dll dosyamızın yerini göstereceğim. Böylece kontrollerim toolbox’ ıma yüklenmiş olacak.



Artık uygulamamızı geliştirmeye başlayabiliriz. Uygulamamızın üzerine bir tane FacebookService kontrolu sürükleyip bırakıyorum. Burada bizden API Key ve Secret adında iki parametre girmemizi isteyecektir. http://developers.facebook.com/ adresinden siteye giriş yaptığınızda ve yeni bir application oluşturduğunuzda size API Key ve Secret kodunu verecektir. Bu değerleri uygulamamızda istenilen yerlere yazalım.

Uygulamamıza bir tane FriendList kontrolü ekleyelim. Daha sonra Formumuzun Load eventine gerekli kodlarımızı yazmaya başlayalım.

private void Form1_Load(object sender, EventArgs e)
{
friendList1.Friends = facebookService1.GetFriends();
}

Projemizi çalıştırdığımızda karşımıza Login ekranı çıkacaktır.



Kullanıcı adınızı ve şifrenizi doğru şekilde girdiğinizde arkadaş listeniz karşınıza çıkacaktır.



Şimdi Formumuzun altına bir adet label ekleyelim. Bu label da okunmamış mesaj sayımızı göstersin. Formumuzun Load eventine aşağıdaki kodları yazalım.

Notifications n = facebookService1.GetNotifications();

label1.Text="Okunmamis " + n.UnreadMessageCount.ToString() + " Adet Mesajınız Vardir";

Aynı şekilde Arkadaş talepleri ve grup taleplerine ilişkin bilgileri de getirelim.

label2.Text = "Grup Davetiye Sayısı : " + n.GroupInvites.Count.ToString();

label3.Text = "Arkadas Davetiye Sayısı : " + n.FriendRequests.Count.ToString();



Şimdide formumuza mesajlarımıza ulaşmamızı sağlayacak bir button koyalım. Click() eventine aşağıdaki kodları yazalım.

private void button1_Click_1(object sender, EventArgs e)
{
System.Diagnostics.Process goster = new System.Diagnostics.Process();
goster.StartInfo.FileName = "http://www.facebook.com/inbox/";
goster.StartInfo.UseShellExecute = true;
goster.StartInfo.RedirectStandardOutput = false;
goster.Start();
goster.Dispose();
}

friendList kontrolumuzdeki arkadaşlarımıza tıkladığımızda herhangi bir işlem olmamaktadır. Burada seçtiğimiz kişinin bilgilerini almak için friendList kontrolümüzün eventlerinden FriendSelected() eventine aşağıdaki kodları yazalım.

label4.Text = "Kullanici ID : " + e.User.UserId + System.Environment.NewLine;
label4.Text += "Kullanici Adi : " + e.User.FirstName + " " + e.User.LastName + System.Environment.NewLine;
label4.Text += "Cinsiyeti : " + e.User.Sex + System.Environment.NewLine;
label4.Text += "Birliktelik Durumu : " + e.User.RelationshipStatus + System.Environment.NewLine;
label4.Text+="Dogum Tarihi : " + e.User.Birthday.ToString() + System.Environment.NewLine;
label4.Text += "Lokasyon : " + e.User.CurrentLocation.Country.ToString() + "/" + e.User.CurrentLocation.City;

Uygulamamızı çalıştırdığımızda aşağıdaki gibi bir görünüm elde edeceğiz.



GetFriends() metodu bize bir collection dönmektedir. İçinde user nesneleri bulunduran bu collection yardımı ile facebook kontrollerine bağımlı kalmadan kendi kontrollerimizde facebook tan çektiğimiz verileri kullanabiliriz. Örneğin kullanıcı adlarını Listbox kontrolümüze dolduralım.

Diğer propertyleri birer alan gibi düşünerek yazımın başında bahsettiğim Müşteri İlişkileri Yönetimi Programı kadar olmasa da yazacağınız başka programlara entegre olabilecek küçük çapta insanların demografik bilgilerini tutan bir ambar yapabilirsiniz.

List<User> users = new List<User>();

private void DostlariYukle()
{
users = new List<User>(facebookService1.GetFriends());
listBox1.DataSource = users;
listBox1.DisplayMember = "Name";
listBox1.ValueMember = "UserId";
}





Ortam sanal olsa da, islenen suc gercektir...

Yazar
dotnetonur


avatar
Dersaadet
Kayıt: 21.11.2007
03.02.2008-13:24 #36926
Toolkit Download: http://www.microsoft.com/downloads/details.aspx?familyid=ccd46762-45ec-4fbe-ad91-fc916671e734&displaylang=en





Ortam sanal olsa da, islenen suc gercektir...

Yazar
spino


avatar

Kayıt: 22.01.2006
03.02.2008-16:41 #36947
Kaynağı yazmayı unutmuşsun heralde. Ekleyelim ↓ ↓ ↓
http://www.koraykocabas.com/index.php/facebook-developer-toolkit-1/





Yazar
dotnetonur


avatar
Dersaadet
Kayıt: 21.11.2007
03.02.2008-20:35 #36961
spino yazdi
 
Kaynağı yazmayı unutmuşsun heralde. Ekleyelim ↓ ↓ ↓
http://www.koraykocabas.com/index.php/facebook-developer-toolkit-1/


Kaynağı yazmayı unutmadım. Benim aldığım kaynağa erişmek için üye olmanız gerekiyor, benim aldığım kaynakta da bu link yoktu.

Teşekkürler..





Ortam sanal olsa da, islenen suc gercektir...

Yazar
nesibe


avatar

Kayıt: 10.02.2006
04.02.2008-22:12 #37134
bu uygulamayı yapınca bende hata verdi ve acılmadı.login ekranı geldi fakat daha ileriye gitmiyo.form load fonksiyonunda hata veriyo.ama çözemedimthinking





kalpler bir, yetmez mi?

Yazar
mmt


avatar

Kayıt: 22.01.2006
05.02.2008-11:36 #37163
api key ve secret'i doğru yazıp yazmadığını validasyonunu falan kontrol etmeyi dene.





Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb