2014-03-13 26 views
2

我想要構建一個儀表板,從應用程序生成的洞察中返回更多的自定義洞察。Facebook opengraph從我的應用程序洞察特定帖子ID上的api

該應用程序是用戶訪問並查看產品列表的Facebook連接網站。他們可以在Facebook上發佈關於該特定產品的信息,方法是分享將該產品融入其時間表的自定義故事。

當我參考我的應用程序的見解時,它很好地向我展示了在我的網站上生成的所有自定義故事的所有社交印象。

我想縮小甚至更多的具體產品。

我的計劃是記錄這些操作生成的對象id,並將它們鏈接到我的數據庫中的獨特產品。

然後,我想創建一個新的儀表板頁面,允許我登錄,向我請求read_insights權限,然後使用該數據庫中的object_id:product映射來顯示記錄給定產品的社交印象數object_ids。

這可能嗎?我已經閱讀了很多關於它的內容,但仍然沒有找到最優雅的方式來獲取發佈的每類內容的社交印象的分段報告。

感謝您的時間。

回答

1

實現完全取決於您希望應用在哪個平臺上運行。

第一個主要組件是你必須有一個易於註冊的Facebook開發者賬戶。只需去developers.facebook.com並註冊。花2分鐘。之後,您將需要創建您的第一個應用程序,並在託管您的應用程序的位置以及將運行的平臺上添加正確的域名。 (iOS,Android,Web等)完成後,您可以將應用程序公開,以便在代碼中使用Facebook API。

對於應用程序創建本身。您需要做的第一件事是爲您的平臺導入正確的API。你可以在https://developers.facebook.com/docs/找到一個散步。一旦導入API,您必須構建一個包含您的應用程序ID和可能的應用程序密碼的Facebook對象。如果你使用的是JavaScript,你不想使用應用程序的祕密,因爲它可以被公衆看到。

既然您擁有自己的Facebook對象,則必須要求應用用戶登錄並授予您應用的權限。您可以通過將範圍值添加到Facebook生成的登錄按鈕來爲您的登錄過程添加擴展權限。這是一個例子。用戶登錄後,您

<fb:login-button id="loginBtn" max_rows="1" scope="basic_info,read_insights,manage_pages" size="medium" show_faces="false" auto_logout_link="true"></fb:login-button> 

後,現在可以查詢從用戶的信息使用Facebook的API帳戶調用社交圖譜。 Facebook還提供了一個工具來幫助你找出你可以查詢的信息。 https://developers.facebook.com/tools/explorer

您想要對應用程序執行的操作可以通過Facebook API調用來完成。您只需確保在進行API調用之前向用戶授予正確的權限。

根據您使用的語言語法,API調用稍有不同,但它們都遵循相同的數據模型並返回可使用JSON或標準數組格式解析的響應數組。上面列出的Graph Explorer工具將顯示您的查詢輸出,以便您可以相應地處理它們。

我希望這有助於你開始。

編輯

下面是在JavaScript

function getMetric(){ 

// make the API call 

FB.api(
"/{app-id}/insights/application_opengraph_story_impressions", 
function (response) { 
    if (response && !response.error) { 
    /* handle the result */ 
    } 
} 
); 

} 

實施這裏的參考,現在,Facebook的文檔是備份https://developers.facebook.com/docs/graph-api/reference/insights

application_opengraph_story_impressions將可能給你的所有故事的總印象由您的應用程序。我將它與我的Facebook應用程序競爭,它迴歸空虛,但我沒有任何故事,所以它可能與你的。在文檔中還要注意,這個度量標準有一個*,我無法找到它的含義。

+0

是的,謝謝你的解釋。但是,你知道確切的API調用,可以獲得某人在某個牆上的特定信息的洞察信息嗎?該文檔只說明你可以從頁面或應用程序獲得關於帖子的見解。你知道如何縮小某人在某個時間表上的特定帖子嗎? – user257543

+0

你想要什麼語言的實現? –

+0

我只需要javascript api調用就可以獲得關於特定應用程序的見解 – user257543

1

我很確定,現在Facebook不會讓開發人員獲得有關應用程序自定義故事的見解。

目前Facebook的文檔具有洞察數據如下圖的API:

  • /{頁-ID} /見解
  • /{APP-ID} /見解
  • /{域ID} /見解
  • /{後的ID} /見解(其中,這是一個頁面後)

所以/{post-id}/insights將不起作用,因爲自定義故事實際上是用戶的帖子,其他終端不適用於您的案例。

據我所知,訪問Insights的唯一方法是FQL。對於你在一個類似的方式利用Google表格:

SELECT ... FROM insights WHERE object_id = ... AND metric = ... AND end_time = ... AND period = ... 

現在最有可能的,這也不會影響您的自定義故事崗位工作(我沒有職位,我可以試試右現在,所以我不知道),但至少在文檔中沒有明確說明,所以你應該嘗試一下。

更新: 我是不是能夠得到通過FQL任何見解的數據,但據我瞭解下面的代碼應該已經給了我至少東西(對象ID爲我的網頁):

SELECT擊穿,END_TIME,事件,度量的object_id,週期,FROM見解值WHERE的object_id = 224981264214413和度量= 'page_fans' 和週期=週期( '壽命')和END_TIME = 1395597892

但是它導致剛在

{ 
    "data": [] 
} 

Facebook還有一些相似的老bug報告,關於類似的主題:https://developers.facebook.com/x/bugs/508088155954330/他們在那裏證實了這個問題,指定了它,並且......沒有采取任何措施修復它6個月。

如果FQL不起作用,我建議您 - 使用您自己的分析代碼跟蹤創建自定義故事並獲取用戶的朋友數。它不會顯示帖子的真實曝光率,但至少您會看到一些關於哪些類型的自定義故事發布頻率更高的數據,以及可能看到它們的最大潛在好友數量。順便說一句 - 爲了使圖表更容易,您可以使用Google Analytics事件。

+0

你能給我一個FQL的例子來搜索給定對象ID的社交印象數量嗎? – user257543

相關問題