2012-03-19 4 views
0

Так что в основном я создаю скрипт для клиента, который используется в качестве iframe на его странице. То, что он должен делать, - это когда пользователю нравится его страница, тогда он может видеть содержимое, а «приложение» должно автоматически публиковать что-то на стене (звучит как спам, но я не уверен, есть ли с этим проблемы). так я получил первый бит работает, но за любовь бога я не могу сделать вторую часть .. вот мой кодFacebook post post на стене после

<? require 'facebook.php'; 
$app_id = "my_appid"; 
$app_secret = "my_secret"; 
$facebook = new Facebook(array(
'appId' => $app_id, 
'secret' => $app_secret, 
'cookie' => true 
)); 
$signed_request = $facebook->getSignedRequest(); 
function parsePageSignedRequest() { 
    if (isset($_REQUEST['signed_request'])) { 
     $encoded_sig = null; 
     $payload = null; 
     list($encoded_sig, $payload) = explode('.', $_REQUEST['signed_request'], 2); 
     $sig = base64_decode(strtr($encoded_sig, '-_', '+/')); 
     $data = json_decode(base64_decode(strtr($payload, '-_', '+/'), true)); 
     return $data; 
    } 
    return false; 
    } 
    if($signed_request = parsePageSignedRequest()) { 
    if($signed_request->page->liked) { 
     echo "This content is for Fans only!";  
    } else { 
     echo "Please click on the Like button to view this tab!"; 
    } 
    } 

?> 

я попробовал, добавив это на «вошедшего состоянии»

$result = $facebook->api('/me/feed/','post', 
     array('access_token' => $app_secret, 
       'message' => 'Playing around with FB Graph..') 
    ); 

с не удачи, поскольку я получаю сообщение об ошибке. пожалуйста, дайте мне знать, если вы можете помочь. thanx

+0

access_token! = App_secret, и вам необходимо получить разрешение от пользователя (publish_stream) – Rufinus

ответ

0

Первая часть, нравится URL-адрес и автопостановка потоку пользователей, не имеет ничего общего с кодом, который вы показываете. этот код представляет собой просто вентиляторный шлюз.

пользователя не зарегистрирован.

шаги, которые нужно было бы это:

  • пусть логин пользователя и попросить разрешения publish_stream (more info)
  • установить слушателя на событие edge.create (more info)
    • если это событие срабатывает, чтобы отправить сообщение на сервер. (more info)
+0

Таким образом, единственный способ, чтобы получить пользователей first.ok, что позволения было полезно. цель этого была предположена, поскольку я понимаю, что из требований, изложенных, является публикация чего-либо, если пользователи не принимают ничего, но кажется, что это невозможно сделать. Есть ли у кого-нибудь идеи, если анонимные сообщения считаются спамом на facebook? thanx – leossmith

+0

, по моему опыту, процент пользователей, принимающих разрешение, ниже с любыми дополнительными разрешениями, которые вы запрашиваете. publish_stream - это одно из разрешений, которое меньше людей хотят дать. – Rufinus

+0

, если можно будет отправлять сообщения в поток без того, чтобы пользователь не захотел/знать и не должен был просить разрешения, facebook будет местом, полным спама. во многих моих приложениях я представляю пользователя только со стандартным диалоговым окном fb.ui publish.stream в facebook (js sdk). Мне не нужны права для его отображения, и пользователю просто нужно отправить клик, если он захочет. или может закрыть его, если нет. – Rufinus

Смежные вопросы