La API de Tuenti y la gestion de paginas

n1x3r

Una vez mas necesito de vuestra generosa inteligencia colectiva.
Resulta que estoy buscando un metodo para poder realizar actualizaciones de una pagina de tuenti (ojo, PAGINA no evento) para ello estoy utilizando una de las api disponibles por internet, podéis obtener información sobre esta en esta dirección: https://github.com/shoghicp/PHPTuenti

En ella se habla de modificación estado, vuelco de datos de usuarios, etc etc, pero lo que necesito es poder modificar los estados de una pagina creada con mi perfil de tuenti y de eso no se habla nada en la api, se que tiene que existir el metodo pero no lo encuentro.

Los metodos accesibles son:

addPostToPhotoWall
addPostToProfileWall
getAlbumPhotos
getFriends
getFriendsData
getFriendsNotifications
getInbox
getPhotoTags
getPhotoWall
getProfileWall
getThread
getUserAlbums
getUserNotifications
getUsersData
sendMessage
setPhotoData
setUserData
tagUser

Os pongo un ejemplo de uso de dicha api:

require('tuentiAPI.class.php');
$con = new tuentiAPI('[email protected]', 'password');
$texto = "hola que tal";
$r = $con->request("setUserData",array('status' => utf8_encode($texto)));

En este ejemplo cambio mi estado por "hola que tal" usando el método "setUserData" y el parámetro 'status'.
La api es sencialla de utilizar, se crea su clase que hace de conector y depsues ejecutamos un request, el problema es saber el nombre del metodo y los parametros.
He usado el metodo "setPageData" (ya que pienso q es el mas acorde, pero no funciona, posiblemente se llame de otra forma) y utilizando varios parametros para ver si me agregaba la frase.

	$r = $con->request("setPageData",array('page_id' => '123456789', 'body' => "MENSAJE QUE QUIERES PONERLE"));
	$r = $con->request("setPageData",array('pageid' => '123456789', 'body' => "MENSAJE QUE QUIERES PONERLE"));
	$r = $con->request("setPageData",array('page_key' => '123456789', 'body' => "MENSAJE QUE QUIERES PONERLE"));
	$r = $con->request("setPageData",array('pagekey' => '123456789', 'body' => "MENSAJE QUE QUIERES PONERLE"));
	$r = $con->request("setPageData",array('key' => '123456789', 'body' => "MENSAJE QUE QUIERES PONERLE"));
	$r = $con->request("setPageData",array('id' => '123456789', 'body' => "MENSAJE QUE QUIERES PONERLE"));

Pero no consigo hacerlo funcionar, estoy descartando esta forma de búsqueda ya que las posibilidades son infinitas entre el nombre de los parámetros y el método, ya que me puedo llevar toda la vida para hacerlo andar, por eso os imploro que si sabéis la solución u otro método para hacer funcionar lo que busco, os lo agradecería eternamente.

Un saludo a todos ;)

UPDATE: Al parecer se ha cambiado algunas cosas, ahroa la calse se llama PHPTuenti y un ejemplo de funcionamiento es:

	
require($path."../PHPTuenti.php");

$tuenti = new PHPTuenti();

$info = $tuenti->getUserInfo();
echo "Nombre: ",$info["userFirstName"],PHP_EOL;
echo "Apellidos: ",$info["userLastName"],PHP_EOL;
echo "Email: ",$info["userMail"],PHP_EOL;
echo "ID: ",$info["userId"],PHP_EOL;
echo "Amigos: ",$tuenti->getFriendsCount(),PHP_EOL;
echo "Visitas: ",$tuenti->getViews(),PHP_EOL;

Es similar, le ha cambiado el nombre a la clase y a agregado metods nuevos entre ellos creo que esta el que busco:

__construct ([bool $cache = true [, bool $progress = false]])
public bool login(string $email , string $password)
public bool login_cookie(string $cookie)
public string logout(void)
public mixed get(string $page [, bool $HtmlDom = false [, bool $cache = true]])
public mixed load(string $page [, bool $HtmlDom = false [, bool $cache = true]])
public string page(string $page)
public string changeUserName(string $first, string $last)
public string changeAbout(string $hobbies , string $music , string $quotes , string $books , string $movies, string $about_me)
public string changePrivacy(string $profile , string $wall , string $photos , string $messages , string $number)
public string changePassword(string $old, string $new)
public string postToUserWall(string $status , int $user)
public string sendMessage(string $text, int $user)
public string postStatus(string $text [, bool $twitter = false])
public string postBlogEntry(string $title, string $text)
public string sendInvite(string $email)
public int getUserId(void)
public array getUserStates([int $limit = 20 [, int $user = ""]])
public string getUserState([int $user = ""])
public array getUserInfo([int $user = ""])
public array getMessages([string $box = "inbox"])
public array getFriends([int $user = ""])
public int getFrindsCount([int $user = ""])
public array getPosts([int $limit = 20 [, int $user = ""]])
public string getPostsCount([int $user = ""])
public string getProfileImage([string $size = "medium" [,int $user = ""]])
public string getRestInvites(void)
public string getViews(void)
RaymaN

Si esa API no tiene información alguna sobre L/E de páginas es que no la implementa. Tuenti no tiene API oficial abierta al público, por lo que si encuentras algo será a base de cURL y con cualquier actualización por parte de Tuenti puede petar.

n1x3r

También petaría los proyectos de la api oficial. y no creo que se arriesguen.
De todas formas uno de los métodos que necesitare supongo que serán:

public string page(string $page)
public string postBlogEntry(string $title, string $text)

Pero no no tiene documentación no puedo saber que realizan exactamente estos metodos.

Esta ultima clase si que utiliza CURL a saco:

spoiler

Pero la anterior funciona a base de request, solo usa curl para la conexion, pero no para los metodos:

spoiler
n1x3r

ninguna solución?

Usuarios habituales

  • n1x3r
  • RaymaN