Chcę automatycznie publikować notatki na Facebooku i mieć je skierowane tylko do jednego członka grupy. Według celu, tylko konkretny użytkownik Facebooka powinien móc przeczytać notatkę.
Czy można to zrobić za pomocą interfejsu API wykresów? W starym interfejsie API REST widzę parametr "prywatność" w metodzie steam.publish (zob http://developers.facebook.com/docs/reference/rest/stream.publish). Czy istnieje odpowiednik w API wykresu?
Oto odpowiedź.
Wystarczy dołączyć "prywatność" w pakiecie w formacie JSONObject, w tym wartość "SELF", "ALL_FRIENDS" LUB "KAŻDY".
To jest za pomocą Android SDK 2.0, a 3.0 jest już dostępny, ale sposób korzystania z api wykresu jest taki sam, lewy komentarz, jeśli osiągniesz jakiś problem :).
public String PostWall(String Message,int Level){
/***********************************************************
* level 0 ==>only me
* level 1==>friend only
* level 2==>public
* level >2 ==>error
***********************************************************/
Bundle params = new Bundle();
params.putString("message", Message);
JSONObject privacy = new JSONObject();
try {
switch (Level){
case 0:
privacy.put("value", "SELF");
break;
case 1:
privacy.put("value", "ALL_FRIENDS");
break;
case 2:
privacy.put("value", "EVERYONE");
break;
}
} catch (JSONException e1) {
}
params.putString("privacy", privacy.toString());
//Step 2 Request
String resp= "";
try {
resp = fb.request("me/feed", params, "POST");
} catch (FileNotFoundException e) {
} catch (MalformedURLException e) {
} catch (IOException e) {
}
try{
resp = new JSONObject(resp).getString("id");
if(enableLog){
Log.d(LOGTAG,"*****POSTWALL END*****");
Log.d(LOGTAG,"RETURN "+resp);
}
return resp;
}catch(JSONException e1){
}
}
};
dla php facebook api użyj:
$privacy = array(
'value' => 'SELF' //private
);
$publish = $facebook->post('/me/videos',
array('access_token' => $page_token,
'title'=> $title,
'privacy'=> $privacy,
'source' => $facebook->videoToUpload($fn),
'description' => $desc
));
obiekt zawierający value
pole i opcjonalnie friends
, networks
,
allow
i deny
pola.
The value
pole może określać jeden z następujących łańcuchów: EVERYONE
,
ALL_FRIENDS
, NETWORKS_FRIENDS
, FRIENDS_OF_FRIENDS
, CUSTOM
.
The friends
pole musi być określone, jeśli value
jest ustawione na CUSTOM
i
zawierają jeden z następujących łańcuchów: EVERYONE
, NETWORKS_FRIENDS
(gdy
obiekt może być widoczny przez sieci i znajomych), FRIENDS_OF_FRIENDS
,
ALL_FRIENDS
, SOME_FRIENDS
, SELF
, lub NO_FRIENDS
(kiedy obiekt może być
tylko przez sieć).
The networks
pole może zawierać listę identyfikatorów sieci rozdzielonych przecinkami
który może zobaczyć obiekt lub 1 dla całej sieci użytkownika.
The allow
pole musi być określone, gdy friends
wartość jest ustawiona na
SOME_FRIENDS
i musi podać oddzieloną przecinkami listę identyfikatorów użytkowników i
identyfikatory list znajomych, które "widzą" ten wpis.
The deny
pole może być określone, jeśli friends
pole jest ustawione na
SOME_FRIENDS
i musi podać oddzieloną przecinkami listę identyfikatorów użytkowników i
identyfikatory listy znajomych, które "nie mogą" zobaczyć tego posta.
Szukać Prywatność pod poniższym linkiem, aby zobaczyć wszystkie opcje:
https://developers.facebook.com/docs/graph-api/reference/v2.6/post
Tak jest:
http://developers.facebook.com/docs/reference/api/post
Istnieje pole prywatności, które można modyfikować.
Nadzieja, która pomaga,
-Roozbeh
http://developers.facebook.com/docs/reference/api/post
nie mówi, jak określić prywatność
w prawidłowy sposób
dla różnych opcji CUSTOM, FRIENDS, NETWORK_FRIENDS
Jeśli publikujesz notatki z aplikacji, możesz ustawić domyślną prywatność działania, jak pokazano tutaj:

Można go ustawić podczas uwierzytelniania własnej aplikacji lub w: account settings - > applications
.