2010-09-21 14 views
8

Facebook Açık Grafik API'sini araştırıyorum. Bir kullanıcının Facebook Sayfası haber bülteni/duvarına "kimliğe bürünme" yoluyla yayınlanmasına izin veren bir "sayfaları yönetme" izni vardır. Bu güzel bir işlevselliktir, ancak API ile yapabileceğiniz başka bir şey var mı?Açık Grafik API'sı aracılığıyla Facebook Sayfası sekme uygulamalarını yönetin mi?

Özellikle, bir "Tab" uygulamasını bir Kullanıcı Sayfasından API aracılığıyla Ekleme veya Kaldırma yapabilmek istiyorum. Şu anda bir kullanıcıya kendi işletmesine (ya da Place) Facebook Sayfasına bir sekme uygulaması ekleme sürecinde rehberlik etmek karmaşıktır ve sadece uygulama iznimi verebilseler ve API için onlar için uygulamayı ekleyebiliyor olsaydım AWESOME olur .

Temel olarak, API'nin "sayfa yönetimi" ye izin verip vermediğini veya sadece Sayfa'ya gönderilip gönderilmediğini merak ediyorum.

Bu konuda herhangi bir deneyimi olan var mı?

"page" GET değişkenini (ör. http://www.facebook.com/add.php?api_key=xxxx&pages=1&page=xxxxxx) içeren "add.php" sayfasına yönlendirmek için elimden gelenin en iyisini yapabilir miyim? Bu, bir sekme uygulamasının EKLENDİRİLMESİ için işe yarar, ancak bildiğim kadarıyla kendi Sayfasından bir uygulamayı KALDIRMAK için onlara yardımcı olacak hiçbir şey yoktur.

Teşekkürler!

+2

ben mümkün olabilir gibi görünüyor, en azından Kullanmakta olduğum uygulamanın "has_added_app" FQL sorgusu ile sayfaya eklenmiş olup olmadığına bakın. http://developers.facebook.com/docs/reference/fql/page – thaddeusmt

cevap

13

Temmuz 2011'de Artık Grafik Ekle, Kaldır, Yeniden Adlandır, Yeniden Sırala ve Sekmeleri Açık Grafik API'sı aracılığıyla Varsayılan olarak ayarlayabilirsiniz.

https://developers.facebook.com/blog/post/524/

Ve resmi dokümanları buradadır: blog yayını burada

https://developers.facebook.com/docs/reference/api/page/#tabs

Ne Facebook henüz ETMEZ yeni sekme uygulamaları oluşturmak için yeni bir API yöntemi, ya için sekme simgesini değiştirerek. Bu büyük bir adım olsa da!

GÜNCELLEME: bunu takip edip yaptıklarını görmek istiyorsanız API konusu uygulamaları oluşturma hakkında takip edecek yeni hata izci hata vardır: http://developers.facebook.com/bugs/295627350461318

+0

Zaman çizelgesi sayfaları için yeni sekme resimlerinin API ile nasıl güncelleneceği konusunda yeni bir soru ve cevap gönderdim: http://stackoverflow.com/questions/9503366/how-to-upload-custom-app-image-tab-image -Tüm zaman çizelgesi-sayfa-tabs-via-api/9522597 – thaddeusmt

+0

Resmi sekmeler belgelerinin linki şu şekilde değişmiştir: https://developers.facebook.com/docs/graph-api/reference/v2.2/page/ sekmeler – donut

2

Evet, yapabileceğiniz en iyi şey onları add.php url'ye yönlendirmektir. Uygulamanın kaldırılmasına yardımcı olacak hiçbir şey yapamazsınız.

İyi haber, kullanıcının ekleme sürecinden geçmek zorunda kalması ve sayfadaki sekme açılır menüsünde bularak sekmeyi "etkinleştirmesine" karar vermesidir. Facebook kısa bir süre önce bunu değiştirdi ve bir kullanıcı uygulamayı sayfaya ekledikten sonra sekmenin hemen etkinleştirildiğini görüyoruz.

"has_added_app" ile ilgili olarak ... sorta. Uygulamanın sayfaya eklenip eklenmeyeceğini size söyleyecektir, ancak sekmenin etkin olup olmadığını size söylemez. Örneğin, bir kullanıcı sekmeyi devre dışı bırakabilir ancak teknik olarak uygulamanın sayfaya yüklenmiş olmasına teknik olarak sahip olabilir. Bu nedenle "has_added_app" sekmesi aslında görünmese de true olarak geri dönecektir.

+0

Cevabınız için teşekkürler! Korkmuştum, bazı gizli "özellikler" olmadığından emin olmak için etrafta dolaşıyordum. En azından biraz yardımcı olan has_added_app ile oynamak zorunda kalacağım. – thaddeusmt

3

API aracılığıyla bunu yapmanın bir yolu var. Sonunda, saatlerce ter ve gözyaşından sonra çalışmaya başladık.

Uygulamanızı çıkmadan bir sayfaya sekme ekleyebilirsiniz. İşte bunun için kullandığımız bir kod pasajı. Bir kullanıcının yönlendirdiği sayfaların bir listesini alırız, bir açılır menüde gösterirler ve "aracı profilim" sekmemizi eklemek istedikleri sayfayı seçmelerini isteriz.

Ve nihai ürün şuna benzer - Facebook anlamlı geri API işlevlerini yükseltilmiş olduğunu, (o 1 doğum günü kutluyor!) Bu soruyu görüntüleyen herkes için, şimdi dikkati çekiyor http://www.facebook.com/pages/Jennifer-Anderson-Real-Estate-Agent/185071901564573?sk=app_253956901293839

protected void btnAddTab_Click(object sender, EventArgs e) 
{ 
    if (ddlPage2.SelectedIndex >= 0) 
    { 
     FaceBookPages page = FaceBookPages.LookupByPageID(long.Parse(ddlPage2.SelectedValue)); 
     if (page == null) 
      throw new NPlaySysException("FaceBookPages is null."); 

     AnalyticLog log = new AnalyticLog(); 
     log.EventID = FBCommon.Events.AddAgentAppTabID; 
     log.UserID = UserID; 
     log.EventTime = DateTime.Now; 
     log.Update(); 

     string result = FacebookSvc.AddTab(Web.AgentAppID, "me", page.AccessToken); 
     if (result.Equals("true")) 
     { 
      FaceBookPages.UpdateAgentProfileAdded(page.PageID, true); 
      List<FaceBookPages> notTabbedPages = FaceBookPages.LookupAgentProfileNotAddedByUserID(UserID); 

      imgStep3.ImageUrl = StepDoneImagePath; 
      divStep3.Attributes["class"] = StepDoneCssClass; 
      phStep3.Visible = false; 
      Step3Done = true; 
      btnCloseStep3.Visible = false; 

      if (notTabbedPages.Count > 0) 
       btnEditStep3.Visible = true; 
      else 
       btnEditStep3.Visible = false; 
     } 
     else 
     { 
      lblErrorAddTab.Text = "Failed to add your profile to page."; 
      Web.EmailError(string.Format("FacebookSvc.AddTab Failed. result={0}<br />UserID={1}<br />PageID={2}", result, UserID, page.PageID)); 
     } 
    } 
} 
+0

Teşekkürler Daniel, bunu denemek zorundayım. – thaddeusmt

İlgili konular