Hola, estoy integrando el login con Twitter desde mi web, para ello me baso en la libreria OAuth. El codigo me funciona bien, logro retornar los datos del usuario. El problema viene a raiz de que una vez logeado guardo el oauth_token y el oauth_token_secret para cada usuario con el fin de reutilizar estos parametros en futuras ocasiones (la intencion es que cada vez que publique un post en mi web lo pueda publicar tambien en su cuenta), sin embargo no logro que esto me funcione. Les adjunto el codigo que estoy usando para aclaros el problema.
La parte que me funciona:
Código PHP:
$tokens = Zend_Session::namespaceGet('tokens');
$uOauthToken = $tokens['normal'];
$uOauthTokenSecret = $tokens['secret'];
$config = Zend_Registry::get('config');
// Get consumer values
$consumerKey = $config->mkt->twt->consumer->key;
$consumerSecret = $config->mkt->twt->consumer->secret;
$twitterOauth = new TwitterOAuth($consumerKey,
$consumerSecret, $uOauthToken, $uOauthTokenSecret);
$accessToken = $twitterOauth->getAccessToken($_GET['oauth_verifier']);
// Get user info
$userInfo = $twitterOauth->get('account/verify_credentials');
Con lo anterior logro capturar los datos del usuario (eso si, si elimino la variable accessToken deja de funcionar y no entiendo muy bien porque, ya que dicha variable no la leo nunca).
Y en otro metodo hago lo siguiente:
Código PHP:
public function posttwittermsgAction ($twitterID, $msgText)
{
$twitterOauth = $this->gettwitterconnectionAction($twitterID);
$twitterOauth->post('statuses/update',
array(
'status' => $msgText
));
}
public function gettwitterconnectionAction ($twitterID)
{
require_once ('twitter/twitteroauth.php');
$users = new Model_DbTable_UsersData();
$tokens = $users->getOAuthTokensWithTwitterUserID($twitterID);
$uOauthToken = $tokens->oAuthToken;
$uOauthTokenSecret = $tokens->oAuthTokenSecret;
$config = Zend_Registry::get('config');
// Get consumer values
$consumerKey = $config->mkt->twt->consumer->key;
$consumerSecret = $config->mkt->twt->consumer->secret;
$twitterOauth = new TwitterOAuth($consumerKey, $consumerSecret,
$uOauthToken, $uOauthTokenSecret);
return $twitterOauth;
}
Pero como decia no me funciona. El caso es que quisiera saber como podria reutilizar los tokens de twitter sin tener que pasar cada vez por Twitter para recalcular estos parametros.
Muchas gracias de antemano