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.
(Yazının bir bölümü FikirAtolyesi sitesinden alıntıdır. Normalde yazdığım yazılarda alıntı yaparsam muhakkak kaynağını belirtirim fakat bu yazıyı yazarken gözden kaçırmışım. Bu konudan dolayı FikirAtolyesi ve okurlarından özür diler, Sibel hanıma da beni uyardığı için teşekkür ederim.)
2004 Şubat’ında Mark Zuckerberg Harvard College’da okurken, iki arkadaşı ile birlikte yurt odasından kuruyor Facebook’u. İlk projesi ‘Coursematch.’ Okulda aynı dersleri alan öğrencilerin listelendiği bir site. Sonra Facemash.com; ‘Hot or Not‘ benzeri bir site. Ancak bunun için hacker’lık yapıyor. Öğrenci resimlerini (öğrencilerden izinsiz) alabilmek için Harvard’ın bilgisayar sistemine bir şekilde giriyor ve bu resimlerden siteyi kuruyor. Kısa süre sonra durumu fark eden okul yönetimi onun internet bağlantısını kesiyor, disipline havale ediyor.
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.
2004 Şubat’ında Mark Zuckerberg Harvard College’da okurken, iki arkadaşı ile birlikte yurt odasından kuruyor Facebook’u. İlk projesi ‘Coursematch.’ Okulda aynı dersleri alan öğrencilerin listelendiği bir site. Sonra Facemash.com; ‘Hot or Not‘ benzeri bir site. Ancak bunun için hacker’lık yapıyor. Öğrenci resimlerini (öğrencilerden izinsiz) alabilmek için Harvard’ın bilgisayar sistemine bir şekilde giriyor ve bu resimlerden siteyi kuruyor. Kısa süre sonra durumu fark eden okul yönetimi onun internet bağlantısını kesiyor, disipline havale ediyor.
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”;
}
Bu yazımızda Facebook Developer Toolkit ‘ e başlangıç yapmaya çalıştık. Fırsat buldukça bu konu hakkında yazmaya devam edeceğim.
.Net ‘ li günler…
http://www.koraykocabas.com/index.php/facebook-developer-toolkit-1/
|